/** * Deletes a page (and also if existing its subpages) from the database * */ function deletePage($titlelink) { if (is_object($titlelink)) { $obj = $titlelink; } else { $obj = new ZenpagePage($titlelink); } $result = $obj->remove(); if ($result) { if (is_object($titlelink)) { header('Location: ' . FULLWEBPATH . '/' . ZENFOLDER . '/' . PLUGIN_FOLDER . '/zenpage/admin-pages.php?deleted'); exit; } return "<p class='messagebox fade-message'>" . gettext("Page successfully deleted!") . "</p>"; } return "<p class='errorbox fade-message'>" . gettext("Page delete failed!") . "</p>"; }
/** * Deletes a page (and also if existing its subpages) from the database * */ function remove() { if ($success = parent::remove()) { $sortorder = $this->getSortOrder(); if ($this->id) { $success = $success && query("DELETE FROM " . prefix('obj_to_tag') . "WHERE `type`='pages' AND `objectid`=" . $this->id); $success = $success && query("DELETE FROM " . prefix('comments') . " WHERE ownerid = " . $this->getID() . ' AND type="pages"'); // delete any comments // remove subpages $mychild = strlen($sortorder) + 4; $result = query_full_array('SELECT * FROM ' . prefix('pages') . " WHERE `sort_order` like '" . $sortorder . "-%'"); if (is_array($result)) { foreach ($result as $row) { if (strlen($row['sort_order']) == $mychild) { $subpage = new ZenpagePage($row['titlelink']); $success = $success && $subpage->remove(); } } } } } return $success; }