aboutsummaryrefslogtreecommitdiff
path: root/mod/videolist/actions/videolist/delete.php
diff options
context:
space:
mode:
Diffstat (limited to 'mod/videolist/actions/videolist/delete.php')
-rw-r--r--mod/videolist/actions/videolist/delete.php39
1 files changed, 39 insertions, 0 deletions
diff --git a/mod/videolist/actions/videolist/delete.php b/mod/videolist/actions/videolist/delete.php
new file mode 100644
index 000000000..0b9724c52
--- /dev/null
+++ b/mod/videolist/actions/videolist/delete.php
@@ -0,0 +1,39 @@
+<?php
+/**
+* Elgg videolist item delete
+*
+* @package ElggVideolist
+*/
+
+$guid = (int) get_input('guid');
+
+$videolist_item = get_entity($guid);
+if (!$videolist_item->guid) {
+ register_error(elgg_echo("videolist:deletefailed"));
+ forward('videolist/all');
+}
+
+if (!$videolist_item->canEdit()) {
+ register_error(elgg_echo("videolist:deletefailed"));
+ forward($videolist_item->getURL());
+}
+
+$container = $videolist_item->getContainerEntity();
+$url = $videolist_item->getURL();
+
+if (!$videolist_item->delete()) {
+ register_error(elgg_echo("videolist:deletefailed"));
+} else {
+ system_message(elgg_echo("videolist:deleted"));
+}
+
+// we can't come back to video url because it's deleted
+if($url != $_SERVER['HTTP_REFERER']) {
+ forward(REFERER);
+}
+
+if (elgg_instanceof($container, 'group')) {
+ forward("videolist/group/$container->guid/all");
+} else {
+ forward("videolist/owner/$container->username");
+}