diff --git a/app/Http/Controllers/Fo/StaticPageController.php b/app/Http/Controllers/Fo/StaticPageController.php index 039e513..51f6d8f 100644 --- a/app/Http/Controllers/Fo/StaticPageController.php +++ b/app/Http/Controllers/Fo/StaticPageController.php @@ -6,6 +6,7 @@ use App\Enums\StaticPageType; use App\Http\Controllers\Controller; use App\Http\Requests\Fo\ContactRequest; use App\Mail\SendContactForm; +use App\Models\Explorerpage; use App\Models\Homepage; use App\Models\News; use App\Models\Range; @@ -101,4 +102,23 @@ class StaticPageController extends Controller 'Bonjour, votre message a bien été transmis. nous vous en remercions. Cordialement, l’équipe Agis.' ); } + + /** + * Display the explorer and gastonome page. + * + * @return \Illuminate\Contracts\View\View + */ + public function explorer(): \Illuminate\Contracts\View\View + { + /** @var \App\Models\Explorerpage $explorerpageModel */ + $explorerpageModel = Explorerpage::query()->firstOrFail(); + + /** @var \App\Models\StaticPage $staticPageModel */ + $staticPageModel = StaticPage::query()->where('type', StaticPageType::explorer)->firstOrFail(); + + return view('fo.pages.explorer-and-gastronome', compact( + 'explorerpageModel', + 'staticPageModel', + )); + } } diff --git a/database/seeders/StaticPageSeeder.php b/database/seeders/StaticPageSeeder.php index ce563f8..3055edf 100644 --- a/database/seeders/StaticPageSeeder.php +++ b/database/seeders/StaticPageSeeder.php @@ -90,7 +90,7 @@ class StaticPageSeeder extends Seeder [ 'seo_title' => 'Seo title pour la page Explorateur & Gastronome', 'seo_description' => 'Seo description pour la page Explorateur & Gastronome', - 'title' => 'Explorateur & Gastronome', + 'title' => 'L\'Explorateur & Gastronome', 'slug' => Str::slug('Explorateur & Gastronome'), 'type' => StaticPageType::explorer, 'content' => '', diff --git a/resources/assets/images/explorerpage/carrot.png b/resources/assets/images/explorerpage/carrot.png new file mode 100644 index 0000000..99fd91e Binary files /dev/null and b/resources/assets/images/explorerpage/carrot.png differ diff --git a/resources/assets/images/explorerpage/green-dot.png b/resources/assets/images/explorerpage/green-dot.png new file mode 100644 index 0000000..3513530 Binary files /dev/null and b/resources/assets/images/explorerpage/green-dot.png differ diff --git a/resources/assets/images/explorerpage/leaf-1.png b/resources/assets/images/explorerpage/leaf-1.png new file mode 100644 index 0000000..2d050ad Binary files /dev/null and b/resources/assets/images/explorerpage/leaf-1.png differ diff --git a/resources/assets/images/explorerpage/leaf-2.png b/resources/assets/images/explorerpage/leaf-2.png new file mode 100644 index 0000000..428bde7 Binary files /dev/null and b/resources/assets/images/explorerpage/leaf-2.png differ diff --git a/resources/assets/images/explorerpage/leaf-3.png b/resources/assets/images/explorerpage/leaf-3.png new file mode 100644 index 0000000..8af2c6c Binary files /dev/null and b/resources/assets/images/explorerpage/leaf-3.png differ diff --git a/resources/assets/images/explorerpage/map-with-boat-and-line.svg b/resources/assets/images/explorerpage/map-with-boat-and-line.svg new file mode 100644 index 0000000..3909a11 --- /dev/null +++ b/resources/assets/images/explorerpage/map-with-boat-and-line.svg @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/assets/images/explorerpage/map-with-boat.png b/resources/assets/images/explorerpage/map-with-boat.png new file mode 100644 index 0000000..d44e512 Binary files /dev/null and b/resources/assets/images/explorerpage/map-with-boat.png differ diff --git a/resources/assets/images/explorerpage/onion.png b/resources/assets/images/explorerpage/onion.png new file mode 100644 index 0000000..2735126 Binary files /dev/null and b/resources/assets/images/explorerpage/onion.png differ diff --git a/resources/assets/images/explorerpage/samosa.png b/resources/assets/images/explorerpage/samosa.png new file mode 100644 index 0000000..0439bcd Binary files /dev/null and b/resources/assets/images/explorerpage/samosa.png differ diff --git a/resources/assets/images/explorerpage/tomato.png b/resources/assets/images/explorerpage/tomato.png new file mode 100644 index 0000000..fc29429 Binary files /dev/null and b/resources/assets/images/explorerpage/tomato.png differ diff --git a/resources/assets/images/global/bg-title.svg b/resources/assets/images/global/bg-title.svg new file mode 100644 index 0000000..8ec7486 --- /dev/null +++ b/resources/assets/images/global/bg-title.svg @@ -0,0 +1,13 @@ + + + + + + + + + \ No newline at end of file diff --git a/resources/sass/fo/fo.scss b/resources/sass/fo/fo.scss index 7b62dcc..476048f 100644 --- a/resources/sass/fo/fo.scss +++ b/resources/sass/fo/fo.scss @@ -18,3 +18,4 @@ // * PAGES. @import './pages/homepage'; @import './pages/contact'; +@import './pages/explorerpage'; diff --git a/resources/sass/fo/pages/_explorerpage.scss b/resources/sass/fo/pages/_explorerpage.scss new file mode 100644 index 0000000..f92a747 --- /dev/null +++ b/resources/sass/fo/pages/_explorerpage.scss @@ -0,0 +1,442 @@ +.explorerpage { + .title-card { + .f-sheldon { + font-size: 2.5rem; + } + + .f-readex-pro { + font-size: 1rem; + } + + .promise { + margin-top: -2px; + background-image: url('@/images/global/bg-title.svg'); + background-position: center; + background-repeat: no-repeat; + background-size: 100% 100%; + color: #FFD264; + } + + .divide { + height: 4px; + background-image: url('@/images/homepage/h-bar.svg'); + background-position: center bottom; + background-repeat: no-repeat; + background-size: 100% .2rem; + } + + .adjectives { + span { + width: 0.5rem; + height: 0.5rem; + border-radius: 100%; + background-color: #82C166; + } + + .leaf-picture { + width: 1.5rem; + height: 1.5rem; + } + } + } + + .passion { + p { + hyphens: auto; + text-align: justify; + } + + h2 { + width: 20rem; + + .title-part { + width: min-content; + } + + .title-small-part { + font-size: 1.2rem; + text-align: justify; + } + + .f-sheldon { + font-size: 5rem; + } + + .exclamation-mark { + margin-top: -0.6rem; + font-size: 7rem; + } + } + + .map-with-boat { + transform: translateX(5rem); + } + } + + .commitments { + h2 { + background-image: url('@/images/global/bg-title.svg'); + background-position: left bottom; + background-repeat: no-repeat; + background-size: 100%; + } + } + + .world { + .f-readex-pro { + font-size: 0.9rem; + } + + .explore-the-world { + width: 20rem; + height: 20rem; + + h2 { + font-size: 2rem; + letter-spacing: 0.1rem; + } + + .leaf-1 { + width: 0; + + &::before { + position: relative; + top: -7rem; + left: 1rem; + display: block; + width: 4rem; + height: 4rem; + background-image: url('@/images/explorerpage/leaf-3.png'); + background-position: center bottom; + background-repeat: no-repeat; + background-size: 100%; + content: ""; + } + } + + .green-dot-1 { + width: 0; + + &::before { + position: relative; + top: -8rem; + left: 8rem; + display: block; + width: 2.5rem; + height: 2.5rem; + background-image: url('@/images/explorerpage/green-dot.png'); + background-position: center bottom; + background-repeat: no-repeat; + background-size: 100%; + content: ""; + } + } + + .carrot { + width: 0; + + &::before { + position: relative; + top: -8rem; + left: 12rem; + display: block; + width: 4rem; + height: 4rem; + background-image: url('@/images/explorerpage/carrot.png'); + background-position: center bottom; + background-repeat: no-repeat; + background-size: 100%; + content: ""; + rotate: -20deg; + } + } + + .leaf-2 { + width: 0; + + &::before { + position: relative; + top: -1rem; + left: -1rem; + display: block; + width: 2rem; + height: 2rem; + background-image: url('@/images/explorerpage/leaf-3.png'); + background-position: center bottom; + background-repeat: no-repeat; + background-size: 100%; + content: ""; + } + } + + .tomato { + width: 0; + + &::before { + position: relative; + top: -3rem; + left: 16rem; + display: block; + width: 3rem; + height: 3rem; + background-image: url('@/images/explorerpage/tomato.png'); + background-position: center bottom; + background-repeat: no-repeat; + background-size: 100%; + content: ""; + } + } + + .green-dot-2 { + width: 0; + + &::before { + position: relative; + top: 5rem; + display: block; + width: 2.5rem; + height: 2.5rem; + background-image: url('@/images/explorerpage/green-dot.png'); + background-position: center bottom; + background-repeat: no-repeat; + background-size: 100%; + content: ""; + } + } + + .samosa { + width: 0; + + &::before { + position: relative; + top: 7rem; + left: 8rem; + display: block; + width: 3rem; + height: 3rem; + background-image: url('@/images/explorerpage/samosa.png'); + background-position: center bottom; + background-repeat: no-repeat; + background-size: 100%; + content: ""; + } + } + + .onion { + width: 0; + + &::before { + position: relative; + top: 5rem; + left: 14rem; + display: block; + width: 4rem; + height: 4rem; + background-image: url('@/images/explorerpage/onion.png'); + background-position: center bottom; + background-repeat: no-repeat; + background-size: 100%; + content: ""; + } + } + } + } +} + +// MMMMMMMM MMMMMMMMDDDDDDDDDDDDD +// M:::::::M M:::::::MD::::::::::::DDD +// M::::::::M M::::::::MD:::::::::::::::DD +// M:::::::::M M:::::::::MDDD:::::DDDDD:::::D +// M::::::::::M M::::::::::M D:::::D D:::::D +// M:::::::::::M M:::::::::::M D:::::D D:::::D +// M:::::::M::::M M::::M:::::::M D:::::D D:::::D +// M::::::M M::::M M::::M M::::::M D:::::D D:::::D +// M::::::M M::::M::::M M::::::M D:::::D D:::::D +// M::::::M M:::::::M M::::::M D:::::D D:::::D +// M::::::M M:::::M M::::::M D:::::D D:::::D +// M::::::M MMMMM M::::::M D:::::D D:::::D +// M::::::M M::::::MDDD:::::DDDDD:::::D +// M::::::M M::::::MD:::::::::::::::DD +// M::::::M M::::::MD::::::::::::DDD +// MMMMMMMM MMMMMMMMDDDDDDDDDDDDD +@include media-breakpoint-up(md) { + .explorerpage { + .title-card { + .adjectives { + // .f-sheldon { + // font-size: 5rem !important; + // } + + // .leaf-picture { + // width: 3rem; + // height: 3rem; + // } + } + } + + .passion { + .second-paragraph { + font-size: 2rem; + } + } + + .commitments { + h2 { + width: fit-content !important; + background-size: 100% 100% !important; + } + } + } +} + +@include media-breakpoint-up(lg) { + .explorerpage { + .world { + .explore-the-world { + height: 50rem; + + h2 { + top: -7rem; + font-size: 4rem; + letter-spacing: 0.1rem; + } + + .leaf-1 { + width: 0; + + &::before { + top: 0; + left: 2rem; + width: 4rem; + height: 4rem; + } + } + + .green-dot-1 { + &::before { + top: 0; + left: 0; + width: 2.5rem; + height: 2.5rem; + } + } + + .carrot { + &::before { + top: 0; + left: 0; + width: 8rem; + height: 8rem; + rotate: 0deg; + } + } + + .tomato { + &::before { + top: 0; + left: 0; + width: 6rem; + height: 6rem; + } + } + + .green-dot-2 { + &::before { + top: 0; + width: 2.5rem; + height: 2.5rem; + } + } + + .samosa { + &::before { + top: 0; + left: 0; + width: 7rem; + height: 7rem; + } + } + + .onion { + &::before { + top: 3rem; + left: 0; + width: 6rem; + height: 6rem; + } + } + + .picture3 { + top: -6rem; + } + } + } + } +} + +// XXXXXXX XXXXXXXLLLLLLLLLLL +// X:::::X X:::::XL:::::::::L +// X:::::X X:::::XL:::::::::L +// X::::::X X::::::XLL:::::::LL +// XXX:::::X X:::::XXX L:::::L +// X:::::X X:::::X L:::::L +// X:::::X:::::X L:::::L +// X:::::::::X L:::::L +// X:::::::::X L:::::L +// X:::::X:::::X L:::::L +// X:::::X X:::::X L:::::L +// XXX:::::X X:::::XXX L:::::L LLLLLL +// X::::::X X::::::XLL:::::::LLLLLLLLL:::::L +// X:::::X X:::::XL::::::::::::::::::::::L +// X:::::X X:::::XL::::::::::::::::::::::L +// XXXXXXX XXXXXXXLLLLLLLLLLLLLLLLLLLLLLLL +@include media-breakpoint-up(xl) { + .explorerpage { + .title-card { + img { + transform: translateX(-3px); + } + + .f-readex-pro { + font-size: 1.2rem; + } + + .adjectives { + .f-readex-pro { + font-size: 2rem; + } + + .leaf-picture { + width: 3rem; + height: 3rem; + } + } + + .f-sheldon { + font-size: 5rem !important; + } + + .f-rufina { + font-size: 2.4rem; + } + } + + .passion { + h2 { + width: 60rem; + + .title-small-part { + font-size: 2.4rem; + } + + .f-sheldon { + font-size: 10rem; + } + + .exclamation-mark { + font-size: 14rem; + } + } + } + } +} diff --git a/resources/views/fo/layouts/footer.blade.php b/resources/views/fo/layouts/footer.blade.php index 798b3b6..9323e05 100644 --- a/resources/views/fo/layouts/footer.blade.php +++ b/resources/views/fo/layouts/footer.blade.php @@ -48,8 +48,8 @@ diff --git a/resources/views/fo/layouts/nav-list.blade.php b/resources/views/fo/layouts/nav-list.blade.php index 8c5b02d..6ab9b14 100644 --- a/resources/views/fo/layouts/nav-list.blade.php +++ b/resources/views/fo/layouts/nav-list.blade.php @@ -4,8 +4,8 @@ href="{{ route('fo.homepage') }}" title="{{ __('Revenir à l\'accueil') }}"> {{ __('Accueil') }} - + {{ __('L\'explorateur & Gastronome') }} seo_title ?? __('Accueil')) +@section('description', $staticPageModel->seo_description ?? __('Description site')) +@section('breadcrumb', + request()->route()->getName()) + +@section('content') +
+ +
+
+ +

+ {{ $staticPageModel->title }} +

+ + +

{{ __('Nous sommes amoureux de la bonne cuisine et nous connaissons l\'importance de manger sain et savoureux.') }}

+ +

{{ __('Nos promesses') }}

+ +
+

{{ __('Pour nous un plat cuisiné est synonyme de') }}

+

+ {{ __('qualité') }} +   + {{ __('bienveillance') }} +

+
+ {{ __('Image décorative représentant une feuille foncée')}} +

+ {{ __('créativité') }} +   + {{ __('plaisir') }} +

+ {{ __('Image décorative représentant une feuille claire')}} +
+
+ +

{{ __('C\'est pourquoi, depuis 1987, nous oeuvrons pour vous simplifier la vie en vous proposant des plats cuisinés "comme à la maison".') }}

+
+
+ +
+
+ {{-- MOBILE PART --}} +
+
+
+
+
+
+
+
+
+

+ {{ __('Explorez') }}
+ {{__('le monde') }}
+ {{__('depuis votre') }}
+ {{__('assiette') }} +

+
+ {{-- DESKTOP PART --}} +
+
+
+
+ {{ $explorerpageModel->picture_1_alt }} +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+

+ {{ __('Explorez') }}
+ {{__('le monde') }}
+ {{__('depuis votre') }}
+ {{__('assiette') }} +

+
+
+
+
+
+
+ {{ $explorerpageModel->picture_2_alt }} +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ $explorerpageModel->picture_3_alt }} +
+
+
+
+
+

