From d0b659f7ffd8e1b102837b28c6e1223925557b22 Mon Sep 17 00:00:00 2001 From: Jeremy Laine Date: Fri, 21 Jul 2006 20:55:43 +0000 Subject: [PATCH] * improved - after adding a page, return to the calling url * improved - add recursive deletion to file manager * improved - improve logging of deleted pages (store location) --- ChangeLog | 5 ++++- include/Barrel.php | 4 ++++ include/Barrel/Page.php | 11 +++++++++-- include/admin/compose.php | 2 +- include/admin/edit.php | 2 +- include/admin/files.php | 5 +++-- include/admin/pages.php | 15 +++++++-------- include/admin/plugins.php | 2 +- templates/page-properties.tpl | 1 + 9 files changed, 31 insertions(+), 16 deletions(-) diff --git a/ChangeLog b/ChangeLog index cd42306..542d08b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,8 +1,11 @@ -Diogenes 0.9.20pre1 +Diogenes 0.9.20pre2 * added - add RSS feeds describing changes to barrels * added - offer preset style sheets for barrels * fixed - fix a warning when a barrel's menu is empty * fixed - reduce webserver logging of RCS operations + * improved - after adding a page, return to the calling url + * improved - add recursive deletion to file manager + * improved - improve logging of deleted pages (store location) Diogenes 0.9.19 * fixed - fix handling of filter plugins without arguments diff --git a/include/Barrel.php b/include/Barrel.php index 1a78dde..7eb24a5 100644 --- a/include/Barrel.php +++ b/include/Barrel.php @@ -310,6 +310,10 @@ class Diogenes_Barrel { global $globals; + if (!$path) { + $caller->info("rmPath: will not delete from root!"); + return false; + } $curpid = $this->getPID($path); if (!$curpid) { $caller->info("rmPath: could not find '$path'"); diff --git a/include/Barrel/Page.php b/include/Barrel/Page.php index 118effe..f35e739 100644 --- a/include/Barrel/Page.php +++ b/include/Barrel/Page.php @@ -78,7 +78,14 @@ class Diogenes_Barrel_Page { global $globals; - $caller->info(__("Deleting page"). " $dir"); + $loc = $barrel->getLocation($dir); + if (!$loc) + { + $caller->info("Error : not deleting page $dir\n"); + return false; + } + + $caller->info(__("Deleting page"). " '$loc'"); // check there are no child pages $res = $globals->db->query("select PID from {$barrel->table_page} where parent=$dir"); @@ -92,7 +99,7 @@ class Diogenes_Barrel_Page $rcs = $caller->getRcs(); $globals->db->query("delete from {$barrel->table_page} where PID=$dir"); - $caller->log("page_delete","{$barrel->alias}:$dir"); + $caller->log("page_delete","{$barrel->alias}:$loc"); system("rm -rf ". escapeshellarg($rcs->rcsPath($dir))); system("rm -rf ". escapeshellarg($rcs->spoolPath($dir))); $barrel->compileTree(); diff --git a/include/admin/compose.php b/include/admin/compose.php index 76e0d8e..ba279a9 100644 --- a/include/admin/compose.php +++ b/include/admin/compose.php @@ -58,7 +58,7 @@ $page->assign('file_content',chunk_split(base64_encode($protdoc))); $page->assign('msg_log',__("log message")); // build toolbars -$page->toolbar(__("Page"), $bpage->make_toolbar()); +$page->toolbar(__("Page"), $bpage->make_toolbar($page)); $page->toolbar(__("File"), $bfile->make_toolbar(true)); $auxpage = new DiogenesBarrel("/".$bbarrel->alias."/". $bpage->getLocation()); diff --git a/include/admin/edit.php b/include/admin/edit.php index e68aff4..510c70a 100644 --- a/include/admin/edit.php +++ b/include/admin/edit.php @@ -66,7 +66,7 @@ if ($file == $globals->cssfile) { } // top toolbar -$page->toolbar(__("Page"), $bpage->make_toolbar()); +$page->toolbar(__("Page"), $bpage->make_toolbar($page)); $page->toolbar(__("File"), $bfile->make_toolbar(true)); $page->display('admin-edit.tpl'); ?> diff --git a/include/admin/files.php b/include/admin/files.php index 41b52f6..c3ebdea 100644 --- a/include/admin/files.php +++ b/include/admin/files.php @@ -58,7 +58,7 @@ $page->assign('msg_read_perms',__("read access")); $page->assign('msg_write_perms',__("write access")); // build navigation toolbar -$page->toolbar(__("Page"), $fpage->make_toolbar()); +$page->toolbar(__("Page"), $fpage->make_toolbar($page)); switch ($action) { @@ -102,7 +102,8 @@ case "file_rename": break; case "page_delete": - Diogenes_Barrel_Page::delete($bbarrel, $target, $page); + $target_path = $bbarrel->getLocation($target); + $bbarrel->rmPath($target_path, $page); $fpages = $bbarrel->getPages(); break; diff --git a/include/admin/pages.php b/include/admin/pages.php index 85dd9a3..a4da8c0 100644 --- a/include/admin/pages.php +++ b/include/admin/pages.php @@ -27,7 +27,7 @@ $page->assign('msg_add_page', array(__("Add a page"),"?action=edit") ); $page->assign('post', $page->script_self()); $page->assign('table', $bbarrel->table_page); - +$page->assign('from', $_REQUEST['from']); $action = isset($_REQUEST["action"]) ? $_REQUEST["action"] : ""; $target = isset($_REQUEST["target"]) ? $_REQUEST["target"] : ""; @@ -94,12 +94,11 @@ case "update": } $bpage = new Diogenes_Barrel_Page($bbarrel, $props); - $bpage->toDb($homepage, $page); - break; - - -case "page_delete": - Diogenes_Barrel_Page::delete($bbarrel, $target, $page); + if ($bpage->toDb($homepage, $page) && $_REQUEST['from']) + { + header("Location: {$_REQUEST['from']}"); + exit; + } break; } @@ -119,7 +118,7 @@ if ($dir) // "Page" toolbar //if (isset($bpage->props['PID'])) { if ($dir != 0) { - $page->toolbar(__("Page"), $bpage->make_toolbar()); + $page->toolbar(__("Page"), $bpage->make_toolbar($page)); $page->toolbar(__("File"), $bpage->make_doc_toolbar($rcs)); } diff --git a/include/admin/plugins.php b/include/admin/plugins.php index c529c31..3f2f3fe 100644 --- a/include/admin/plugins.php +++ b/include/admin/plugins.php @@ -20,7 +20,7 @@ if ($dir != 0) { $bpage = Diogenes_Barrel_Page::fromDb($bbarrel, $dir); $page->assign('greeting',__("Page plugins ") . " - " . ($bpage->props['location'] ? $bpage->props['location'] : __("home")) ); - $page->toolbar(__("Page"), $bpage->make_toolbar()); + $page->toolbar(__("Page"), $bpage->make_toolbar($page)); $wperms = $bpage->props['wperms']; } else { $page->assign('greeting',__("Available plugins")); diff --git a/templates/page-properties.tpl b/templates/page-properties.tpl index ec7d915..9040871 100644 --- a/templates/page-properties.tpl +++ b/templates/page-properties.tpl @@ -1,6 +1,7 @@
+ -- 2.1.4
{$msg_properties}