Page approvals (Acceptance)
The extension FlaggedRevs is a MediaWiki extension that activates an approval mechanism. New versions of a page are initially marked as drafts and remain so until a user with review rights approves the page.
What are page drafts?
In BlueSpice, you can create draft versions of a page. After a page has been edited and saved in draft mode readers of the page will, by default, see the most recently accepted version of the page. This allows editors to work on a draft version until all changes "fit". The changes can then be approved by users with reviewer rights.
By default, all users can see the latest draft version by clicking on the status information of a page or by switching to the version history. It is possible to limit view permissions of drafts to specific user groups.
Activating the acceptance feature
Activating the acceptance feature is done on the namespace level. A user with admin permissions activates the feature in Global actions > Management > Namespace manager for individual namespaces.
The dialog window opens after clicking the edit icon (wrench) in the Actions column. Select Approval and click Done.
After activating Approvals for a namespace, all pages in the namespace are set into first draft mode.
Each page in the namespace now displays a banner at the top of the page with the acceptance status (1) and a quick link to publish the page (2).
When a new page is created and first saved, it will automatically be visible to all users. Subsequent page edits will be collected in the draft version of the page. If a page is edited and saved multiple times while in draft mode, each edit gets logged in the version history:
The revisions in draft status have a dotted border and are highlighted in orange. In addition, they are marked as pending review. These revisions can be compared before the pending changes of the page are accepted.
Accepting a page
Users with review rights can accept a draft page any time they save a page (Accept this unreviewed page):
If the page is not accepted at this point, it can be accepted independently from the editing process.
A user with review rights can accept the page quickly with the review feature in the title section of the page. The draft message will display an arrow which includes the accept function:
Alternatively, the reviewer can go to the Acceptance page in the Quality Management toolbar instead:
In both cases, the reviewer can leave a comment. This comment will then be shown in the version history of the page.
The page now shows the page version as accepted.
Setting read permissions for drafts
By default, all users can see the drafts of a page, even readers.
To hide drafts from readers, the group user has to be removed from the configuration. An administrator deletes the group user form "Show unstable pages for the following groups" in Global actions > Management > Config manager:
Warning: If the group user is removed from the BlueSpiceFlaggedRevs configuration, users in this group will not be able to see draft versions when they are added as reviewers in a review process.
When the group user is removed, only sysop and reviewer users can access drafts. If you want other groups, for example editor, to see draft versions, you need to add them to the configuration and save it:
The two checkboxes Automatically set the page to stable... (checkbox is available until version 3.1.) and Automatically delete the workflow... determine what happens at the end of a workflow, if there is an active Review for a page. A page can be set to accepted status by a workflow and the workflow can be deleted after the page is marked as stable.
Note: If no user groups are specified in the configuration field, not even reviewers and sysops users will see a visual status indication of a page. They will have access to drafts through the revision history of a page instead.
Anyone with edit permissions will receive a notification that there are pending changes for the page when they access the page in edit mode:
Changes to embedded templates and files
If a page includes templates or files such as images or PDFs and there is a change to these files after the page has been approved, this will also be reflected in the status banner (1) and the QM status information in the title area (2).
If the embedded resources are located in a namespace without its own approval function, the version of the resource at the time of page approval is displayed in the approved version of the page. The draft version accordingly shows the most current version of the embedded resource. To approve the resource change, the page has to be approved again. This creates a new page version.
Approving a resource
Before approving the changed resource(s), you should check which resources are affected.
- Open the quality management tools (1). Here you can see under Approval that there are changes to resources (2).
- Click on a changed resource (3) to display the changes between the last two versions of the resource.
- Click "Review now" (4) under Unapproved changes. This will take you to the draft version of the page. From there you can approve the page in the title area. Note: If there are several changed resources, they can only be approved together.
Settings for resources on approved pages
It is possible via server configuration to show embedded resources (i.e., files, templates or transcluded content) that were changed after the page has been released, in a certain version. The following options exist:
|FR_INCLUDES_FREEZE||Shows the resource version that was valid when the page was approved.|
Warning:The setting FR_INCLUDES_FREEZE for handling the state of included files of an approved wikipage has no long term support by and should not be introduced in a new wiki for that reason.
|FR_INCLUDES_STABLE||Always shows the latest approved (stable) version of a resource, even if it was approved after the page was approved (this works only if the resource is located in a namespace with active approval feature).|
|FR_INCLUDES_CURRENT||Always shows the latest version of the included resource.|
Important! Results of a semantic query, unlike attribute values cannot be "frozen", even if FR_INCLUDES_FREEZE has been set. The query results do not persist in the source text of a page, but are generated dynamically at the time of the query. As a consequence, they are not available for versioning.