Blocks: Workflow block

Maintained by Tim at Lone Pine Koala SanctuaryTim Hunt
This block allows you to manage the process of producing courses or activities. A workflow make it clear who is responsible for doing the next step, and what tasks they should be doing. The workflow can also assign and unassign roles, or automatically set certain settings, when the workflow moves from one step to the next.
393 sites
60 fans
Current versions available: 7

The Workflow system is used at the OU to manage the production of courses and some activities. It comprises a block and a related admin report.

A workflow (for our purposes) is a linear sequence of steps. A step has

  • a name
  • some instructions;
  • a check-list of actions;
  • a list of roles who are responsible for performing this step;
  • a list of actions that are taken automatically when the step is started/finished, for example assigning roles or changing activity settings.

The system allows the definition of different workflows. Each workflow has

  • a name
  • a description
  • an indication of the type of thing it relates to (e.g. ‘course’, ‘mod_quiz’)

Under Admin -> Plugins -> Blocks -> Workflow, there is an interface for Administrators to define and edit workflows, and to import and export workflow definitions as XML.

To use a workflow to manage the production of, say, a course, you go to the course, and add a workflow block to it. Initially, the block will display a message “There is currently no workflow associated with this course.” with an Add workflow button. Clicking the button allows you to select from any of the workflows that are appropriate for ‘course’.

When the workflow is added to the course, the first step in the workflow becomes active. The workflow block now displays the step instructions for the currently active step; the checklist items as a list of check-boxes; a comments area; a Finish step button; and a link to the workflow overview.

When a step becomes active, all the people responsible for completing the step are sent an email informing them that they should do the step. These people may also get an additional role assigned to them in the context the workflow applies to.

The comments area in the workflow block is a simple editable text area where people working on the step can leave notes for each other.

The Finish step button leads to a confirmation page. If the action is confirmed, then the workflow advances to the next step. When the last step of the workflow is finished, the workflow either stops, or loops back to one of the other steps.

The workflow overview gives an overview of all the steps in this workflow, and the progress through it. The system tracks the timestamp, and the user, each time a step is finished or made active.

The overview page also allows workflow administrators (those with an appropriate capability) to jump the workflow to any particular step.

There is also an admin reports that summarise the workflow across a selection of courses or activities.


Screenshot #0
Screenshot #1
Screenshot #2
Screenshot #3
Screenshot #4


Tim at Lone Pine Koala Sanctuary
Tim Hunt (Lead maintainer)
Please login to view contributors details and/or to contact them

Comments RSS


  • Picture of Amir Elion
    Tue, Aug 21, 2012, 4:48 PM
    Was able to add new workflow now and start editing it. Also saw you updated some documentation, thanks. Advanced featured like auto actions documentation would be great.
  • Picture of Roberto Sbravati
    Fri, Aug 24, 2012, 8:20 PM
    Great! But can I find some XML files to import with examples of actions "On step activation" and "On completion step"? Thank'you!!!
  • Tim at Lone Pine Koala Sanctuary
    Fri, Aug 24, 2012, 8:23 PM
    I must write those docs. At the moment, all you can do is look in the code: the command_ classes show what commands are available.
  • Tim at Lone Pine Koala Sanctuary
    Fri, Aug 24, 2012, 8:51 PM
    OK, I had to wait for some unit tests to run, so I copied and pasted some docs to I hope that makes sense.
  • Picture of Amir Elion
    Tue, Aug 28, 2012, 12:39 AM
    Thanks a lot Tim for updating the doc.
  • Picture of Heinz Schmolke
    Wed, Oct 31, 2012, 9:34 AM
    I got the same error like Amir and I tried to fix it like Tim has suggested on 20 August but it don't work. Is there a zip file with the fixed problems in progress?
  • Tim at Lone Pine Koala Sanctuary
    Tue, Nov 13, 2012, 2:51 AM
    I won't upload a new zip yet, because we are in the middle of implementing a new features.

    In the mean time, you can get a zip of the latest code, including the LIKE bug fix, from
  • Picture of Lewis Hamilton
    Sat, Aug 3, 2013, 6:09 PM
    This is a great plugin. But I need one more feature on this module, can you please implement a way to assign a task or a step to a single user?
  • Tim at Lone Pine Koala Sanctuary
    Tue, Aug 6, 2013, 1:46 AM
    We are not going to implement that. Surely you might need to assign the task to different people on different courses.

    What you will have to do is:
    1. Create a new role: Do task X in the workflow.
    2. Set that role as being resonsible for doing that task.
    3. Assign that role to the key person in each cousre where the workflow is used. (Cohort enrolment may help there.)
  • Picture of Tom Tabaczynski
    Tue, Aug 27, 2013, 1:22 PM
    When I go to Manage Workflows under plugins admin I get "Page Not Found".
  • Tim at Lone Pine Koala Sanctuary
    Tue, Aug 27, 2013, 9:41 PM
    Please set 'Debugging' to DEVELOPER level, and try again, then copy and paste the full error message here.
  • Picture of Gerald Albion
    Thu, Oct 9, 2014, 1:09 AM
    I just installed the block in Moodle 2.7.2, and created a basic workflow with several steps, and added it to a course.

    The "Edit Comments" button pops up an edit dialog, but this window does not close when you click "Save Changes."

    In the Firebug console, the following error occurs when you click this button:

    ReferenceError: tinyMCE is not defined
    var ed = tinyMCE.get(this.get(EDITORID));
    yui_com...ebug.js (line 141, col 16)

    This is a vanilla 2.7.2 installation in which the default editor is Atto, not TinyMCE. I am not sure why this is a problem, since both editors are present and (apparently) the dialog uses a plain text area.

  • Tim at Lone Pine Koala Sanctuary
    Thu, Oct 9, 2014, 1:10 AM
    The workflow block was designed to work with TinyMCE, and does not currently work with Atto. Sorry.
  • Picture of Gerald Albion
    Thu, Oct 9, 2014, 5:47 AM
    I have since found that making TinyMCE the default editor makes the problem go away. However, out of the box, Atto is the default.
  • Tim at Lone Pine Koala Sanctuary
    Thu, Oct 9, 2014, 4:33 PM
    Yes, it needs to be fixed to work with either editor (or just Atto). It will be when I have time. I don't have time now, and the OU is staying with TinyMCE for the next few months, so I don't have a strong local need to fix this soon.

    (The fix will only require some small changes in the JavaScript.)
Please login to post comments