aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpetko <petko@524c5546-5005-0410-9a3e-e25e191bd360>2024-08-04 18:15:52 +0000
committerpetko <petko@524c5546-5005-0410-9a3e-e25e191bd360>2024-08-04 18:15:52 +0000
commit5fe06ac22f47d6bbe0b970825a4d20bc5007a175 (patch)
tree5d28fbf7ad1c3b204c5bc49d4b87dd519fb0a5ba
parent7ad14c4b20c2385e6b6352febcb5b927307afaf5 (diff)
downloadpmwiki.svn-5fe06ac22f47d6bbe0b970825a4d20bc5007a175.tar.bz2
Store a history entry when a page is deleted.
git-svn-id: svn://pmwiki.org/pmwiki/trunk@4750 524c5546-5005-0410-9a3e-e25e191bd360
-rw-r--r--pmwiki.php13
1 files changed, 9 insertions, 4 deletions
diff --git a/pmwiki.php b/pmwiki.php
index 8a53b366..2fb9ba29 100644
--- a/pmwiki.php
+++ b/pmwiki.php
@@ -2761,11 +2761,11 @@ function PostPage($pagename, &$page, &$new) {
if (!$EnablePost) return;
if (preg_match("/$DeleteKeyPattern/",$new['text'])) {
if (@$new['passwdattr']>'' && !CondAuth($pagename, 'attr'))
- Abort('$[The page has an "attr" attribute and cannot be deleted.]');
- else $WikiDir->delete($pagename);
- $IsPagePosted = true;
- return;
+ return Abort('$[The page has an "attr" attribute and cannot be deleted.]');
+ $new = array_merge($new, $page);
+ $deleted = 1;
}
+ else $deleted = 0;
$new['charset'] = $Charset; # kept for now, may be needed if custom PageStore
$new['author'] = @$Author;
$new["author:$Now"] = @$Author;
@@ -2784,6 +2784,11 @@ function PostPage($pagename, &$page, &$new) {
unset($new[$k]);
}
WritePage($pagename,$new);
+
+ if ($deleted) {
+ clearstatcache();
+ $WikiDir->delete($pagename);
+ }
$IsPagePosted = true;
}