Edit File: CountryController.php
<?php namespace App\Http\Controllers\Admin; use File; use App\Traits\ReportTrait; use App\Http\Controllers\Controller; use App\Http\Requests\Admin\countries\StoreCountryRequest; use App\Http\Requests\Admin\countries\UpdateCountryRequest; use App\Services\CountryService; use Illuminate\Http\Request; class CountryController extends Controller { public function __construct(private CountryService $countryService) {} public function index() { if (request()->ajax()) { $countries = $this->countryService->all(paginateNum: 30); $html = view('admin.countries.table', compact('countries'))->render(); return response()->json(['html' => $html]); } return view('admin.countries.index'); } public function create() { return view('admin.countries.create', ['flags' => $this->countryService->getFlags()]); } public function store(StoreCountryRequest $request) { $this->countryService->create($request->validated()); ReportTrait::addToLog(' اضافه بلد'); return response()->json(['url' => route('admin.countries.index')]); } public function edit($id) { $country = $this->countryService->find($id); return view('admin.countries.edit', ['country' => $country, 'flags' => $this->countryService->getFlags()]); } public function update(UpdateCountryRequest $request, $id) { $this->countryService->edit(request: $request->validated(), id: $id); ReportTrait::addToLog(' تعديل بلد'); return response()->json(['url' => route('admin.countries.index')]); } public function show($id) { $country = $this->countryService->find($id); return view('admin.countries.show', ['country' => $country]); } public function destroy($id) { $result = $this->countryService->delete($id); ReportTrait::addToLog(' حذف بلد'); return response()->json(['key' => $result['key'], 'msg' => $result['msg']]); } public function destroyAll(Request $request) { $result = $this->countryService->deleteAll($request); ReportTrait::addToLog(' حذف العديد من البلاد'); return response()->json(['key' => $result['key'], 'msg' => $result['msg']]); } }
Back to File Manager