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