+ {{ __('Parce-que vous êtes plus que jamais curieux et à la recherche de nouvelles saveurs, nous vous proposons de voyager depuis votre assiette.') }} +
+ {{ __('Nous préparons, vous dégustez.') }} +

+
+ +
+
+

+ + + {{ __('Toutes nos recettes') }} + + + {{ __('sont préparées avec') }} + + {{ __('passion') }} + + ! +

+
+
+

{{ __('Et avec le choix de labels de confiance bien sûr ! En coulisses, nos chefs cuisiniers oeuvrent minutieusement sur la sélection des meilleurs ingrédients, la création de recettes plus savoureuses et la cuisson optimale, pour qu\'il ne vous reste plus qu\'à apprécier.') }}

+

+ {{ __('Et comme nous sommes curieux, ouverts sur le monde, nous avons à coeur de faire voyager vos papilles ;') }} + {{ __('nous explorons et nous innovons avec toujours plus de créativité. En plus de notre offre traditionnelle, nous proposons une palette généreuse de plats exotiques inspirés du monde entier qui ont fait notre réputation : paella, bo-bun, rouleaux de printemps.') }} +
+ {{ __('A l\'apéritif du vendredi soir ou pour un dîner en semaine, en solo ou entre amis, le dépaysement est garanti !')}} +

