ApproveChanges

Purpose

The ApproveChanges action, along with the queue_for_review event handler and supporting library, provides a way for contributions to a Wiki made by anonymous or untrusted users to be queued for review and approval by trusted reviewers.

After installation, some Wiki configuration is required to make sure that the queuing and approval mechanisms function correctly. In particular, an extra user needs to be defined for the queuing of changes. See the "Pre-Installation Tasks" and "Configuration" sections of the documentation for more information.

Download & Release Notes

Download

Release Version

Moin Version

Release Notes

ApproveChanges-0.1.1.tar.bz2

0.1.1

1.6, 1.7, 1.8, 1.9

README.txt

ApproveChanges-0.1.tar.bz2

0.1

1.6, 1.7, 1.8, 1.9

README.txt

Usage

When anonymous or untrusted users attempt to edit a Wiki where ApproveChanges has been installed, their edits will be queued for review on subpages named ApprovalQueue (by default). By selecting the ApproveChanges action when viewing a revision of such subpages, the displayed revision's changes will be incorporated into the parent page (the one originally edited by the untrusted user). For edits made by untrusted users with Wiki accounts, an option to approve those users as part of approving their changes is also given so that they may in future edit the Wiki without needing to have their changes approved.

Procedure

On a queued changes page (such as FrontPage/ApprovalQueue)...

  1. Select ApproveChanges from the actions menu.

  2. Optionally approve the user who made the edit.
  3. Approve the changes (or cancel the operation).

Where the approved changes conflict with other changes made since they were saved, additional steps are involved:

  1. Inspect the page text, particularly the edit conflict regions.
  2. Resolve edit conflicts.
  3. Save the edited page (or cancel the operation).

Copyright (C) 2011, 2013 Paul Boddie <paul AT boddie DOT org DOT uk>

Some patches provided by the following contributors:

Copyright (C) 2013 Jakub Jedelsky <jedelsky@master.cz>

Some pieces of MoinMoin code were used in this work - typically pieces which demonstrate how to perform various essential tasks (such as group page parsing from the MoinMoin.wikidicts module) - and are thus covered by the following copyrights:

Copyright (C) 2003-2007 ThomasWaldmann

Copyright (C) 2003 by Gustavo Niemeyer

License

GNU General Public License version 2 or later

Discussion

Other related actions exist, such as ActionMarket/ApprovePageAction. What makes ApproveChanges and its supporting mechanisms different is that it has a global effect on a Wiki, even going as far as imposing approval on command-line modification to the Wiki in some cases, and it operates as an extra layer of verification when pages are being changed. Here is a summary of the apparent similarities and differences:

Task

ApprovePageAction

ApproveChanges

Protect page

#review pragma on page

all pages are affected, even with no ACLs or very liberal ACLs set on pages

Approval

approve ACL right

members of PageReviewersGroup can approve queued changes

Review

review ACL right

members of PageReviewersGroup can edit queued changes

Normal editing

members of ApprovedGroup can edit pages normally

The motivation for ApproveChanges was to prevent untrusted users from spamming Wiki installations and having their changes shown publicly even after their removal (since the version history of a page will still contain such content). By accumulating untrusted edits in hidden pages, the incentive to spam Wiki sites is reduced because the edits will not show up, and yet a mechanism is provided to allow new but genuine users to eventually become trusted contributors.

MoinMoin: ActionMarket/ApproveChanges (last edited 2013-02-05 22:39:50 by PaulBoddie)