Table of contents
Introduction
This new feature in 2.x is quite flexible but a little tricky to setup. Please see the documentation: Wiki Page Staging and Approval. This profile is designed to work with Tiki 6.2
This is one configuration among a lot of possible different ones to set a staging/ approval within Tiki. In this case:
- Anonymous & the Registered group can view the wiki pages (which are approved) but Registered can also comment on pages. Only the Authors and Approvers groups can edit a page. As soon as a page is edited, a page with the same name preceded with * is created. An Author or an Approver can still continue to edit the staging page (with the name beginning with *).
- The Approvers group can approve a staging page. As soon the page is approved, content and history are copied to the approved page. The staging page is deleted.
- Permissions over staging and approved pages are done with 2 categories. It is possible to have regular categories (Registered can have tiki_p_view_categories, tiki_p_view_categorized... without breaking the staging feature.
Categories
YAML
objects: - type: category ref: Staging_categ data: name: Staging description: For staging page - type: category ref: Approved_categ data: name: Approved description: For approved pages
Groups & permissions
YAML
permissions: Anonymous: description: Anonymous visitors deny: [ view ] objects: - type: category id: $profileobject:Approved_categ$ allow: [ view ] Registered: description: Logged in users allow: -view -comment objects: - type: category id: $profileobject:Approved_categ$ allow: [ view ] Authors: description: Can edit pages -> put them in a staging status. allow: -edit -wiki_view_history -modify_object_categories include: Registered objects: - type: category id: $profileobject:Staging_categ$ allow: [ view_category, add_object, remove_object, view, edit, modify_object_categories, wiki_view_history ] - type: category id: $profileobject:Approved_categ$ allow: [ view_category, view, wiki_view_history ] Approvers: description: Can approve a staging page include: Authors allow: [ rename ] objects: - type: category id: $profileobject:Approved_categ$ allow: [ view_category, add_object, remove_object, view, edit, modify_object_categories, rename, wiki_view_history ] - type: category id: $profileobject:Staging_categ$ allow: [ view_category, add_object, remove_object, view, edit, modify_object_categories, wiki_view_history ] Admins: include: Approvers
Activating the features
YAML
preferences: feature_wiki: y feature_categories: y feature_wikiapproval: y wikiapproval_delete_staging: y wikiapproval_prefix: * wikiapproval_master_group: Approvers wikiapproval_staging_category: $profileobject:Staging_categ$ wikiapproval_approved_category: $profileobject:Approved_categ$ feature_user_watches: y feature_group_watches: y
Modules
YAML
objects: - type: module ref: module_categories data: name: change_categories groups: [ Authors ] position: right order: 10 - type: module ref: module_change_category data: name: change_category groups: [ Authors ] position: right order: 20 - type: module ref: module_last_modif_pages data: name: last_modif_pages groups: [ Anonymous, Registered ] position: right order: 30 - type: module ref: module_quick_edit data: name: quick_edit groups: [ Authors ] position: right order: 40
Users for test
YAML
objects: - type: user data: name: author pass: 12345 groups: [ Authors ] - type: user data: name: approver pass: 12345 groups: [ Approvers ]
Wiki pages
YAML
objects: - type: wiki_page data: name: Staging and Approval instructions lang: en mode: create_or_update content: wikicontent:Staging_and_Approval_include
Instructions
YAML
instructions: Staging and Approval instructions preferences: wikiplugin_listpages: y
Todo
- Create a few test pages to help people get started
Questions
- How does it deal with translations?