HTTPBulkToolsResponse
class HTTPBulkToolsResponse extends HTTPResponse (View source)
Custom HTTPResponse for all bulk tools to use for a unified response format and facilitate forn-end handling
Add custom methods and tool to create a common json output format: { isDestructive: false, isError: false, isWarning: false, message: "General response error or not message for the cms user", successClasses: ['list', 'of-new', 'classes', 'to-add', 'bt-done'], failedClasses: ['list', 'of-new', 'classes', 'to-add', 'bt-done'] records: { success: [{ id: 1, class: 'ObjectClass', row: 'tr .ss-gridfield-item html markup for this record' }], failed: [{ id: 2, class: 'AnotherClass', message: 'Erro message for that object.' }] } }
Traits
A class that can be instantiated or replaced via DI
Properties
| protected static | array | $status_codes | from HTTPResponse | |
| protected static | array | $redirect_codes | from HTTPResponse | |
| protected | string | $protocolVersion | from HTTPResponse | |
| protected | int | $statusCode | from HTTPResponse | |
| protected | string | $statusDescription | from HTTPResponse | |
| protected | array | $headers | We always return JSON  | 
                |
| protected | string | $body | from HTTPResponse | |
| protected | bool | $removesRows | Does the bulk action removes rows?  | 
                |
| protected | string | $message | Bulk action result message  | 
                |
| protected | GridField | $gridField | GridField instance.  | 
                |
| protected | array | $successRecords | List of DataObject that has been modified successfully by the bulk action  | 
                |
| protected | array | $successClasses | List of css classes to add to gridfield row modified successfully  | 
                |
| protected | array | $failedRecords | List of DataObject IDs that failed to be modified by the bulk action  | 
                |
| protected | array | $failedClasses | List of css classes to add to gridfield row with errors  | 
                
Methods
An implementation of the factory method, allows you to create an instance of a class
Creates a class instance by the "singleton" design pattern.
Create a new bulk tools HTTP response
The HTTP version used to respond to this request (typically 1.0 or 1.1)
The text to be given alongside the status code ("reason phrase").
Overridden here so content-type cannot be changed Add a HTTP header to the response, replacing any header of the same name.
Overriden here so content-type cannot be changed Remove an existing HTTP header by its name, e.g. "Content-Type".
Make sure the body has been created before output Output body of this response to the browser
Returns true if this response is "finished", that is, no more script execution should be done.
Add a record to the failed to modified list with its error message
Add a list of records to the failed to modified list with a common error message
Details
        
                static            Injectable
    create(mixed ...$args)
        
    
    An implementation of the factory method, allows you to create an instance of a class
This method will defer class substitution to the Injector API, which can be customised via the Config API to declare substitution classes.
This can be called in one of two ways - either calling via the class directly, or calling on Object and passing the class name as the first parameter. The following are equivalent: $list = DataList::create(SiteTree::class); $list = SiteTree::get();
        
                static            Injectable
    singleton(string $class = null)
        
    
    Creates a class instance by the "singleton" design pattern.
It will always return the same instance for this class, which can be used for performance reasons and as a simple way to access instance methods which don't rely on instance data (e.g. the custom SilverStripe static handling).
        
                            
    __construct(bool $removesRows, GridField $gridfield, int $statusCode = null)
        
    
    Create a new bulk tools HTTP response
        
                            $this
    setProtocolVersion(string $protocolVersion)
        
    
    The HTTP version used to respond to this request (typically 1.0 or 1.1)
        
                            $this
    setStatusCode(int $code, string $description = null)
        
    
    No description
        
                            $this
    setStatusDescription(string $description)
        
    
    The text to be given alongside the status code ("reason phrase").
Caution: Will be overwritten by setStatusCode().
        
                            string
    getProtocolVersion()
        
    
    No description
        
                            int
    getStatusCode()
        
    
    No description
        
                            string
    getStatusDescription()
        
    
    No description
        
                            bool
    isError()
        
    
    Returns true if this HTTP response is in error
        
                            $this
    setBody(string $body)
        
    
    Overridden here so the response body cannot be set manually
        
                            string
    getBody()
        
    
    Makes sure body is created before being returned
        
                            $this
    addHeader(string $header, string $value)
        
    
    Overridden here so content-type cannot be changed Add a HTTP header to the response, replacing any header of the same name.
        
                            string
    getHeader(string $header)
        
    
    Return the HTTP header of the given name.
        
                            array
    getHeaders()
        
    
    No description
        
                            $this
    removeHeader(string $header)
        
    
    Overriden here so content-type cannot be changed Remove an existing HTTP header by its name, e.g. "Content-Type".
        
                            HTTPResponse
    redirect(string $dest, int $code = 302)
        
    
    No description
        
                            
    output()
        
    
    Send this HTTPResponse to the browser
        
                    protected        
    htmlRedirect()
        
    
    Generate a browser redirect without setting headers
        
                    protected        
    outputHeaders()
        
    
    Output HTTP headers to the browser
        
                    protected        
    outputBody()
        
    
    Make sure the body has been created before output Output body of this response to the browser
        
                            bool
    isFinished()
        
    
    Returns true if this response is "finished", that is, no more script execution should be done.
Specifically, returns true if a redirect has already been requested
        
                            bool
    isRedirect()
        
    
    Determine if this response is a redirect
        
                            string
    __toString()
        
    
    The HTTP response represented as a raw string
        
                            $this
    setMessage(string $message)
        
    
    Set the general response message
        
                            $this
    addSuccessRecord(DataObject $record)
        
    
    Add a record to the successfully modified list
        
                            $this
    addSuccessRecords(SS_List $records)
        
    
    Add a list of records to the successfully modified list
        
                            array
    getSuccessRecords()
        
    
    Return the list of successful records
        
                            $this
    addFailedRecord(DataObject $record, string $message)
        
    
    Add a record to the failed to modified list with its error message
        
                            $this
    addFailedRecords(SS_List $records, string $message)
        
    
    Add a list of records to the failed to modified list with a common error message
        
                            array
    getFailedRecords()
        
    
    Return the list of failed records
        
                    protected        string
    getRecordGridfieldRow(DataObject $record)
        
    
    Creates a gridfield table row for a given record
        
                            
    createBody()
        
    
    Creates the response JSON body