isBulkEdit = $isBulkEdit; $this->hideClient = $hideClient; if ($entityType) { $this->entityType = $entityType; } } public function columns() { return []; } public function actions() { return []; } public function bulkActions() { return [ [ 'label' => mtrans($this->entityType, 'archive_'.$this->entityType), 'url' => 'javascript:submitForm_'.$this->entityType.'("archive")', ], [ 'label' => mtrans($this->entityType, 'delete_'.$this->entityType), 'url' => 'javascript:submitForm_'.$this->entityType.'("delete")', ] ]; } public function columnFields() { $data = []; $columns = $this->columns(); if ($this->isBulkEdit) { $data[] = 'checkbox'; } foreach ($columns as $column) { if (count($column) == 3) { // third column is optionally used to determine visibility if (!$column[2]) { continue; } } $data[] = $column[0]; } $data[] = ''; return $data; } }