From 459069c5ee39be6881129616bb4c23778173d979 Mon Sep 17 00:00:00 2001 From: IceToast Date: Wed, 15 Feb 2023 21:41:24 +0100 Subject: [PATCH] =?UTF-8?q?feat:=20=F0=9F=90=9B=20admin/servers=20sortable?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/Admin/ServerController.php | 44 +++-------- .../views/admin/servers/table.blade.php | 74 ++++++++++++------- 2 files changed, 60 insertions(+), 58 deletions(-) diff --git a/app/Http/Controllers/Admin/ServerController.php b/app/Http/Controllers/Admin/ServerController.php index 06d2cc22..14b594ab 100644 --- a/app/Http/Controllers/Admin/ServerController.php +++ b/app/Http/Controllers/Admin/ServerController.php @@ -6,6 +6,7 @@ use App\Classes\Pterodactyl; use App\Http\Controllers\Controller; use App\Models\Server; use App\Models\User; +use App\Traits\DatatablesSortable; use Exception; use Illuminate\Contracts\Foundation\Application; use Illuminate\Contracts\View\Factory; @@ -14,9 +15,12 @@ use Illuminate\Http\JsonResponse; use Illuminate\Http\RedirectResponse; use Illuminate\Http\Request; use Illuminate\Http\Response; +use Illuminate\Support\Facades\Log; class ServerController extends Controller { + use DatatablesSortable; + /** * Display a listing of the resource. * @@ -27,38 +31,6 @@ class ServerController extends Controller return view('admin.servers.index'); } - /** - * Show the form for creating a new resource. - * - * @return Response - */ - public function create() - { - // - } - - /** - * Store a newly created resource in storage. - * - * @param Request $request - * @return Response - */ - public function store(Request $request) - { - // - } - - /** - * Display the specified resource. - * - * @param Server $server - * @return Response - */ - public function show(Server $server) - { - // - } - /** * Show the form for editing the specified resource. * @@ -196,6 +168,7 @@ class ServerController extends Controller public function dataTable(Request $request) { $query = Server::with(['user', 'product']); + if ($request->has('product')) { $query->where('product_id', '=', $request->input('product')); } @@ -204,6 +177,11 @@ class ServerController extends Controller } $query->select('servers.*'); + + if ($request->has('order')) { + $query = $this->sortByColumn($request->input('order'), $request->input('columns'), $query); + } + return datatables($query) ->addColumn('user', function (Server $server) { return '' . $server->user->name . ''; @@ -232,7 +210,7 @@ class ServerController extends Controller '; }) ->addColumn('status', function (Server $server) { - $labelColor = $server->isSuspended() ? 'text-danger' : 'text-success'; + $labelColor = $server->suspended ? 'text-danger' : 'text-success'; return ''; }) diff --git a/themes/default/views/admin/servers/table.blade.php b/themes/default/views/admin/servers/table.blade.php index b71671de..219ef47c 100644 --- a/themes/default/views/admin/servers/table.blade.php +++ b/themes/default/views/admin/servers/table.blade.php @@ -1,15 +1,15 @@ - - - - - - - - - - + + + + + + + + + + @@ -17,30 +17,54 @@
{{__('Name')}}{{__('User')}}{{__('Server id')}}{{__('Config')}}{{__('Suspended at')}}{{__('Created at')}}
{{ __('Name') }}{{ __('User') }}{{ __('Server id') }}{{ __('Config') }}{{ __('Suspended at') }}{{ __('Created at') }}