aboutsummaryrefslogtreecommitdiff
path: root/mod/lightpics/actions/photos/delete.php
diff options
context:
space:
mode:
authorSem <sembrestels@riseup.net>2013-11-09 16:22:50 +0100
committerSem <sembrestels@riseup.net>2013-11-09 16:22:50 +0100
commitf448cd91f9ecebea37daf40aada2fa1a20200817 (patch)
tree4636059da6a1be133a4974e5098b7c1e08944dd5 /mod/lightpics/actions/photos/delete.php
parent52335325e5ea8c89c711e1ba40d9ac1657004e61 (diff)
parent324f39c3a9aa41e9e23bafba38882a2b72f62441 (diff)
downloadelgg-f448cd91f9ecebea37daf40aada2fa1a20200817.tar.gz
elgg-f448cd91f9ecebea37daf40aada2fa1a20200817.tar.bz2
Add 'mod/lightpics/' from commit '324f39c3a9aa41e9e23bafba38882a2b72f62441'
git-subtree-dir: mod/lightpics git-subtree-mainline: 52335325e5ea8c89c711e1ba40d9ac1657004e61 git-subtree-split: 324f39c3a9aa41e9e23bafba38882a2b72f62441
Diffstat (limited to 'mod/lightpics/actions/photos/delete.php')
-rw-r--r--mod/lightpics/actions/photos/delete.php48
1 files changed, 48 insertions, 0 deletions
diff --git a/mod/lightpics/actions/photos/delete.php b/mod/lightpics/actions/photos/delete.php
new file mode 100644
index 000000000..f8d194e55
--- /dev/null
+++ b/mod/lightpics/actions/photos/delete.php
@@ -0,0 +1,48 @@
+<?php
+/**
+ * Delete album or image
+ *
+ * @author Cash Costello
+ * @license http://www.gnu.org/licenses/gpl-2.0.html GNU General Public License v2
+ */
+
+$guid = (int) get_input('guid');
+$entity = get_entity($guid);
+if (!$entity) {
+ // unable to get Elgg entity
+ register_error(elgg_echo("tidypics:deletefailed"));
+ forward(REFERER);
+}
+
+if (!$entity->canEdit()) {
+ // user doesn't have permissions
+ register_error(elgg_echo("tidypics:deletefailed"));
+ forward(REFERER);
+}
+
+$container = $entity->getContainerEntity();
+
+$subtype = $entity->getSubtype();
+switch ($subtype) {
+ case 'album':
+ if (elgg_instanceof($container, 'user')) {
+ $forward_url = "photos/owner/$container->username";
+ } else {
+ $forward_url = "photos/group/$container->guid/all";
+ }
+ break;
+ case 'image':
+ $forward_url = $container->getURL();
+ break;
+ default:
+ forward(REFERER);
+ break;
+}
+
+if ($entity->delete()) {
+ system_message(elgg_echo("tidypics:deleted"));
+} else {
+ register_error(elgg_echo("tidypics:deletefailed"));
+}
+
+forward($forward_url);