Source of file OrdersGridFieldBulkActions.php
Size: 2,491 Bytes - Last Modified: 2021-12-24T05:16:53+00:00
/var/www/docs.ssmods.com/process/src/code/forms/gridfield/OrdersGridFieldBulkActions.php
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 | <?php /** * A {@link GridFieldBulkActionHandler} for bulk marking orders as dispatched * * @package commerce */ class OrdersFieldBulkActions extends GridFieldBulkActionHandler { private static $allowed_actions = array( 'cancelled', 'paid', 'processing', 'dispatched' ); private static $url_handlers = array( 'cancelled' => 'cancelled', 'paid' => 'paid', 'processing'=> 'processing', 'dispatched'=> 'dispatched' ); public function cancelled(SS_HTTPRequest $request) { $ids = array(); foreach ($this->getRecords() as $record) { array_push($ids, $record->ID); $record->Status = 'cancelled'; $record->write(); } $response = new SS_HTTPResponse(Convert::raw2json(array( 'done' => true, 'records' => $ids ))); $response->addHeader('Content-Type', 'text/json'); return $response; } public function paid(SS_HTTPRequest $request) { $ids = array(); foreach ($this->getRecords() as $record) { array_push($ids, $record->ID); $record->Status = 'paid'; $record->write(); } $response = new SS_HTTPResponse(Convert::raw2json(array( 'done' => true, 'records' => $ids ))); $response->addHeader('Content-Type', 'text/json'); return $response; } public function processing(SS_HTTPRequest $request) { $ids = array(); foreach ($this->getRecords() as $record) { array_push($ids, $record->ID); $record->Status = 'processing'; $record->write(); } $response = new SS_HTTPResponse(Convert::raw2json(array( 'done' => true, 'records' => $ids ))); $response->addHeader('Content-Type', 'text/json'); return $response; } public function dispatched(SS_HTTPRequest $request) { $ids = array(); foreach ($this->getRecords() as $record) { array_push($ids, $record->ID); $record->Status = 'dispatched'; $record->write(); } $response = new SS_HTTPResponse(Convert::raw2json(array( 'done' => true, 'records' => $ids ))); $response->addHeader('Content-Type', 'text/json'); return $response; } } |