#26: Ship Plone with additional workflows and a workflow control panel
- Proposed by
- Alexander Limi
- Seconded by
- Francesco Ciriaci
- Proposal type
- Architecture
- Assigned to release
- Repository branch
- plip26-additional-workflows
- State
- completed
Motivation
The idea is to provide not one but several built-in workflows for Plone, to respond to 80% of common Use Cases and also to show there is a powerful wf engine in Plone, not just an hardcoded wf like many CMS around.
Modifing workflows is difficult for many site managers, so we will give them some easy choice.
In the mean time we will do some refactoring of current plone default workflow.
Proposal
One state workflow
Immeditate publication, a dumb workflow for non-workflowed content and very small sites :). The one state workflow is useful when you do not want workflow at all in your Plone, and you just want your contents to show up. The one state is also useful if you want only a particular kind of content (i.e. a forum post or a FAQ) to automatically show.
States, permissions and roles
- Private
- Published: all contents that use this workflow are visible and accessible by everyone (anonymous). Edit is granted only to 'Owner' and 'Manager'.
Simple publication workflow
Simple publication is especially useful for small portals and small intranets (with some modifications), when no reviewer is necessary. The default state is 'private', so that content is not accessible while unpublished. Don't forget to publish everything you want to show and every image or link you embed in your documents.
States, permissions and roles
- Private
- accessible, visible and editable only by Owner and Manager, as in Plone Default.
- Published
- visible and accessible by everybody (anonymous), as in Plone Default. Owner cannot edit content in published state, he has to make it private (hide) and publish it again.
Intranet workflow
In intranet workflow only members can access portal contents; an internal document can be also internally published when it is somehow 'official' for the organization or company. By default all contents created in the intranet are visible to all intranet members. Only published events, news, etc. appear in the portlets, though. The workflow for folders is extremely simple: all folders are accessible by all intranet members. Use the roleSeeUnpublishedContent of the nav tree properties to control which role see the folders in the nav tree (usually all members). Warning: using the intranet workflow for your contents does not make your site an Intranet! There are other setup to be made (see Private Plone policy)
States, permissions and roles
- Private
- visible and accessible only by Owner and Manager, as in Plone Default.
- Internal
- visible and accessible only by portal Members (Member role).
- Pending
- awaiting approval from Reviewer; visible and accessible only by portal Members (Member role).
- (Internally) Published
- Published in the intranet: visible and accessible by portal Members, appears in portlets and is no more editable. An internally published document is not visible or accessible by anonymous even if the Plone is deployed on an internet server.
Community workflow
This is a refactored Plone Default workflow; use this one if if you can and please give feedback to improve it!
The default Plone workflow is enough general for most portals and intranets; with simple customizations it can be adapted to address many use cases.
States, permissions and roles
Same as Plone Default.
Implementation
Move the PloneWorkflows Collective project to core Plone. Most of the work is done.
Deliverables
- PloneWorkflows 1.0 final
- PloneWorkflows docs
- Portal workflow configlet
- Workflow migration sript
Progress log
During Archipelago sprint following has been done:
- reviewed worfklows
- added permission-role mappings for new roles editor/reader
- added extra transition to every workflow and wf. state called 'stay_in_state'
- Monkeypatched DCWorkflow to have a 'description' property per workflow
- Add UI for that in the ZMI (monkeypatching)
- Added extra method 'getDescriptionFor' to CMFPlone/WorkflowTool
- Wrote a little test for this method
Participants
limi
vds
ilBestio
axa
jjmurre
Love this!
I'm really glad to see this PLIP moving forward in Plone 2.2. I think that some simpler built-in workflows will be very helpful in making it much easier for "grassroots" users and new Plone admins to deploy simpler sites without having to understand more complex workflows. Bravo!
imagesfolder that doesn't appear in the Navigation or Site Map. Maybe this requires that images be excluded from the search, or that images use the Plone Default workflow. This same concern might also apply to "supporting materials" like files or links that need to be linked into pages but probably don't need to show separately on the site.