Share » Learn » eZ Publish » eZ Publish Knowledge Series:...

eZ Publish Knowledge Series: Editorial workflow with Object States

Tuesday 24 March 2009 5:00:00 am

  • Currently 5 out of 5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Creating User groups

Create, from the «User accounts» tab in the administration interface, as many user groups as your editorial chain requires. Then create our main characters in their respective groups (remember, Brad, Stefan, Mélanie, Telma).

Creating Roles

Creating the adequate roles will help satisfy point 1. of the initial key elements :

«An access control mechanism, giving the right to each subteam to do its part of the work ( and only this ) on a piece of content, preventing any destructive interference.»

The first step will be to copy the built-in «Editor» , role, and slightly modify it. It is too permissive in our current use-case. Here is the new “Generic Editor” :

We then assign it to the four user groups used in the web-media application.

On top of the generic edition role, let's create roles controlling the state transitions between each step of our editorial chain, and also enforcing that every user group has the right to only perform the edit action it is allowed for. They are straight-forward, giving among other the right on the 'state' module, its 'assign' function, and narrowing down the allowed action to a specific transition between two steps. Here they are. Each of them is assigned to its eponymous user group.

Bulk Editors

This role is assigned to the «Bulk Editors» group, and allows Brad, once he finished writing the initial text of a piece of news, to push it one step ahead to the Spell Checking phase (Stefan).

Spell Checkers

This role is assigned to the «Spell Checkers» group, and allows Stefan, once he finished reviewing a piece of news, to push it one step ahead to the Media Enrichers (Mélanie).

Media Enrichers

This role is assigned to the «Media Enrichers» group, and allows Mélanie, once she finished adding media elements to a piece of news, to push it one step ahead to the Translaters (Telma).

Translaters

This role is assigned to the «Translaters» group, and allows Telma, once she finished translating the piece of news into various languages, to push it live ! The content object will then be in the last step of our editorial chain: “Ready to go live”.

Anonymous

The anonymous role, in our simplistic proof of concept, shall be altered to properly reflect the editorial process. Indeed, the built-in Anonymous role gives read access on about any content in the standard section, with absolutely no restriction on the Object States. Hence the need to make sure all content classes involved in the editorial process are only visible when their instances are in the “Ready to go live” state. Here is our modified Anonymous role, assuming that only Article, Article (main-page), Article (sub-page) are used by the editors:

Ok, now the system is properly configured, only “Ready to go live” articles will be surfaced on front pages, and the four different teams are able to collaborate efficiently...but for point 2. of our initial key elements :

“A hand-over mechanism, communication channel between subteams.”

36 542 Users on board!

Tutorial menu

Printable

Printer Friendly version of the full article on one page with plain styles

Author(s)