# HG changeset patch # User Paul Boddie # Date 1378161210 -7200 # Node ID 352c175427005a3f4efaa81f16015975e071bbc9 # Parent 7c75551e72f8565c49bf1f9a4b7bf8afe7a06195 Added a note about creating a special user along with a troubleshooting section. Changed "Wiki" to "wiki" throughout. diff -r 7c75551e72f8 -r 352c17542700 README.txt --- a/README.txt Tue Feb 05 23:30:41 2013 +0100 +++ b/README.txt Tue Sep 03 00:33:30 2013 +0200 @@ -2,11 +2,14 @@ ------------ The ApproveChanges action for MoinMoin, along with the queue_for_review event -handler and supporting library, provides a way for contributions to a Wiki +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 +Before installation, a special user has to be added to the wiki for the +software to function. See the "Pre-Installation Tasks" for details. + +After installation, some wiki configuration is required to make sure that the queuing and approval mechanisms function correctly. See the "Configuration" section below for more information. @@ -56,26 +59,26 @@ The pages directory contains a selection of useful pages using a syntax appropriate for use with MoinMoin 1.6 or later. These pages can be created -through the Wiki and their contents copied in from each of the files. An +through the wiki and their contents copied in from each of the files. An easier installation method is to issue the following commands: python moinsetup.py -f moinsetup.cfg -m make_page_package $ACDIR/pages pages.zip python moinsetup.py -f moinsetup.cfg -m install_page_package pages.zip You may need to switch user in order to have sufficient privileges to copy the -page package into the Wiki. For example: +page package into the wiki. For example: sudo -u www-data python moinsetup.py -f moinsetup.cfg -m install_page_package pages.zip Resource Pages -------------- -In order to assign Wiki users to particular roles, some resource pages must be -set up in a Wiki. For this purpose, the resource_pages directory contains +In order to assign wiki users to particular roles, some resource pages must be +set up in a wiki. For this purpose, the resource_pages directory contains example pages defining the membership of two groups: ApprovedGroup: the approved users group; users whose changes do not - need to approved and who can edit the Wiki normally + need to approved and who can edit the wiki normally PageReviewersGroup the reviews group; users who can review the changes made by untrusted users @@ -95,7 +98,7 @@ python moinsetup.py -f moinsetup.cfg -m install_page_package resource_pages.zip You may need to switch user in order to have sufficient privileges to copy the -page package into the Wiki. For example: +page package into the wiki. For example: sudo -u www-data python moinsetup.py -f moinsetup.cfg -m install_page_package resource_pages.zip @@ -104,22 +107,34 @@ Once the event handler has been installed, all page saving operations will be affected by its operation. With no further configuration, it is most likely -that only superusers will be able to save changes to Wiki pages, and even the +that only superusers will be able to save changes to wiki pages, and even the queuing of changes will not function properly. -Thus, it becomes necessary to change the Wiki configuration to enable the +Thus, it becomes necessary to change the wiki configuration to enable the successful queuing of changes by changing the acl_rights_before configuration setting, adding the following rule: ApprovalQueueUser:write,admin -This will let the special internal Wiki user responsible for queuing changes +This will let the special internal wiki user responsible for queuing changes (see "Pre-Installation Tasks") save and define an ACL on a page saved by an untrusted user. See the following page for more information on access control lists (ACLs): http://moinmo.in/HelpOnAccessControlLists +Troubleshooting +--------------- + +When a user tries to save a page, they get the following error (or +equivalent): + + You can't change ACLs on this page since you have no admin rights on it! + +This is possibly caused by the absence of the ApprovalQueueUser (see +"Pre-Installation Tasks" above) and/or the acl_rights_before rule for that +user (see "Configuration" above). + Recommended Software --------------------