diff options
author | cash <cash@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2011-02-06 19:16:23 +0000 |
---|---|---|
committer | cash <cash@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2011-02-06 19:16:23 +0000 |
commit | c2d82db47ccdbd388658433d1f703c560d7fb84b (patch) | |
tree | 0bb352e9f7f9b6f676a5a7b608c18b2fe363b39b /mod/pages/actions | |
parent | 562900f1b36820843a28d7b68f2f0f3e55e04dbf (diff) | |
download | elgg-c2d82db47ccdbd388658433d1f703c560d7fb84b.tar.gz elgg-c2d82db47ccdbd388658433d1f703c560d7fb84b.tar.bz2 |
Fixes #2853 pages plugin uses the icon url plugin hook and fixes delete action
git-svn-id: http://code.elgg.org/elgg/trunk@8044 36083f99-b078-4883-b0ff-0f9b5a30f544
Diffstat (limited to 'mod/pages/actions')
-rw-r--r-- | mod/pages/actions/pages/delete.php | 41 |
1 files changed, 22 insertions, 19 deletions
diff --git a/mod/pages/actions/pages/delete.php b/mod/pages/actions/pages/delete.php index 8bc20b821..aea383ef8 100644 --- a/mod/pages/actions/pages/delete.php +++ b/mod/pages/actions/pages/delete.php @@ -2,36 +2,39 @@ /** * Remove a page * + * Subpages are not deleted but are moved up a level in the tree + * * @package ElggPages */ -$page = get_input('page'); - -if ($page = get_entity($page)) { - +$guid = get_input('guid'); +$page = get_entity($guid); +if ($page) { if ($page->canEdit()) { - $container = get_entity($page->container_guid); // 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; - } + $parent = $page->parent_guid; + $children = elgg_get_entities_from_metadata(array( + 'metadata_name' => 'parent_guid', + 'metadata_value' => $page->getGUID() + )); + if ($children) { + 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()); - } + } + + if ($page->delete()) { + system_message(elgg_echo('pages:delete:success')); + if ($parent) { + if ($parent = get_entity($parent)) { + forward($parent->getURL()); } - forward("pg/pages/owned/$container->username/"); } - + forward("pg/pages/owned/$container->username/"); + } } - } register_error(elgg_echo('pages:delete:failure')); |