Loading...
 
Skip to main content

History: Revision approval, Flagged Revisions

Preview of version: 30

Revision approval, Flagged Revisions


Introduced in Tiki7, Flagged Revisions is a feature replacing the former Staging and Approval. You can get quickly started using the feature when you apply the profile Revision Approval in your tiki site.

Flagged revisions rely on trusted users to mark revisions of a page as good or safe. Trusted users can see all revisions and flag/unflag revisions as needed. A notice at the top of the page will offer these options and allow to navigate to the latest version or the last approved version. More details are available from the Page History.

Untrusted users, likely guests of the site, will only be able to see the approved versions of the page. If they are allowed to view the history of the page, they will also only be able to see and diff between approved revisions. Depending on the permissions granted, they may also be able to view unapproved revisions, but they would get a clear warning that the content has not yet been approved and may not be suitable.

1.1. Enable the feature

To be used, Flagged Revisions must be enabled from "Admin > Wiki > Flagged Revision" as Revision Approval. Multiple categories can be specified. Make sure to use the category ID, and not the category name, and separate multiple category IDs with the semicolon ; character. Pages added to those categories will use the approval workflow.

1.2. Permissions involved

Permissions:

  • Can view unapproved revisions of pages (tiki_p_wiki_view_latest)
  • Can approve revisions of pages (tiki_p_wiki_approve)

1.3. Example

Let's imagine a case where:

  • we have user1 belonging to group1, and user2 belonging to group2.
  • group1 has been granted permissions to edit pages, view history, view unnaproved versions, and to approve them.
  • group2 has only the permission to view and edit wiki pages, but no permission to view history, unnaproved versions nor to approve them.
  • HomePage had some content approved by user1:
    Copy to clipboard
    Our organization is about X, Y and Z.
  • HomePage was then edited and new content was added.
    Copy to clipboard
    I am { {user}} (the one viewing this page right now)

1.3.1. Extend the information displayed with some Wiki Argument Variables

You can extend the display of infomation related to flagged revisions in a specific page by means of using the Wiki Argument Variables related to Flagged revision, like in the examples shown in the screenshots below.

1.3.2. View and actions of user1 (with perms)

In this case and specific moment, HomePage shows this content for user1:

Click to expand
Click to expand


When user1 clicks to see the "latest version", that is the page shown:

Click to expand
Click to expand


When user1 clicks at "Show changes since last approved version", that is the content shown:

Click to expand
Click to expand


There is a box called "Content approval" at the top, which allows user1 to "Approve revision", in an equivalent way to what was shown in the previous screen when viewing the latest version, if user1 had clicked a the button "Approve current revision". Once user1 approves that revision, the new content will be shown when visiting the page:

Click to expand
Click to expand

1.3.3. View of user2 (without perms)

Note that before user1 approved the changes in that revision, this is what user2 could see in the same HomePage:

Click to expand
Click to expand


And after user1 approved that revision, this is what user2 could see (the same as user1 by then):

Click to expand
Click to expand


1.4. Managing the approval workflow

Starting with Tiki11, additional information is included in the Unified Index. The List Plugin can be used to obtain lists of pages that need approval.

Note: PluginList requires that your Unified Index be up to date

Simple list of pages pending approval
Copy to clipboard
{LIST()} {filter field=wiki_approval_state content=pending} {LIST}

List of approved pages
Copy to clipboard
{LIST()} {filter field=wiki_approval_state content=approved} {LIST}

List of pages not needing approval
Copy to clipboard
{LIST()} {filter field=wiki_approval_state content=none} {LIST}


In previous versions, a list of pending pages could be obtained in a less accurate manner.

Simple list of pages pending approval (prior to 11)
Copy to clipboard
{LIST()} {filter categories="42"} {filter field=title content=latest} {LIST}


The LIST plugin has many more options to alter how to display the list of pages and more filters can be added. You are encouraged to create lists of pages needing approval for the different groups of people managing those pages. This can be done by using additional categories on your pages.

If you are using Perspectives, the global listing could be automatically filtered for the currently selected perspective.

1.5. Mass approval

Using PluginListExecute

Approve multiple pages at the same time - for activation on existing sites
Copy to clipboard
{LISTEXECUTE()} {pagination max="5000"} {filter field=wiki_approval_state content=pending} {ACTION(name=Approve)} {step action=wiki_approval} {ACTION} {LISTEXECUTE}

Mass approval of all pages in some categories
Copy to clipboard
{LISTEXECUTE()} {pagination max="5000"} {filter categories="40 OR 41 OR 97 OR 231"} {filter language="fr"} {sort mode=title_asc} {filter type="wiki page"} {ACTION(name=Approve)} {step action=wiki_approval} {ACTION} {LISTEXECUTE}



You also may want to increase "Lucene Maximum Results" and "Lucene Maximum Result Set Limit" from tiki-admin.php?page=search

1.6. FAQ & Notes

FAQ

  1. Q: How do Approvers become aware of pending Flagged Revisions?
    A: By monitoring email notifications. There is currently no status reporting. See Above

  2. Q: Can emails be sent to different Approvers for different pages or sections?
    A: Approval permission can be assigned to a category. This won't work for sections, but you can assign different pages to different categories, and each approver needs to be in an approval group, then assign category approval permission to that group.

  3. Q: Can certain users be permitted to just make approved edits directly? That is, an admin editing a page still needs to click Approve Edits; seems redundant.
    A: No. In fact, the purpose of revision approval is to review the content before making it public. Just because an administrator does it does not mean it should go live right away.

Notes

  • If the page is a child included in another using the Plugin Include the approval feature is overrided. Meaning the content will be displayed, even if no version were approved.

alias names for this page

FlaggedRevisions | FlaggedRevision | Flagged Revision | Revision Approval | RevisionApproval

History

Advanced
Information Version
Bernard Sfez / Tiki Specialist The feature is named as Revision approval on the control panel 35
Bernard Sfez / Tiki Specialist Adding innovation about allowed_groups variable usage and sample 34
Yves Kipondo 33
Philippe Cloutier fixes 32
Bernard Sfez / Tiki Specialist Edit restored by rescue script 2017-04-24T18:09:12+00:00 31
Bernard Sfez / Tiki Specialist Edit restored by rescue script 2017-04-24T18:09:12+00:00 30
Xavier de Pedro 29
Xavier de Pedro 28
Xavier de Pedro 27
Xavier de Pedro 26
Xavier de Pedro 25
Xavier de Pedro 24
Xavier de Pedro 23
Marc Laporte Mass approval of all pages in some categories 22
Marc Laporte Pagination can be useful 21
Marc Laporte 20
Marc Laporte 19
Louis-Philippe Huberdeau 18
Marc Laporte typo 17
luciash d' being 🧙 16
luciash d' being 🧙 typo 15
Zac 14
Louis-Philippe Huberdeau 13
Louis-Philippe Huberdeau 12
Louis-Philippe Huberdeau Adding information on using PluginList with flagged revision 11
E.W. Peter Jalajas added maketoc box 10
Zac Posted answers to FAQ section. Tried to make it a little more readable. 9
E.W. Peter Jalajas petjal added faq item 8
E.W. Peter Jalajas petjal added FAQ 7
Zac Added instruction to use semicolon ";" as delimiter when entering multiple catagory IDs. 6
Marc Laporte 5
Marc Laporte 4
Marc Laporte 3
Xavier de Pedro added to the documentation toc structure 2
Louis-Philippe Huberdeau 1