Source of file GridFieldBulkActionPublishHandler.php
Size: 1,212 Bytes - Last Modified: 2021-12-24T06:34:31+00:00
/var/www/docs.ssmods.com/process/src/code/bulkmanager/GridFieldBulkActionPublishHandler.php
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 | <?php /** * Bulk action handler to publish records * * @author bummzack */ class GridFieldBulkActionPublishHandler extends GridFieldBulkActionHandler { /** * RequestHandler allowed actions * @var array */ private static $allowed_actions = array( 'publish' ); /** * RequestHandler url => action map * @var array */ private static $url_handlers = array( 'publish' => 'publish' ); /** * Publish the selected records passed from the publish bulk action * * @param SS_HTTPRequest $request * @return SS_HTTPResponse List of published record IDs */ public function publish(SS_HTTPRequest $request) { $ids = array(); foreach ($this->getRecords() as $record) { if ($record->hasExtension('Versioned')) { array_push($ids, $record->ID); $record->publish('Stage', Versioned::get_live_stage()); } } $response = new SS_HTTPResponse(Convert::raw2json(array( 'done' => true, 'records' => $ids ))); $response->addHeader('Content-Type', 'text/json'); return $response; } } |