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