AdvancedWorkflowExtension
class AdvancedWorkflowExtension extends LeftAndMainExtension (View source)
Handles interactions triggered by users in the backend of the CMS. Replicate this type of functionality wherever you need UI interaction with workflow.
Properties
protected | SS_Object | $owner | The object this extension is applied to. |
from Extension |
protected | DataObject | $ownerBaseClass | The base class that this extension was applied to; $this->owner must be one of these |
from Extension |
public | $class | from Extension |
Methods
Called when this extension is added to a particular class
Helper method to strip eval'ed arguments from a string thats passed to DataObject::$extensions or Object::add_extension().
Need to update the edit form AFTER it's been transformed to read only so that the workflow stuff is still allowed to be added with 'write' permissions
Update a workflow based on user input.
Ocassionally users forget to apply their changes via the standard CMS "Save Draft" button, and select the action button instead - losing their changes.
Details
__construct()
No description
static
add_to_class(string $class, string $extensionClass, mixed $args = null)
Called when this extension is added to a particular class
setOwner(SS_Object $owner, string $ownerBaseClass = null)
Set the owner of this extension.
clearOwner()
No description
SS_Object
getOwner()
Returns the owner of this extension.
static string
get_classname_without_arguments(string $extensionStr)
Helper method to strip eval'ed arguments from a string thats passed to DataObject::$extensions or Object::add_extension().
init()
No description
accessedCMS()
No description
augmentNewSiteTreeItem($item)
No description
startworkflow($data, $form, $request)
No description
updateEditForm(Form $form)
Need to update the edit form AFTER it's been transformed to read only so that the workflow stuff is still allowed to be added with 'write' permissions
updateItemEditForm($form)
No description
string
updateworkflow(array $data, Form $form, SS_HTTPRequest $request)
Update a workflow based on user input.
protected
returnResponse($form)
No description
protected void
saveAsDraftWithAction(Form $form, DataObject $item)
Ocassionally users forget to apply their changes via the standard CMS "Save Draft" button, and select the action button instead - losing their changes.
Calling this from a controller method saves a draft automatically for the user, whenever a workflow action is run. See: #72 and #77