aboutsummaryrefslogtreecommitdiff
path: root/mod/file/actions/save.php
diff options
context:
space:
mode:
Diffstat (limited to 'mod/file/actions/save.php')
-rw-r--r--mod/file/actions/save.php51
1 files changed, 51 insertions, 0 deletions
diff --git a/mod/file/actions/save.php b/mod/file/actions/save.php
new file mode 100644
index 000000000..038e61d83
--- /dev/null
+++ b/mod/file/actions/save.php
@@ -0,0 +1,51 @@
+<?php
+ /**
+ * Elgg file browser save action
+ *
+ * @package ElggFile
+ * @author Curverider Ltd
+ * @copyright Curverider Ltd 2008-2010
+ * @link http://elgg.com/
+ */
+
+ global $CONFIG;
+
+ // Get variables
+ $title = get_input("title");
+ $desc = get_input("description");
+ $tags = get_input("tags");
+ $access_id = (int) get_input("access_id");
+
+ $guid = (int) get_input('file_guid');
+
+ if (!$file = get_entity($guid)) {
+ register_error(elgg_echo("file:uploadfailed"));
+ forward($CONFIG->wwwroot . "pg/file/" . $_SESSION['user']->username);
+ exit;
+ }
+
+ $result = false;
+
+ $container_guid = $file->container_guid;
+ $container = get_entity($container_guid);
+
+ if ($file->canEdit()) {
+
+ $file->access_id = $access_id;
+ $file->title = $title;
+ $file->description = $desc;
+
+ // Save tags
+ $tags = explode(",", $tags);
+ $file->tags = $tags;
+
+ $result = $file->save();
+ }
+
+ if ($result)
+ system_message(elgg_echo("file:saved"));
+ else
+ register_error(elgg_echo("file:uploadfailed"));
+
+ forward($CONFIG->wwwroot . "pg/file/" . $container->username);
+?> \ No newline at end of file