FileWorkflowApplicable
class FileWorkflowApplicable extends WorkflowApplicable (View source)
WorkflowApplicable extension specifically for File objects, which don't have the same CMS UI structure so need to be handled a little differently. Additionally, it doesn't really work without custom code to handle the triggering of workflow, and in general is not ready for production use just yet.
Properties
| DataObject | $owner | from DataExtension | ||
| public | bool | $isPublishJobRunning | Used to flag to this extension if there's a WorkflowPublishTargetJob running.  | 
                from WorkflowApplicable | 
| public | WorkflowService | $workflowService | from WorkflowApplicable | |
| protected | WorkflowInstance | $currentInstance | A cache var for the current workflow instance  | 
                from WorkflowApplicable | 
Methods
Called when this extension is added to a particular class
Temporarily modify the owner. The original owner is ensured to be restored
Clear the current owner, and restore extension to the state prior to the last setOwner()
Helper method to strip eval'ed arguments from a string that's passed to DataObject::$extensions or Object::add_extension().
Edit the given query object to support queries for this extension
Update the database schema as required by this extension.
After a workflow item is written, we notify the workflow so that it can take action if needbe
Influence the owner's can() permission check value to be disallowed (false), allowed (true) if no other processed results are to disallow, or open (null) to not affect the outcome.
Influence the owner's canDelete() permission check value to be disallowed (false), allowed (true) if no other processed results are to disallow, or open (null) to not affect the outcome.
Influence the owner's canCreate() permission check value to be disallowed (false), allowed (true) if no other processed results are to disallow, or open (null) to not affect the outcome.
Define extra database fields
This function is used to provide modifications to the form in the CMS by the extension. By default, no changes are made. DataObject->getCMSFields().
This function is used to provide modifications to the Validators used on a DataObject.
This function is used to provide modifications to the form used for front end forms. DataObject->getFrontEndFields()
This is used to provide modifications to the form actions used in the CMS. DataObject->getCMSActions().
this function is used to provide modifications to the summary fields in CMS by the extension By default, the summaryField() of its owner will merge more fields defined in the extension's $extra_fields['summary_fields']
this function is used to provide modifications to the fields labels in CMS by the extension By default, the fieldLabels() of its owner will merge more fields defined in the extension's $extra_fields['field_labels']
Included in CMS-generated email templates for a NotifyUsersWorkflowAction.
Included in CMS-generated email templates for a NotifyUsersWorkflowAction.
Gets the history of a workflow instance
Check all recent WorkflowActionIntances and return the most recent one with a Comment
Content can never be directly publishable if there's a workflow applied.
Can a user edit the current workflow attached to this item?
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(object $owner)
        
    
    Set the owner of this extension.
        
                            mixed
    withOwner(mixed $owner, callable $callback, array $args = [])
        
    
    Temporarily modify the owner. The original owner is ensured to be restored
        
                            
    clearOwner()
        
    
    Clear the current owner, and restore extension to the state prior to the last setOwner()
        
                            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 that's passed to DataObject::$extensions or Object::add_extension().
        
                static            
    unload_extra_statics($class, $extension)
        deprecated
    
    deprecated
No description
        
                            
    validate(ValidationResult $validationResult)
        
    
    Hook for extension-specific validation.
        
                            
    augmentSQL(SQLSelect $query, DataQuery $dataQuery = null)
        
    
    Edit the given query object to support queries for this extension
        
                            
    augmentDatabase()
        
    
    Update the database schema as required by this extension.
When duplicating a table's structure, remember to duplicate the create options as well. See Versioned->augmentDatabase for an example.
        
                            
    augmentWrite(array $manipulation)
        
    
    Augment a write-record request.
        
                            
    onBeforeWrite()
        
    
    Extend the owner's onBeforeWrite() logic
See DataObject::onBeforeWrite() for context.
        
                            
    onAfterWrite()
        
    
    After a workflow item is written, we notify the workflow so that it can take action if needbe
        
                            
    onBeforeDelete()
        
    
    Extend the owner's onBeforeDelete() logic
See DataObject::onBeforeDelete() for context.
        
                            
    onAfterDelete()
        
    
    Extend the owner's onAfterDelete() logic
See DataObject::onAfterDelete() for context.
        
                            
    requireDefaultRecords()
        
    
    Extend the owner's requireDefaultRecords() logic
See DataObject::requireDefaultRecords() for context.
        
                            
    populateDefaults()
        
    
    Extend the owner's populateDefaults() logic
