Blame view
app/Http/Controllers/FaqController.php
1.77 KB
77ece5578 task-132687 FAQ p... |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 |
<?php namespace App\Http\Controllers; use App\Enums\FaqTarget; use App\Http\Requests\FaqActionRequest; use App\Models\Faq; use Illuminate\Http\RedirectResponse; class FaqController extends Controller { public function get(string $userType = null) { return Faq::query() ->when($userType, function ($query, $userType) { $query->where('target', $userType); }) ->where('active', true) ->get(); } public function showListForAdmin(){ return view( 'admin.faq.list', [ 'questions' => $this->get(), ] ); } public function showListForUser() { return view( 'employers.faq', [ 'questionsEmployer' => $this->get(FaqTarget::EMPLOYER->value), 'questionsEmployee' => $this->get(FaqTarget::EMPLOYEE->value) ] ); } public function create() { return view('admin.faq.create'); } public function store(FaqActionRequest $request) { Faq::query()->create($request->toArray()); return response()->redirectTo(route('admin.faq.list')); } public function edit(int $id) { return view('admin.faq.update', ['question' => Faq::find($id)]); } public function update(FaqActionRequest $request, int $id) { Faq::query() ->where('id', $id) ->update($request->all(['question', 'target', 'answer'])); return response()->redirectTo(route('admin.faq.list')); } public function destroy(int $id): RedirectResponse { Faq::query() ->where('id', $id) ->delete(); return response()->redirectTo(route('admin.faq.list')); } } |