diff --git a/app/Http/Controllers/Admin/AccountCrudController.php b/app/Http/Controllers/Admin/AccountCrudController.php index 24ea8af2..529b91c4 100755 --- a/app/Http/Controllers/Admin/AccountCrudController.php +++ b/app/Http/Controllers/Admin/AccountCrudController.php @@ -45,6 +45,16 @@ public function setup() if(!(backpack_user()->hasPermissionTo('accounts'))){ $this->crud->denyAccess(['delete', 'update']); } + + $this->crud->addFilter([ + 'name' => 'country', + 'type' => 'select2', + 'label' => trans('app.account.country') + ], function () { + App\Models\Country::get()->pluck('name', 'id'); + }, function ($value) { // if the filter is active + $this->crud->addClause('where', 'country_id', $value); + }); } /** @@ -55,12 +65,23 @@ public function setup() */ protected function setupListOperation() { - CRUD::addColumn(['name'=>'account_type', 'type'=>'text','label'=> trans('app.account.filter.type')]); + CRUD::addColumn([ + 'name'=>'account_type', + 'type'=>'text', + 'label'=> trans('app.account.filter.type'), + ]); CRUD::addColumn([ 'name' => 'profile', 'label' => trans('app.account.name'), - 'type' => 'profile_name' + 'type' => 'profile_name', + 'searchLogic' => function ($query, $column, $searchTerm) { + $query->whereHas('profile', function ($q) use ($column, $searchTerm) { + $q->where('name', 'like', '%'.$searchTerm.'%') + ->orWhere('surname', 'like', '%'.$searchTerm.'%') + ->orWhere('short_name', 'like', '%'.$searchTerm.'%'); + }); + } ]); CRUD::addColumn(['name'=>'legalization_number', 'type'=>'text','label'=> trans('app.account.legalization_number')]); CRUD::addColumn(['name'=>'expires_at', 'type'=>'text','label'=> trans('app.account.expires_at')]); diff --git a/resources/views/vendor/backpack/base/inc/sidebar_content.blade.php b/resources/views/vendor/backpack/base/inc/sidebar_content.blade.php index 8df9bc99..9413e8ea 100755 --- a/resources/views/vendor/backpack/base/inc/sidebar_content.blade.php +++ b/resources/views/vendor/backpack/base/inc/sidebar_content.blade.php @@ -1,70 +1,73 @@ -