What is a ModeratedPage?

A ModeratedPage is a page-internal setting, which restricts certain actions on certain pages. The requested action and page is stored internally and an email is sent to the moderators described in the linked and locked ModeratedPage action page. Any moderator may approve or reject the action by simply clicking an url. When approving the action, the requested action (edit, rename, ...) is performed.

In both cases the author is notified, so it's recommended for the moderator to click on either the approve or reject links in the moderation email. In case of multiple moderators: first comes, first serves.

How to enable ModeratedPage on a single page?

How to disable ModeratedPage on a single page?

Plugin Arguments

How does it work internally?

You need to lock the page additionally, so that the link parser performs some magic whether the ModeratedPage link is present or not, for efficiency reasons. It can be unlocked again, and even the ModeratedPage link may be removed. The status will only be changed on the lock action, whether the ModeratedPage link is present or not.

The moderation status is stored in each page in question. Each moderated action is stored in the page also, together with a randomly created permission key to allow Grant by a simple external unauthorized request. There's no timeout on moderated actions, so the actions may stack up. The delayed actions may be performed in any order, there's no strict ordering to follow for the moderator.

How to enable ModeratedPage on multiple/all pages?

If you enable the config option ENABLE_MODERATEDPAGE_ALL, the page moderation status on every page is automatically set to check this action page ModeratedPage.

There may come another administrative plugin to change the moderation status on selected pages.


PhpWikiDocumentation WikiPlugin

lib/CachedMarkup.php (In template 'browse' < 'body' < 'html'):499: Notice: Only variables should be assigned by reference

lib/CachedMarkup.php (In template 'body' < 'html'):499: Notice: Only variables should be assigned by reference

lib/DbaDatabase.php:134: Warning: dba_replace() [<a href='function.dba-replace'>function.dba-replace</a>]: You cannot perform a modification to a database without proper access