Source of file InstagramRecordBulkHandler.php
Size: 1,972 Bytes - Last Modified: 2022-02-21T10:02:04+00:00
/var/www/docs.ssmods.com/process/src/code/cms/InstagramRecordBulkHandler.php
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 | <?php namespace Arillo\InstagramScraper\CMS; use \Convert; use \GridFieldBulkActionHandler; use \SS_HTTPRequest; use \SS_HTTPResponse; /** * De-/activate bulk action handlers. * * @package instagram-scraper * @author bumbus <sf@arillo.net> */ class InstagramRecordBulkHandler extends GridFieldBulkActionHandler { /** * RequestHandler allowed actions * @var array */ private static $allowed_actions = [ 'activate', 'deactivate', ], $url_handlers = [ 'activate' => 'activate', 'deactivate' => 'deactivate', ] ; /** * Delete the selected records passed from the delete bulk action * * @param SS_HTTPRequest $request * @return SS_HTTPResponse List of deleted records ID */ public function activate(SS_HTTPRequest $request) { $ids = []; foreach ($this->getRecords() as $record) { array_push($ids, $record->ID); $record->Hidden = false; $record->write(); } $response = new SS_HTTPResponse(Convert::raw2json([ 'done' => true, 'records' => $ids ])); $response->addHeader('Content-Type', 'text/json'); return $response; } /** * Delete the selected records passed from the delete bulk action * * @param SS_HTTPRequest $request * @return SS_HTTPResponse List of deleted records ID */ public function deactivate(SS_HTTPRequest $request) { $ids = []; foreach ($this->getRecords() as $record) { array_push($ids, $record->ID); $record->Hidden = true; $record->write(); } $response = new SS_HTTPResponse(Convert::raw2json([ 'done' => true, 'records' => $ids ])); $response->addHeader('Content-Type', 'text/json'); return $response; } } |