From 1e3cc4788a15a3d391e25fc2928fb089aa14e04a Mon Sep 17 00:00:00 2001 From: SourceDoctor Date: Fri, 12 Mar 2021 10:29:19 +0100 Subject: [PATCH] Sort Type List in Eventlog Pages (#12572) * Sort Type List in Eventlog Pages * update code --- app/Http/Controllers/Select/EventlogController.php | 14 ++++++++++++++ app/Http/Controllers/Select/SelectController.php | 1 + 2 files changed, 15 insertions(+) diff --git a/app/Http/Controllers/Select/EventlogController.php b/app/Http/Controllers/Select/EventlogController.php index f24ca3be39..258cdff3d5 100644 --- a/app/Http/Controllers/Select/EventlogController.php +++ b/app/Http/Controllers/Select/EventlogController.php @@ -28,6 +28,8 @@ use App\Models\Eventlog; class EventlogController extends SelectController { + protected $default_sort = ['type' => 'asc']; + /** * Defines validation rules (will override base validation rules for select2 responses too) * @@ -41,6 +43,18 @@ class EventlogController extends SelectController ]; } + /** + * Defines sortable fields. The incoming sort field should be the key, the sql column or DB::raw() should be the value + * + * @param \Illuminate\Http\Request $request + * @return array + * @SuppressWarnings(PHPMD.UnusedFormalParameter) + */ + protected function sortFields($request) + { + return ['type']; + } + /** * Defines search fields will be searched in order * diff --git a/app/Http/Controllers/Select/SelectController.php b/app/Http/Controllers/Select/SelectController.php index b9332c1286..ba7db47f53 100644 --- a/app/Http/Controllers/Select/SelectController.php +++ b/app/Http/Controllers/Select/SelectController.php @@ -52,6 +52,7 @@ abstract class SelectController extends PaginatedAjaxController $limit = $request->get('limit', 50); $query = $this->search($request->get('term'), $this->baseQuery($request), $this->searchFields($request)); + $this->sort($request, $query); $paginator = $query->simplePaginate($limit); return $this->formatResponse($paginator);