authorizeResource(Project::class, 'project'); } public function index() { $projects = Project::all(); return view('project.index', compact('projects')); } public function create() { return view('project.create'); } public function store(StoreProject $request) { $project = new Project($request->validated()); $project->saveOrFail(); return redirect()->route('project.index'); } public function edit(Project $project) { return view('project.edit', [ 'project' => $project ]); } public function update(UpdateProject $request, Project $project) { $project->fill($request->validated()); $project->saveOrFail(); return redirect()->back()->with('success', 'Modifications enregistrées !'); } public function destroy(Project $project) { if (Ticket::where('project_id', $project->id)->count()) { return redirect()->back() ->withErrors("Ce projet ne peut être supprimer, des tickets lui sont encore liés."); } $project->delete(); return redirect()->route('project.index'); } }