false, 'verify' => false, 'register' => false ]); // phpcs:disable Generic.Files.LineLength.TooLong Route::prefix('bo') ->name('bo.') ->middleware(['auth', 'is-admin']) ->group(function () { Route::namespace('Bo')->group(function () { Route::resource('ads', 'AdsController'); Route::resource('articles', 'ArticlesController'); Route::resource('balanced-menus', 'BalancedMenusController'); Route::resource('breeders', 'BreedersController'); Route::resource('consumption-times', 'ConsumptionTimesController'); Route::resource('faq-questions', 'FaqQuestionsController'); Route::resource('faq-themes', 'FaqThemesController'); Route::resource('home-slider-pictures', 'HomeSliderPicturesController'); Route::resource('meat-types', 'MeatTypesController'); Route::resource('moments', 'MomentsController'); Route::resource('news-slider-pictures', 'NewsSliderPicturesController'); Route::resource('ocb', 'ContentOCBController'); Route::resource('product-pictograms', 'ProductPictogramsController'); Route::resource('product-slider-pictures', 'ProductSliderPicturesController'); Route::resource('products', 'ProductsController')->except(['show']); Route::resource('ranges', 'RangesController'); Route::resource('recipes', 'RecipesController')->except(['show']); Route::resource('users', 'UsersController'); }); Route::get('/', [DashboardController::class, 'index'])->name('dashboard'); Route::get('/breeders/content/{type}', [BreedersController::class, 'index'])->name('breeders.content'); Route::get('/faq-themes/change-order/{id}/{action}', [FaqThemesController::class, 'changeOrder'])->name('faq-themes.change-order'); Route::get('/home-slider-pictures/change-order/{id}/{action}', [HomeSliderPicturesController::class, 'changeOrder'])->name('home-slider-pictures.change-order'); Route::get('/moments/change-star/{id}', [MomentsController::class, 'setStar'])->name('moments.change-star'); Route::get('/news-slider-pictures/change-order/{id}/{action}', [NewsSliderPicturesController::class, 'changeOrder'])->name('news-slider-pictures.change-order'); Route::get('/ocb/change-order/{id}/{type}/{action}', [ContentOCBController::class, 'changeOrder'])->name('ocb.change-order'); Route::get('/ocb/content/{type}', [ContentOCBController::class, 'index'])->name('ocb.content'); Route::get('/product-slider-pictures/change-order/{id}/{action}', [ProductSliderPicturesController::class, 'changeOrder'])->name('product-slider-pictures.change-order'); Route::get('/products/change-order/{id}/{action}', [BoProductsController::class, 'changeOrder'])->name('products.change-order'); Route::get('/products/change-star/{id}', [BoProductsController::class, 'changeStar'])->name('products.change-star'); Route::get('/ranges/change-order/{id}/{action}', [RangesController::class, 'changeOrder'])->name('ranges.change-order'); Route::get('/recipes/highlights/choice', [BoRecipesController::class, 'highlights'])->name('recipes.highlights'); Route::get('/reductions', [ReductionsController::class, 'index'])->name('reductions.index'); Route::get('/reductions/update', [ReductionsController::class, 'updateBR'])->name('reductions.update-br'); Route::get('/traceability', [BoTraceabilityController::class, 'index'])->name('traceability.index'); Route::get('/page/joinus', [JoinusController::class, 'index'])->name('page.joinus.index'); Route::post('/ajax/reductions/save', [ReductionsController::class, 'saveDatas']); Route::put('/recipes/highlights/store', [BoRecipesController::class, 'storeHighlights'])->name('recipes.store-highlights'); Route::put('/traceability/filters', [BoTraceabilityController::class, 'filter'])->name('traceability.filter'); Route::put('/page/joinus', [JoinusController::class, 'update'])->name('page.joinus.update'); }); Route::get('/', [HomeController::class, 'index'])->name('home'); Route::get('/de-smaak-om-te-delen', [OnePageController::class, 'index'])->name('home-nl'); // Route ajax pour Single Optin Route::post('/optin', [HomeController::class, 'addOptIn'])->name('add-single-optin'); Route::get('/activer/{hashcode}', [CustomerController::class, 'activate'])->name('activer'); Route::get('/connexion', [CustomerController::class, 'authenticateForm'])->name('form-connexion'); Route::get('/deconnexion', [CustomerController::class, 'logout'])->name('deconnexion')->middleware('auth:customer'); Route::get('/inscription', [CustomerController::class, 'registerForm'])->name('form-inscription'); Route::get('/reinitialiser-mdp/{token}', [CustomerController::class, 'viewChangePassword'])->name('form-change-mdp'); Route::post('/connexion', [CustomerController::class, 'authenticate'])->name('connexion'); Route::post('/inscription', [CustomerController::class, 'register'])->name('inscription'); Route::post('/reinitialiser-mdp', [CustomerController::class, 'passwordReset'])->name('reinit-mdp'); Route::post('/reinitialiser-mdp/{token}', [CustomerController::class, 'changePassword'])->name('change-mdp'); Route::get('/contactez-nous', [ContactController::class, 'contact'])->name('contact-us'); Route::get('/reclamation-produit', [ContactController::class, 'complain'])->name('product-request'); Route::post('/contactez-nous', [ContactController::class, 'contactSubmit'])->name('contact-us.submit'); Route::post('/reclamation-produit', [ContactController::class, 'complainSubmit'])->name('product-request.submit'); Route::get('/faq', [FaqController::class, 'index'])->name('faq'); Route::post('/faq/{question?}', [FaqController::class, 'updateSatisfactionStat'])->name('faq.updateSatisfactionStat'); Route::view('/mentions-legales', 'front.legals')->name('legal-notice'); Route::prefix('/produits') ->name('products.') ->group(function () { Route::get('/', [ProductsController::class, 'index'])->name('index'); Route::get('/departaimants', [ProductsController::class, 'departaimants'])->name('departaimants'); Route::get('/gamme/{gammeSlug}', [ProductsController::class, 'filter'])->name('range'); Route::get('/moment-conso/{slugMoment}', [ProductsController::class, 'filter'])->name('consumption-times'); Route::get('/type-viande/{slugTypeViande}', [ProductsController::class, 'filter'])->name('meat-type'); }); Route::prefix('/produit') ->name('product.') ->group(function () { Route::get('/from-menus', [ProductsController::class, 'indexMenusAjax'])->name('from-menus'); Route::get('/{product}', [ProductsController::class, 'show'])->name('show'); }); Route::prefix('/cote-cuisine')->name('kitchen-side.')->group(function () { Route::get('/', [RecipesController::class, 'kitchenside'])->name('index'); Route::prefix('/recettes')->name('recipes.')->group(function () { Route::get('/', [RecipesController::class, 'index'])->name('index'); Route::post('/rate/{recipe:slug}', [RecipesController::class, 'rate'])->name('rate'); Route::get('/{recipe:slug}', [RecipesController::class, 'show'])->name('show'); }); Route::prefix('/sante-et-nutrition')->name('health-nutrition.')->group(function () { Route::get('/menu-equilibre/{type}/{product}/menu', [RecipesController::class, 'showForBalancedMenu'])->name('balanced-menu.menu'); Route::view('/', 'front.health-nutrition.health-nutrition')->name('index'); Route::view('/dechiffrez-valeurs-nutritionnelles', 'front.health-nutrition.nutritional-values')->name('nutritional-values'); Route::view('/engagement-nutrition', 'front.health-nutrition.nutrition')->name('nutrition'); Route::view('/menu-equilibre', 'front.health-nutrition.balanced-menu')->name('balanced-menu'); Route::view('/plaisir-et-equilibre', 'front.health-nutrition.pleasure-balance')->name('pleasure-balance'); }); }); Route::prefix('/recettes') ->name('recipes.') ->group(function () { Route::get('/', [RecipesController::class, 'index'])->name('index'); Route::get('/proposer-une-recette', [ContactController::class, 'proposeRecipe'])->name('propose'); Route::post('/rate/{recipe:slug}', [RecipesController::class, 'rate'])->name('rate'); Route::get('/{recipe:slug}', [RecipesController::class, 'show'])->name('show'); }); Route::prefix('/la-marque') ->name('brand.') ->group(function () { Route::get('/', [BrandController::class, 'index'])->name('index'); Route::get('/saga-publicitaire', [BrandController::class, 'ads'])->name('pub'); Route::get('/tracabilite/search', [TraceabilityController::class, 'search'])->name('traceability-search'); Route::view('/nos-engagements-qualite', 'front.brand.quality')->name('our-quality-commitments'); Route::view('/notre-histoire', 'front.brand.history')->name('history'); Route::view('/tracabilite', 'front.brand.traceability')->name('traceability'); Route::view('/volailles-francaises', 'front.brand.poultry')->name('french-poultry'); }); Route::prefix('/oui-cest-bon') ->name('ocb.') ->group(function () { Route::get('/eleveurs/{breeder}', [OCBController::class, 'breeder'])->name('breeders'); Route::get('/temoignages-eleveurs', [OCBController::class, 'testimonials'])->name('testimonials'); Route::get('/volaille', [OCBController::class, 'poultry'])->name('poultry'); Route::view('/', 'front.ocb.index')->name('index'); Route::view('/oeuf', 'front.ocb.egg')->name('egg'); }); Route::get('/en-ce-moment/{moment}', [MomentsController::class, 'index'])->name('moment'); Route::get('/nous-rejoindre', function () { return view('front.joinus', ['joinus' => PageJoinus::firstOrFail()]); })->name('joinus'); Route::prefix('/le-club-des-gaulois') ->name('club.') ->group(function () { Route::get('/les-infos-du-club/{publishedArticle}', [ClubController::class, 'article'])->name('infos.child'); Route::post('/les-infos-du-club/repondre-sondage', [ClubController::class, 'answerSurvey'])->name('infos.answer-survey'); Route::prefix('/la-bourse-aux-echanges') ->name('bourse.') ->middleware('auth:customer') ->group(function () { Route::get('/', [BourseController::class, 'bourse'])->name('index'); Route::post('/save-state/{type}', [BourseController::class, 'bourseSaveState'])->name('saveState'); Route::post('/search/{type}', [BourseController::class, 'bourseSearch'])->name('search'); }); Route::get('/les-promos', [ClubController::class, 'reductions'])->name('reductions') ->middleware('auth:customer'); Route::prefix('/la-boutique') ->middleware('auth:customer') // Il faut être connecté pour acceder à la boutique ->name('boutique.') ->group(function () { Route::get('/', [BoutiqueController::class, 'index'])->name('index'); Route::get('/erreur', [BoutiqueController::class, 'boutique'])->name('error'); Route::post('/validation', [BoutiqueController::class, 'validateBuy'])->name('validate'); Route::prefix('commande') ->group(function () { Route::get('{order}/valide', [BoutiqueController::class, 'validatedBuy'])->name('validated'); Route::get('{order}/reglement', [BoutiqueController::class, 'payWithCb'])->name('payementCB'); }); Route::prefix('/reglement') ->name('reglement.') ->group(function () { Route::post('/{order}/confirmServ', [BoutiqueController::class, 'confirmCbFromMercanet']) ->name('payementConfirmCBServ')->withoutMiddleware([ Authenticate::class, AddQueuedCookiesToResponse::class, EncryptCookies::class, VerifyCsrfToken::class, StartSession::class, ShareErrorsFromSession::class, XssSanitizer::class, ]); Route::post('/{order}/confirm', [BoutiqueController::class, 'confirmCb']) ->name('payementConfirmCB')->withoutMiddleware([ Authenticate::class, AddQueuedCookiesToResponse::class, EncryptCookies::class, VerifyCsrfToken::class, StartSession::class, ShareErrorsFromSession::class, XssSanitizer::class, ]); }); }); Route::match(['get', 'post'], '/{category?}', [ClubController::class, 'index'])->name('index'); }); Route::prefix('/mon-compte') ->name('account.') ->middleware('auth:customer') ->group(function () { Route::get('/liste-de-courses', [ClubController::class, 'cart'])->name('cart'); Route::get('/mes-informations', [ClubController::class, 'infos'])->name('infos'); Route::get('/messages', [ClubController::class, 'messages'])->name('messages'); Route::get('/messages/report', [ContactController::class, 'reportCustomer'])->name('reportCustomer'); Route::get('/notifications', [ClubController::class, 'notifications'])->name('notifications'); Route::get('/recettes-favorites', [ClubController::class, 'favoritesRecipes'])->name('favs-recipes'); Route::post('/liste-de-courses/{product}/{status}', [CustomerController::class, 'setItemInCart'])->name('set-cart'); Route::post('/mes-informations', [ClubController::class, 'updateInfos'])->name('update-infos'); Route::post('/mes-informations/change-password', [CustomerController::class, 'changePasswordWhenAuthenticated'])->name('change-password'); Route::post('/messages/block/{status}', [ClubController::class, 'blockCustomer'])->name('blockCustomer'); Route::post('/messages/delete', [ClubController::class, 'deleteMessage'])->name('deleteMessage'); Route::post('/messages/send', [ClubController::class, 'sendMessage'])->name('sendMessage'); Route::post('/recettes-favorites/{recipe}/set-status/{status}', [CustomerController::class, 'setFavoriteRecipe'])->name('set-favs-recipes'); Route::redirect('/', '/mon-compte/mes-informations'); });