Edit File: ReasonController.php
<?php namespace App\Http\Controllers\Admin; use App\Models\Reason; use App\Traits\Report; use Illuminate\Http\Request; use App\Http\Controllers\Controller; use App\Http\Requests\Admin\Reason\Create; class ReasonController extends Controller { /*************************** get all **************************/ public function index() { $type = request()->segment(3); $rows = Reason::where('type' , $type)->latest()->get(); return view('admin.reasons.index', compact('rows' , 'type')); } /*************************** store **************************/ public function create($type) { return view('admin.reasons.create' , compact('type')); } public function show($id) { $row = Reason::findOrFail($id); return view('admin.reasons.show' , compact('row')); } /*************************** store **************************/ public function store(Create $request) { Reason::create($request->validated() + ([ 'reason' => ['ar' => $request->reason_ar , 'en' => $request->reason_en] ])); Report::addToLog('اضافه سبب') ; return response()->json(['url' => route('admin.reasons.'.$request->type)]); } /*************************** edit page **************************/ public function edit($id) { $row = Reason::findOrFail($id); return view('admin.reasons.edit' , ['row' => $row]); } /*************************** update **************************/ public function update(Create $request, $id) { $row = Reason::findOrFail($id) ; $row->update(([ 'reason' => ['ar' => $request->reason_ar , 'en' => $request->reason_en] ])); Report::addToLog(' تعديل سبب') ; return response()->json(['url' => route('admin.reasons.'.$row->type)]); } /*************************** delete **************************/ public function destroy($id) { $row = Reason::findOrFail($id)->delete(); Report::addToLog(' حذف تعديل') ; return response()->json(['id' =>$id]); } public function destroyAll(Request $request) { $requestIds = json_decode($request->data); foreach ($requestIds as $id) { $ids[] = $id->id; } if (Reason::WhereIn('id',$ids)->delete()) { Report::addToLog(' حذف العديد من الاسباب') ; return response()->json('success'); } else { return response()->json('failed'); } } }
Back to File Manager