$page]); } public function update(UpdateNutritionPageRequest $request, NutritionPage $page) { $page->fill(array_replace_recursive( $this->clearImagesLabelsDropdownsArrays($page->toArray()), $request->validated() )); $page->saveOrFail(); return redirect()->route('bo.nutrition-page.edit', $page) ->with('success', 'Enregistré !'); } private function clearImagesLabelsDropdownsArrays(array $page): array { foreach ($page['content'] as &$block) { if (isset($block['content'])) { foreach ($block['content'] as &$input) { if ($input['inputType']['value'] === InputType::imageArray()->value) { $input['value'] = []; } if ($input['inputType']['value'] === InputType::labelArray()->value) { $input['value'] = []; } if ($input['inputType']['value'] === InputType::dropdownArray()->value) { $input['value'] = []; } } } } return $page; } }