- suppression des 4 pages - ajout de 2 nouvelle pages - redirection des anciennes pages vers le nouvelles - Le nouvelle page ne sont plus statiques (basés sur engagement) - Ajout du Model NutritionPage - Ajout des Enums NutritionBlocType, NutritionType - Intégration complete avec responsive des deux nouvelles pages - modification des composants vu pour créer une instance de Vuejs par composant existant pour ajouter et enlever des dropdowns - Suppression des balanced menus - fix login center image - Modification de l'intégration de CKeditor - Ajout de UploadController avec methode pour image - html purifier fix config using ckeditor - ckeditor set css base style on front and back (for nutrition pages on front)
56 lines
1.7 KiB
PHP
56 lines
1.7 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Bo;
|
|
|
|
use App\Enums\InputType;
|
|
use App\Http\Controllers\Controller;
|
|
use App\Http\Requests\UpdateNutritionPageRequest;
|
|
use App\Models\NutritionPage;
|
|
use App\Traits\UpdateModelStatus;
|
|
|
|
class HealthNutritionController extends Controller
|
|
{
|
|
use UpdateModelStatus;
|
|
|
|
public function index()
|
|
{
|
|
$pages = NutritionPage::paginate();
|
|
return view('bo.health-nutrition.index', compact('pages'));
|
|
}
|
|
|
|
public function edit(NutritionPage $page)
|
|
{
|
|
return view('bo.health-nutrition.edit', ['page' => $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;
|
|
}
|
|
}
|