Workflow + Workflow_ng + workflow_owner = Advanced workflows for drupal

JacobSingh@drupal.org's picture
public
group: Workflow
JacobSingh@drup... - Fri, 2008-04-25 20:41

Hey folks.

Here is a custom solution we developed for Amnesty International which is now released to contrib!

Advanced workflow for drupal

The standard workflow module allows for the definition of arbitrary states and logging, however it does not provide any ownership of those states. In a small website with three or four moderators, this is fine. Stories placed in the “review” state will end up in a queue via views/workflow integration, and moderators will pick through them, moving their states as needed. In our case, each node may have a different fact checker, editor, Sr. editor and translation coordinator who will be responsible for pushing it through the process.

In addition:

this doesn’t solve the problem of notifying owners when they become responsible. Not everyone is tied to their computer refreshing this page, so we had to develop a solution for this. We contacted Fago soon after workflow_ng was released in beta, and we decided to gamble on this excellent, nay inspired module.

See the post for more information on how we put together this package. I'd love it if others could test it out and get it working for them.

Best,
Jacob


Jacob, Thanks for the nice

amitaibu's picture
amitaibu - Mon, 2008-04-28 21:21

Jacob,
Thanks for the nice write-up. Just to clarify, why didn't you go with wf_ng's machine states?


Most welcome! I didn't use

JacobSingh@drupal.org's picture
JacobSingh@drup... - Thu, 2008-05-15 06:19

Most welcome!

I didn't use the states because:

a). They were not ready when we had to do it

b). Workflow already has a fully built and tested UI which users basically like. Plus, the workflow_owner module was pretty easy to build on top of it, and I felt like there is nothing wrong with using a good state machine, even if it isn't really workflow (like -ng is).

c). I don't know the state API well enough. Are there any existing docs on it? I'd like to take a look sometime.

Best,
Jacob


Jacob - here's state API

amitaibu's picture
amitaibu - Wed, 2008-05-21 08:10

Jacob - here's state API docs


Here's another thought about

amitaibu's picture
amitaibu - Wed, 2008-05-21 15:39

Here's another thought about it. I can see another way for implementing it, using nodequeue and it's waiting for review integration.

  1. you assign a state using the Machine state in the wf_ng package.
  2. Every user has a node created for him (nodequeue_[user:uid])
  3. By changing the machine state wf_ng can decide to what nodequeue push the content.

Disadvantage is that wf_ng currently has no interface to define the allowed workflow. The advanatge is that it is a more general solution and Nodequeue module is in many developers "toolkits".