![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/syn.corals.io/vendor/yajra/laravel-datatables-oracle/src/ |
<?php namespace Yajra\DataTables; use Illuminate\Http\Resources\Json\AnonymousResourceCollection; use Illuminate\Pagination\LengthAwarePaginator; use Illuminate\Support\Collection; class ApiResourceDataTable extends CollectionDataTable { /** * Collection object. * * @var \Illuminate\Http\Resources\Json\AnonymousResourceCollection */ public $collection; /** * Collection object. * * @var \Illuminate\Http\Resources\Json\AnonymousResourceCollection */ public $original; /** * Can the DataTable engine be created with these parameters. * * @param mixed $source * @return bool */ public static function canCreate($source) { return $source instanceof AnonymousResourceCollection; } /** * Factory method, create and return an instance for the DataTable engine. * * @param \Illuminate\Http\Resources\Json\AnonymousResourceCollection $source * @return ApiResourceDataTable|DataTableAbstract */ public static function create($source) { return parent::create($source); } /** * CollectionEngine constructor. * * @param \Illuminate\Http\Resources\Json\AnonymousResourceCollection $collection */ public function __construct(AnonymousResourceCollection $collection) { $this->request = app('datatables.request'); $this->config = app('datatables.config'); $this->collection = collect($collection->toArray($this->request)); $this->original = $collection; $this->columns = array_keys($this->serialize(collect($collection->toArray($this->request))->first())); if ($collection->resource instanceof LengthAwarePaginator) { $this->isFilterApplied = true; } } }