middleware([ "auth" ]); $this->middleware([ "check.auth:feedback.list" ])->only("index"); $this->middleware([ "check.auth:feedback.show" ])->only("show"); $this->middleware([ "check.auth:feedback.create" ])->only("create", "store"); $this->middleware([ "check.auth:feedback.edit" ])->only("edit", "update"); $this->middleware([ "check.auth:feedback.delete" ])->only("delete"); } /** * Display a listing of the resource. * * @param Request $request * @return Response */ public function index(Request $request) { $feedback = Feedbacks::query()->paginate($request->input("limit", 20)); return Response::detect("feedbacks.index", [ "feedback" => $feedback ]); } /** * Show the form for creating a new resource. * * @return Response */ public function create() { return Response::detect("feedbacks.create"); } /** * Store a newly created resource in storage. * * @param Request $request * @return Response */ public function store(Request $request) { $requestBody = $request->validate([ "message" => "required", "suggestion_form" => "required|max:255" ]); $feedbacks = new Feedbacks($requestBody); $feedbacks->save(); return Response::detect("root.index"); } /** * Display the specified resource. * * @param int $id * @return Response */ public function show($id) { return Response::detect("feedback.show", [ "feedback" => $id]); } /** * Show the form for editing the specified resource. * * @param int $id * @return Response */ public function edit($id) { $feedback = Feedbacks::find($id); return Response::detect("feedbacks.edit", [ "feedback" => $feedback ]); } /** * Update the specified resource in storage. * * @param Request $request * @param int $id * @return void */ public function update(Request $request, $id) { $data = $request->validate([ "time" => "required" ]); $feedback = Feedbacks::find($id); $feedback->update($data); $feedback->save(); return Response::detect("feedbacks.edit", [ "feedback" => $feedback ]); } /** * Remove the specified resource from storage. * * @param int $id * @return Response */ public function destroy($id) { $feedback = Feedbacks::find($id); $feedback->delete(); return Response::detect("feedbacks.destroy"); } }