diff options
-rw-r--r-- | pmwiki.php | 13 |
1 files changed, 9 insertions, 4 deletions
@@ -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; } |