Workbench Workflows

Component ID

1405838

Component name

Workbench Workflows

Component type

module

Maintenance status

Development status

Component security advisory coverage

not-covered

Component created

Component changed

Component body

Workbench Workflows uses CTools Export UI to define states, events and workflows. This work began out of discussions between the maintainers of Workbench Moderation, State Machine and Workflow: http://groups.drupal.org/node/198188

This sandbox project is built on the idea that the definition of workflows can be separate from the storage of what state/status a node/entity revision is in at a given time.

Workbench workflows defines three exportables:

States: States are meant to reflect the current status of node/entity. Example states might be: Draft, Needs Review, Published or Archived.

Events: Events are the way to get from one state to another. This module depends on Workbench States. An example event might be "Publishing." Workbench Events lets site builders define the target state and allowed origin states. So a site builder would make "Published" the target state of the "Publishing" event and also decide from what states this event is allowed to be performed. This model is based on the architecture of State Machine.

Workflows: Workflows hold a set of events and states together. Site builder can define multiple workflows and share events and states between them. A site may have a five-state, seven-event workflow for their press release content type. The blog content type might use a simplified workflow with just three states and three events. Because each of these three exportables States, Events and Workflows is built on CTools Export UI it uses the same access mechanism familiar to Panels users. States, events and workflows use the context of a node (and will eventually be entity agnostic) so it is possible designate what states/events/workflow are available to a node based on it's node type, author or any other attribute for which there is a CTools access plugin.

State machine integration:

This module extends State Flow (Version 2.x). When State Flow launched it required code customize workflows for a site. http://treehouseagency.com/blog/fredric-mitchell/2011/10/21/extending-yo.... Workbench Workflows let's the UI define custom workflows.

Example modules

Workbench Workflows Sample Feature: Using CTools Export UI makes it possible to export states, events, and workflows using Features. This is a sample module that contains three states, three events and one workflow.

Noun Soup

Worbench, workflows, states, machines, flows. Too many similar sounding nouns. I know. I'll open an issue to sort it out. I'll keep this in the Workbench_* namespace for now.