Extension:Evaluation WikiFlow

What can this extension do?
EvalWF enhance MediaWiki with evaluation workflow, supporting all the life-cycle of a certification process of the content of the wiki pages.

Evaluation workflow
Evaluation workflow is performed through the following special pages:
 * Special:AskForReview
 * Special:AssignReview
 * Special:MakeReview
 * Special:Certify

while information about article state, pending reviews and assignments can be found at these pages:
 * Special:WaitingForReviews
 * Special:AssignedReviews

Evaluation tab
All articles belonging to a Catagory to evaluate (see configuration for details) will have the evaluation section (tab) added to the actions menu.

The evaluation section shows information about the article reviews, assignments and provide buttons to perform the following actions:

Ask for review
Users with the askforreview permission can ask for a review about the current article. Perfmorming this action will mark the article with the custom Category WaitingForReview. The same action can be performed through the special page Special:AskForReview, by typing the article's title in the form provided.

Make review
Users with the makereview permission can make reviews by clicking the related button in the evaluation section or using the special page Special:MakeReview. Review article will be created with the title UserName about PageName.

Assign review
Users with the assignreview permission can perform this operation. Clicking the button from the evaluation section will prepare the form provided by the special page Special:AssignReview with the page name precompiled.

Certify
Users with the certify permission can perform this action directly from the evaluation section, to precompile the form provided by the Special:Certify page with the current article's pagename.

EvalWF interface allows two modes: the move page mode and the lock and copy mode:

Certify by move
Page is renamed. Categories that marked the article as 'to evaluate' are deleted.

Certify by lock and copy
Page edition and moving is protected and content is used for a new page (all subpages are copied, following the base page).

Requirements
MediaWiki: 1.11.1, other versions have not been tested yet... (if someone does it with newer versions, feel free to add notice here or in the discussion page)

Required extensions:
 * Extension:SemanticMediaWiki
 * Extension:SemanticForms

Suggested extensions:
 * Extension:ParserFunctions, you need this to benefit from EvalWF parser functions

Download instructions
You can download the version 0.1 here

Unzip the package and copy the folder EvalWF in your  directory.

To install this extension, add the following to LocalSettings.php:

Configuration
To configure the extension you must follow these steps:

First edit the file 'includes/EW_Settings.php' and:
 * Define categories for articles to evaluate
 * Define the name of the semantic property(s) to link reviews and articles to evaluate.

Then, you need to edit some wikipages in orde to make it works. [...]
 * Define a Template for the reviews using one of '$ewgPropertyReviewAbout' property. this is important in order to make the system recognize pages that are reviews about artcles to evaluate.

Reviewer::

ReviewAbout::

Revision::

[...] (see Extension:SemanticForms for more details about how to configure a form):
 * Define a Semantic Form for the reviews. This form MUST:
 * use the template created above;
 * use the custom input types:
 * 'reviewaboutpage' (mandatory)
 * 'reviewer' (optional)
 * 'reviewaboutrevision' (optional)

[...]

Reviewer:

Review about:

Revision ID:

[...]

Form for reviews:Form:Review Form
 * Set 'Form for reviews' property in Category's page to the created form

User rights
EvalWF use five new user rights:

Parser functions
EvalWF enhance wiki parser with some functions for managing revision and evaluation process, tu use with Extension:ParserFunctions

About article's revision:

About evaluation workflow state:

TO DO
Next features:
 * E-mail notifications
 * Advise reviewer about a new assignment
 * Advise author(s) of the proposal if a new review has been done
 * Advise the reviewer on login for new pending assignments

Versions log

 * 0.2 Messages added, some bugs fixed
 * 0.1