authorizeResource(CommitmentPage::class); } /** * Show the form for editing the specified resource. * * @param \App\Models\CommitmentPage $commitmentPage * @return \Illuminate\Contracts\View\View */ public function edit(CommitmentPage $commitmentPage): \Illuminate\Contracts\View\View { $pictoModels = Picto::all(); return view('bo.pages.commitment_pages.edit', [ 'commitmentPageModel' => $commitmentPage, 'pictoModels' => $pictoModels ]); } /** * Update the specified resource in storage. * * @param \App\Http\Requests\Bo\CommitmentPages\UpdateCommitmentPageRequest $request * @param \App\Models\CommitmentPage $commitmentPage * @return \Illuminate\Http\RedirectResponse */ public function update( UpdateCommitmentPageRequest $request, CommitmentPage $commitmentPage ): \Illuminate\Http\RedirectResponse { return DB::transaction(function () use ($request, $commitmentPage) { $commitmentPage->fill($request->safe()->except(['pictos'])); $commitmentPage->pictos()->sync(collect($request->validated('pictos'))->pluck('id')); if ($commitmentPage->saveOrFail()) { return redirect()->route('bo.commitmentpages.edit', $commitmentPage) ->with('success', __('crud.messages.has_been_updated', [ 'model' => Str::ucfirst(trans_choice('models.classes.commitment_page', 1)) ])); } return redirect()->route('bo.commitmentpages.edit', $commitmentPage) ->with('error', __('crud.messages.cannot_be_updated', [ 'model' => Str::ucfirst(trans_choice('models.classes.commitment_page', 1)) ])); }); } }