See DataObject::populateDefaults() for context.
        
                            
    onAfterBuild()
        
    
    Extend the owner's onAfterBuild() logic
See DataObject::onAfterBuild() for context.
        
                            bool|null
    can(Member $member)
        
    
    Influence the owner's can() permission check value to be disallowed (false), allowed (true) if no other processed results are to disallow, or open (null) to not affect the outcome.
See DataObject::can()} and {@link DataObject::extendedCan() for context.
        
                            bool|null
    canEdit(Member $member)
        
    
    Can only edit content that's NOT in another person's content changeset
        
                            bool|null
    canDelete(Member $member)
        
    
    Influence the owner's canDelete() permission check value to be disallowed (false), allowed (true) if no other processed results are to disallow, or open (null) to not affect the outcome.
See DataObject::canDelete()} and {@link DataObject::extendedCan() for context.
        
                            bool|null
    canCreate(Member $member)
        
    
    Influence the owner's canCreate() permission check value to be disallowed (false), allowed (true) if no other processed results are to disallow, or open (null) to not affect the outcome.
See DataObject::canCreate()} and {@link DataObject::extendedCan() for context.
        
                            array
    extraStatics(string $class = null, string $extension = null)
        
    
    Define extra database fields
Return a map where the keys are db, has_one, etc, and the values are additional fields/relations to be defined.
        
                            
    updateCMSFields(FieldList $fields)
        
    
    This function is used to provide modifications to the form in the CMS by the extension. By default, no changes are made. DataObject->getCMSFields().
Please consider using updateFormFields() to globally add formfields to the record. The method updateCMSFields() should just be used to add or modify tabs, or fields which are specific to the CMS-context.
Caution: Use FieldList->addFieldToTab() to add fields.
        
                            void
    updateCMSCompositeValidator(CompositeValidator $compositeValidator)
        
    
    This function is used to provide modifications to the Validators used on a DataObject.
Caution: Use CompositeValidator->addValidator() to add Validators.
        
                            
    updateFrontEndFields(FieldList $fields)
        
    
    This function is used to provide modifications to the form used for front end forms. DataObject->getFrontEndFields()
Caution: Use FieldList->push() to add fields.
        
                            
    updateCMSActions(FieldList $actions)
        
    
    This is used to provide modifications to the form actions used in the CMS. DataObject->getCMSActions().
        
                            
    updateSummaryFields(array $fields)
        
    
    this function is used to provide modifications to the summary fields in CMS by the extension By default, the summaryField() of its owner will merge more fields defined in the extension's $extra_fields['summary_fields']
        
                            
    updateFieldLabels(array $labels)
        
    
    this function is used to provide modifications to the fields labels in CMS by the extension By default, the fieldLabels() of its owner will merge more fields defined in the extension's $extra_fields['field_labels']
        
                            
    setIsPublishJobRunning(bool $truth)
        
    
    No description
        
                            bool
    getIsPublishJobRunning()
        
    
    No description
        
                            bool
    isPublishJobRunning()
        
    
    No description
        
                            
    updateSettingsFields(FieldList $fields)
        
    
    No description
        
                            
    updateFields(FieldList $fields)
        
    
    No description
        
                    protected        
    createActionMenu()
        
    
    No description
        
                            string|null
    AbsoluteEditLink()
        
    
    Included in CMS-generated email templates for a NotifyUsersWorkflowAction.
Returns an absolute link to the CMS UI for a Page object
        
                            string
    LinkToPendingItems()
        
    
    Included in CMS-generated email templates for a NotifyUsersWorkflowAction.
Allows users to select a link in an email for direct access to the transition-selection dropdown in the CMS UI.
        
                            
    WorkflowInstances()
        
    
    No description
        
                            WorkflowInstance
    getWorkflowInstance()
        
    
    Gets the current instance of workflow
        
                            DataList
    getWorkflowHistory($limit = null)
        
    
    Gets the history of a workflow instance
        
                            WorkflowActionInstance|null
    RecentWorkflowComment(int $limit = 10)
        
    
    Check all recent WorkflowActionIntances and return the most recent one with a Comment
        
                            
    canPublish()
        
    
    Content can never be directly publishable if there's a workflow applied.
If there's an active instance, then it 'might' be publishable
        
                            bool
    canEditWorkflow()
        
    
    Can a user edit the current workflow attached to this item?
        
                            $this
    setWorkflowService(WorkflowService $workflowService)
        
    
    No description
        
                            WorkflowService
    getWorkflowService()
        
    
    No description