diff --git a/app/Http/Controllers/Admin/ShopProductController.php b/app/Http/Controllers/Admin/ShopProductController.php index 0ff534fd..d308c41c 100644 --- a/app/Http/Controllers/Admin/ShopProductController.php +++ b/app/Http/Controllers/Admin/ShopProductController.php @@ -3,6 +3,7 @@ namespace App\Http\Controllers\Admin; use App\Models\ShopProduct; +use App\Traits\DatatablesSortable; use Illuminate\Contracts\Foundation\Application; use Illuminate\Contracts\View\Factory; use Illuminate\Contracts\View\View; @@ -14,6 +15,8 @@ use Illuminate\Validation\Rule; class ShopProductController extends Controller { + use DatatablesSortable; + /** * Display a listing of the resource. * @@ -66,23 +69,12 @@ class ShopProductController extends Controller 'display' => 'required|string|max:60', ]); - $disabled = ! is_null($request->input('disabled')); + $disabled = !is_null($request->input('disabled')); ShopProduct::create(array_merge($request->all(), ['disabled' => $disabled])); return redirect()->route('admin.store.index')->with('success', __('Store item has been created!')); } - /** - * Display the specified resource. - * - * @param ShopProduct $shopProduct - * @return Response - */ - public function show(ShopProduct $shopProduct) - { - // - } - /** * Show the form for editing the specified resource. * @@ -116,7 +108,7 @@ class ShopProductController extends Controller 'display' => 'required|string|max:60', ]); - $disabled = ! is_null($request->input('disabled')); + $disabled = !is_null($request->input('disabled')); $shopProduct->update(array_merge($request->all(), ['disabled' => $disabled])); return redirect()->route('admin.store.index')->with('success', __('Store item has been updated!')); @@ -129,7 +121,7 @@ class ShopProductController extends Controller */ public function disable(Request $request, ShopProduct $shopProduct) { - $shopProduct->update(['disabled' => ! $shopProduct->disabled]); + $shopProduct->update(['disabled' => !$shopProduct->disabled]); return redirect()->route('admin.store.index')->with('success', __('Product has been updated!')); } @@ -147,19 +139,23 @@ class ShopProductController extends Controller return redirect()->back()->with('success', __('Store item has been removed!')); } - public function dataTable() + public function dataTable(Request $request) { $query = ShopProduct::query(); + if ($request->has('order')) { + $query = $this->sortByColumn($request->input('order'), $request->input('columns'), $query); + } + return datatables($query) ->addColumn('actions', function (ShopProduct $shopProduct) { return ' - + -
- '.csrf_field().' - '.method_field('DELETE').' - + + ' . csrf_field() . ' + ' . method_field('DELETE') . ' +
'; }) @@ -167,12 +163,12 @@ class ShopProductController extends Controller $checked = $shopProduct->disabled == false ? 'checked' : ''; return ' -
- '.csrf_field().' - '.method_field('PATCH').' + + ' . csrf_field() . ' + ' . method_field('PATCH') . '
- - + +
'; diff --git a/themes/default/views/admin/store/index.blade.php b/themes/default/views/admin/store/index.blade.php index 161b911e..66647030 100644 --- a/themes/default/views/admin/store/index.blade.php +++ b/themes/default/views/admin/store/index.blade.php @@ -102,10 +102,12 @@ data: 'price' }, { - data: 'display' + data: 'display', + sortable: false }, { - data: 'description' + data: 'description', + sortable: false }, { data: 'created_at' @@ -121,7 +123,4 @@ }); }); - - - @endsection