Personal tools
You are here: Home Products Plone Roadmap #26: Ship Plone with additional workflows and a workflow control panel
Document Actions

#26: Ship Plone with additional workflows and a workflow control panel

Contents
  1. Motivation
  2. Proposal
  3. Implementation
  4. Deliverables
  5. Progress log
  6. Participants
by Alexander Limi last modified March 7, 2007 - 00:13
Plone currently ships with one workflow, we propose to ship it with four pre-defined workflows and a control panel that cover most of the use cases people normally have: Community, Intranet, Web Publishing and Extranets.
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!

Posted by Jon Stahl at October 30, 2005 - 02:00

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!

A couple of minor thoughts
I know it's late in the game:
  • I do suggest that the "Simple Publication" work flow ought not to require editors to retract content before editing. This seems clumsy and unneccessary for a "simple" site.
  • It would be very nice if sites that use the one-state and simple publication workflows can still easily put images into an images folder 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.

For any issues with the web site functionality, please file a ticket.

Please consult the policy on plone.org content if you want your content published on this site.

Servers and hosting by