+
+
+ {{ __('Carte représentant le monde avec un bateau naviguant dessus')}} +
+
+ +
+
+
+
+ @foreach ($explorerpageModel->commitments as $commitment) +
+ {{ $commitment->picture_alt }} +
+ @endforeach +
+
+ {{-- TODO: SVG en background --}} +
+

{{ __('Nos engagements') }}

+

{{ __('Nous savons que vous êtes plus que jamais à la recherche du goût sans compromis sur la qualité. Cette quête de l\'excellence nous pousse chaque jour vers une exigence que vous retrouvez dans vos assiettes.') }}

+
+
+
+
+@endsection diff --git a/routes/web-fo.php b/routes/web-fo.php index b7a5e23..23c9cba 100644 --- a/routes/web-fo.php +++ b/routes/web-fo.php @@ -7,6 +7,7 @@ Route::middleware(['throttle:credentials']) ->name('fo.') ->group(function () { Route::get('/', [StaticPageController::class, 'homepage'])->name('homepage'); + Route::get('/explorateur-et-gastronome', [StaticPageController::class, 'explorer'])->name('explorer'); Route::view('/bs-demo', 'fo.pages.bs-demo')->name('bs-demo'); Route::get('/contact', [StaticPageController::class, 'contact'])->name('contact.show');