diff --git a/app/Http/Controllers/Public/LegalMentionsController.php b/app/Http/Controllers/Public/LegalMentionsController.php new file mode 100644 index 0000000000000000000000000000000000000000..4098697920ba33c78d7742a818a9902af53125af --- /dev/null +++ b/app/Http/Controllers/Public/LegalMentionsController.php @@ -0,0 +1,21 @@ +<?php + +namespace App\Http\Controllers\Public; + +use App\Http\Controllers\Controller; +use App\Models\LegalMention; + +class LegalMentionsController extends Controller +{ + public function __invoke() + { + $activeLegalMentionsText = LegalMention::where('active', true)->first(); + + if (! $activeLegalMentionsText) { + abort(404); + } + $activeLegalMentionsText = $activeLegalMentionsText->contentTransKey->getTranslation(); + + return view('public.legal-mentions', compact('activeLegalMentionsText')); + } +} diff --git a/lang/fr/generic.php b/lang/fr/generic.php index 4b27032c33a73fb3c47194d9a0b8197c2d786f5d..0c369358497101f7f0bfffd75983290fdc6b7610 100644 --- a/lang/fr/generic.php +++ b/lang/fr/generic.php @@ -4,4 +4,6 @@ 'custom_needs' => 'Un besoin particulier ?', 'custom_needs_desc' => 'Je suis ouverte à toute proposition. N’hésitez pas à me contacter !', 'completed_in' => 'Réalisé en', + 'legal_mentions' => 'Mentions légales', + 'terms' => 'Conditions générales de vente', ]; diff --git a/resources/views/components/public/footer.blade.php b/resources/views/components/public/footer.blade.php index 82765bb782807edccefa43c627b51a3c27a4e383..720ebc31fcceffa73e42d48bb0a02060f8f95286 100644 --- a/resources/views/components/public/footer.blade.php +++ b/resources/views/components/public/footer.blade.php @@ -36,11 +36,12 @@ <div class="self-stretch text-2xl font-bold">Informations légales</div> <ul class="flex flex-col gap-2"> <li> - <a href="{{ route('legal-mentions') }}" class="text-muted hover:text-primary">Mentions - légales</a> + <a href="{{ route('legal-mentions') }}" + class="text-muted hover:text-primary">{{ __('generic.legal_mentions') }}</a> </li> <li> - <a href="#" class="text-muted hover:text-primary">Conditions générales de vente</a> + <a href="{{ route('terms') }}" + class="text-muted hover:text-primary">{{ __('generic.terms') }}</a> </li> </ul> </div> diff --git a/resources/views/public/legal-mentions.blade.php b/resources/views/public/legal-mentions.blade.php new file mode 100644 index 0000000000000000000000000000000000000000..65d3c5cc42d7c0a94a6e7782337eb2535d96c795 --- /dev/null +++ b/resources/views/public/legal-mentions.blade.php @@ -0,0 +1,16 @@ +@extends('layouts.public', ['title' => __('generic.legal_mentions')]) + +@section('content') + <x-public.navbar class="container mx-auto px-4"/> + + <div class="container mx-auto px-4 py-24 flex flex-col gap-16"> + <x-public.generic-page-header title="{{ __('generic.legal_mentions') }}"/> + <div> + <x-markdown class="markdown"> + {{ $activeLegalMentionsText }} + </x-markdown> + </div> + </div> + + <x-public.footer/> +@endsection \ No newline at end of file diff --git a/resources/views/public/terms.blade.php b/resources/views/public/terms.blade.php index 65b7b6766651422bc96a416fbe14bebe5d836b23..c7d919ab651ef56b0fc097ccca6d36e41e0cdc9d 100644 --- a/resources/views/public/terms.blade.php +++ b/resources/views/public/terms.blade.php @@ -1,11 +1,11 @@ -@extends('layouts.public', ['title' => "Mentions légales"]) +@extends('layouts.public', ['title' => __('generic.terms')]) @section('content') <x-public.navbar class="container mx-auto px-4"/> <div class="container mx-auto px-4 py-24 flex flex-col gap-16"> - <x-public.generic-page-header title="Mentions légales"/> - <div class=""> + <x-public.generic-page-header title="{{ __('generic.terms') }}"/> + <div> <x-markdown class="markdown"> {{ $activeTermsText }} </x-markdown> diff --git a/routes/web.php b/routes/web.php index d92fdd428e1abb9ea761ad63045b12ddbd2a8c13..3f72ca537dad8768b14793c321871478b4695110 100644 --- a/routes/web.php +++ b/routes/web.php @@ -11,6 +11,7 @@ use App\Http\Controllers\Admin\SocialMediaLinksController; use App\Http\Controllers\Admin\TermsSectionController; use App\Http\Controllers\Public\IndexController; +use App\Http\Controllers\Public\LegalMentionsController; use App\Http\Controllers\Public\PortfolioController; use App\Http\Controllers\Public\PrestationController as PublicPrestationController; use App\Http\Controllers\Public\TermsController; @@ -30,7 +31,8 @@ Route::get('/portfolio/api', [PortfolioController::class, 'api'])->name('portfolio.api'); Route::get('/portfolio/{slug}', [PortfolioController::class, 'show'])->name('portfolio.show'); Route::get('/prestations/{slug}', [PublicPrestationController::class, 'index'])->name('prestations.show'); - Route::get('/mentions-legales', TermsController::class)->name('legal-mentions'); + Route::get('/mentions-legales', LegalMentionsController::class)->name('legal-mentions'); + Route::get('/conditions-generales-de-vente', TermsController::class)->name('terms'); Route::view('/maintenance', 'public.maintenance')->name('maintenance'); });