To create or manage Custom Workflows go to Content Types → Workflow Schemes and click to view a list of all current workflows.
By default you will see two schemes created: Default and Document Management. The Default scheme is assigned to all content types by default, don’t remove or modify this scheme unless necessary. The Document Management scheme is an example on how you can create different steps on your workflows, you can use this as a base to create your new schemes.
If you want to create a new workflow scheme click on the Add New Workflow Scheme button, on the popup window enter the following information:
- Name: Workflow scheme name
- Description: Workflow scheme description
- Archived: Check if you want to Archive this Workflow scheme
- Mandatory: If a workflow is mandatory, the Save and Save and Publish buttons won’t be available as actions when editing content, the user will only be able to click on one of the actions defined in the workflow.
If you click on an existing workflow, it will direct you to the Workflow Detail Page, on this page you will see a list of all steps created for this workflow including each of the action’s steps.
You can also Edit your workflow scheme from this page once it’s been created.
You can add a new step to the existing workflow by clicking on the button: Add Workflow Step.
If you click on a step name it will popup a window that will allow you to edit the step’s properties:
- Name: This is the step’s name
- Order: This is a sort order, it allows you to reorder the steps on your workflow scheme
- Resolve Task: If this is checked, the workflow task will be resolved once the process gets to this step.
- Scheduled Enabled: Allows to schedule a task on this step.
To delete an existing step all you need to do is click on the Red X next to the step’s name.
Now click on one of the actions under a step, this will take you to the Edit Step page. On this page you will be able to modify the following:
- Action Name
- Requires Lock: If checked, this action won’t be available unless the content is locked. This should be checked for all actions that modify content.
- Who can use: On this drop down you can type to search for roles or users in the system. The selected users / roles will be the only ones that will be able to use the given action. If you don’t select any user or Role the action will not be available to any users (even administrators).
What Action Does
- Allow Comment: If checked, this action will allow the user to submit comments on the workflow task.
- User can assign: If checked, the user that’s running the action will be able to assign the workflow task to another user.
- Assign To: On this drop down you’ll be able to select the user or role that will get be assigned the workflow task after the action runs. If User can assign is checked and a role was selected here, the user will be able to select either the Role or one of the users that belongs to the role when assigning the workflow task.
- Next step: This drop down shows a list of all the steps on this workflow scheme, you can either select a new step or the current step.
- Icon: This allows you to select an action image for your action.
- Custom Code: If code is entered, the custom code will run on the popup window that is opened when the action is clicked on.
The SubActions drop down displays a list of all the possible subactions this action will run. The action will always save the content by default, you can select additional subactions to run and reorder them on this section.
Some subactions require parameters to run, once added click on it to check if there are any parameters that need to be added.
- Archive content: Unpublishes and archives the contentlet
- Comment on workflow: This subaction lets you add a comment to the workflow task.
- Delete content: Unpublishes, archives, and deletes the contentlet completely (Warning - there is no way to bring the contentlet back without restoring a dotCMS backup)
- Link Checker: Fires the dotCMS Link Checker to check the current Content's WYSIWYG fields for broken links.
- Lock Content: Locks the content so that other users may not edit the content until the content moves to the next workflow step.
- Notify Assignee: This subaction will send an email to the assignee (or assignees if the next assign is a role). It uses a default email subject and message, but can be overridden. Both the subject and message are parsed Velocity, and have access to a $workflow object that gives them $workflow.task, $workflow.nextAssign, $workflow.action, $workflow.step, etc.
- Notify Users: This subaction takes a comma separated list of userId, email addresses and/or role keys and this will send them a notification email.
Publish Content: Publishes the contentlet
Push Now: Push publishes the contentlet, immediately, to the remote server
Push Publish: Brings up a light box for scheduling the push publishing of the contentlet being edited.
Require Multiple approvers: This subaction takes a comma separated list of userIds or user email addresses of users that need to approve this workflow task before it can progress. If eveyone in the list has not approved, this actionlet will send a notification email out to users who have not approved and STOP all further subaction processing.
Reset workflow: This subaction will complety delete all workflow task information, including history for the content item and reset the content items workflow state. It will also STOP all further subaction processing
Send an Email: Add the action, then click on the action to edit its properties. The action properties provide all the necessary fields to fire an email based on string values or, more importantly, Velocity variables that can dynamically generate the email based on the Velocity variables names of the content fields.
- Set Value: Add the action, then click on the action to edit its properties. This subaction can set velocity variables using a Velocity variable name field and a value property.
- Twitter status update: This subaction posts the value of a field or the workflow comments to twitter. If the “Field to Post” is set to the velocity variable of field on the contentlet, the system will post the value in that field to twitter, otherwise, it will post the comments entered into the workflow comment box to twitter. To get an access token for twittering, see: https://dev.twitter.com/apps and create a new dotCMS application
- Unarchive content: takes the content out of the archived state and saves it as an unpublished or “draft” state
- Unlock content: Unlocks the content so that it can be accessed by other content contributors
- Unpublish content: Moves the content from “published” to an unpublished or “draft” state. The contentlet not be visible on the front end of the site.