aboutsummaryrefslogtreecommitdiff
path: root/mod/pages/actions/pages/delete.php
diff options
context:
space:
mode:
authorbrettp <brettp@36083f99-b078-4883-b0ff-0f9b5a30f544>2010-03-03 17:53:05 +0000
committerbrettp <brettp@36083f99-b078-4883-b0ff-0f9b5a30f544>2010-03-03 17:53:05 +0000
commit4766f36a4d74924f21ff329c4318ce4e069ffa04 (patch)
tree969b84632f2a8b0db79788a8a6db8e41d63e5cb4 /mod/pages/actions/pages/delete.php
parent57a217fd6b708844407486046a1faa23b46cac08 (diff)
downloadelgg-4766f36a4d74924f21ff329c4318ce4e069ffa04.tar.gz
elgg-4766f36a4d74924f21ff329c4318ce4e069ffa04.tar.bz2
Pulled in the interface changes.
git-svn-id: http://code.elgg.org/elgg/trunk@5257 36083f99-b078-4883-b0ff-0f9b5a30f544
Diffstat (limited to 'mod/pages/actions/pages/delete.php')
-rw-r--r--mod/pages/actions/pages/delete.php35
1 files changed, 35 insertions, 0 deletions
diff --git a/mod/pages/actions/pages/delete.php b/mod/pages/actions/pages/delete.php
new file mode 100644
index 000000000..740f1f6eb
--- /dev/null
+++ b/mod/pages/actions/pages/delete.php
@@ -0,0 +1,35 @@
+<?php
+
+ $page = get_input('page');
+
+ if ($page = get_entity($page)) {
+
+ if ($page->canEdit()) {
+
+ // Bring all child elements forward
+ $parent = $page->parent_guid;
+ if ($children = elgg_get_entities_from_metadata(array('metadata_name' => 'parent_guid', 'metadata_value' => $page->getGUID()))) {
+ foreach($children as $child) {
+ $child->parent_guid = $parent;
+ }
+ }
+ if ($page->delete()) {
+ system_message(elgg_echo('pages:delete:success'));
+ if ($parent) {
+ if ($parent = get_entity($parent)) {
+ forward($parent->getURL());
+ exit;
+ }
+ }
+ forward('pg/pages/owned/' . $_SESSION['user']->username);
+ exit;
+ }
+
+ }
+
+ }
+
+ register_error(elgg_echo('pages:delete:failure'));
+ forward($_SERVER['HTTP_REFERER']);
+
+?> \ No newline at end of file