DokuWiki

It's better when it's simple

User Tools

Site Tools


plugin:approve

Approve Plugin

Compatible with DokuWiki

  • 2018-04-22 "Greebo" yes
  • 2017-02-19 "Frusterick Manners" yes
  • 2016-06-26 "Elenor Of Tsort" unknown
  • 2015-08-10 "Detritus" unknown

plugin An approval/draft system for DokuWiki

Last updated on
2020-05-14
Provides
Syntax, Action
Repository
Source
Requires
sqlite

Similar to publish

Tagged with moderation

Donation

If you like this plugin or want to thank me for development of your requested features please consider buying me a coffee. Thank you ;-)

Installation

:!: This Plugin depends on the following other plugins:

Search and install the plugin using the Extension Manager. Refer to Plugins on how to install plugins manually.

Description

The plugin is an alternative to the publish plugin but it differs in some ways:

  • Approving (or marking ready for approval) the page doesn't make a new page revision.
  • User always see the diff of the last approved version and the current draft before approval.
  • Approvals of page are counted and displayed in the banner.
  • Plugin allows additional intermediate state: Ready for approval may be used (turn on in the plugin config)

Like in the publish plugin pages can be approved by the users that has AUTH_DELETE permission for the page.

Syntax

The syntax component allows you to place the table with wiki pages and its states. The minimal syntax is:

---- approve table ----
----

You can narrow the results only to specific namespace:

---- approve table ----
namespace: some:namespace
----

Show the page id's that satisfy the regular expression:

---- approve table ----
filter: /regex/
----

Show the pages that have some status:

---- approve table ----
states: approved, draft, ready_for_approval
----

Hide the summarize at the bottom of the table:

---- approve table ----
summarize: 0
----

You can show only a pages for specific approver:

---- approve table ----
approver: user
----

Approver can be currently login user:

---- approve table ----
approver: $USER$
----

You may join several filters:

---- approve table ----
namespace: some:namespace
filter: /regex/
states: approved, draft, ready_for_approval
approver: $USER$
summarize: 0
----

Approve Assignments

The plugins adds additional admin panel “Approve Assignments” that has two main tasks:

  1. It allows to define pages and/or namespaces where the plugin will be used.
  2. It allows define the page/namespace approver - a person or group (with @ prefix) who will be responsible for approving the page. The approver will be displayed in the plugin's banner, approve table and will receive notifications if the notification plugin is used.

When the page has its approver, the user or group members are the only ones who can approve the page (this can be turned off in plugins configuration). Approver needs only AUTH_VIEW permission to approve the page. When the approver isn't set all users with AUTH_DELETE permission can approve the page.

Configuration

  • no_apr_namespaces - here you can put a list of space separated pages and/or namespaces where the plugin won't be used.
  • prettyprint - adds nice looking banner while page is printed (tested only with default template)
  • ready_for_approval - turn on additional intermediate ready for approval state.
  • strict_approver - when this option is turned on only the page approver can approve the page. Otherwise all users with AUTH_DELETE permission (and the approver) can approve the page.
  • hide_drafts_for_viewers - when turned on, users without EDIT permission will see last approved version of page instead of last draft.

Integration with notification plugin

This plugin integrates with notification plugin and adds notifications for approvers about the pages that isn't approved yet.

Discussion

plugin/approve.txt · Last modified: 2020-05-14 15:48 by solewniczak