trans('general.edit'), 'icon' => 'edit', 'url' => route('roles.roles.edit', $this->id), 'permission' => 'update-roles-roles', ]; $actions[] = [ 'title' => trans('general.duplicate'), 'icon' => 'file_copy', 'url' => route('roles.roles.duplicate', $this->id), 'permission' => 'create-roles-roles', ]; $actions[] = [ 'type' => 'delete', 'icon' => 'delete', 'route' => 'roles.roles.destroy', 'permission' => 'delete-roles-roles', 'model' => $this, ]; return $actions; } /** * Scope to get all rows filtered, sorted and paginated. * * @param \Illuminate\Database\Eloquent\Builder $query * @param $sort * * @return \Illuminate\Database\Eloquent\Builder */ public function scopeCollect($query, $sort = 'display_name') { $request = request(); $search = $request->get('search'); $limit = (int) $request->get('limit', setting('default.list_limit', '25')); return $query->usingSearchString($search)->sortable($sort)->paginate($limit); } }