@extends('layouts.app') @section('title', 'Que voulez-vous réserver ?') @section('content') {{-- reCAPTCHA v3 (programmatique) --}} {{-- ========================================================= Détermination du formulaire actif Priorités : 1. old('type') après validation (préserve erreurs) 2. query ?type=... ou ?preselect=... 3. défaut = 'diner' (Table d’hôte gastronomique) Types valides : diner | cocktail | location | wecandoo ========================================================= --}} @php $validTypes = ['diner', 'cocktail', 'location', 'wecandoo']; $oldType = old('type'); $queryType = request()->query('type') ?? request()->query('preselect'); $activeType = 'diner'; // défaut = diner if ($oldType && in_array($oldType, $validTypes, true)) { $activeType = $oldType; } elseif ($queryType && in_array($queryType, $validTypes, true)) { $activeType = $queryType; } // Helpers d'état bouton + collapse $isActive = fn(string $t) => $activeType === $t; $btnExpanded = fn(string $t) => $isActive($t) ? 'true' : 'false'; $btnCollapsedClass = fn(string $t) => $isActive($t) ? '' : ' collapsed'; $collapseShowClass = fn(string $t) => $isActive($t) ? ' show' : ''; $tableCardImages = config('offers.table_cards'); $servicesCards = config('offers.services_cards'); @endphp
{{-- ================= Hero Intro ================= --}}
fraise décorative

Que voulez-vous réserver ?

Justine Piluso - Réservation
{{-- Intro texte --}}

Choisissez votre formule : table d’hôte privée, cocktail sur-mesure, location du lieu… on construit ensemble l’expérience qui vous ressemble. Quelques infos suffisent, on vous répond vite !

{{-- ================= Cartes options (triggers collapse) ================= --}}
{{-- DINER TABLE D’HÔTE --}}
{{-- COCKTAIL --}}
{{-- LOCATION --}}
{{-- COURS DE CUISINE (Wecandoo) --}}
{{-- ================= Accordéon des formulaires ================= --}}
{{-- ====== DINER ====== --}}
Réservation de la table d’hôte gastronomique
{{-- erreurs ciblées --}} @if ($errors->any() && old('type') === 'diner')
    @foreach ($errors->all() as $error)
  • {{ $error }}
  • @endforeach
@endif
@csrf {{-- Nom / Prénom --}}
{{-- Entreprise --}}
{{-- Email --}}
{{-- Téléphone --}}
{{-- Date --}}
{{-- Heure --}}
{{-- Convives --}}
{{-- Date flexible --}}
{{-- Message --}}
{{-- Submit --}}
{{-- ====== COCKTAIL ====== --}}
Réservation du cocktail dînatoire
@if ($errors->any() && old('type') === 'cocktail') @endif
any() && old('type') === 'cocktail') aria-describedby="errors-cocktail" @endif> @csrf {{-- Nom / Prénom --}}
{{-- Entreprise --}}
{{-- Email --}}
{{-- Téléphone --}}
{{-- Date --}}
{{-- Heure --}}
{{-- Date flexible --}}
{{-- Convives (15-60) --}}
{{-- Message --}}
{{-- Submit --}}
{{-- ========== LOCATION ========== --}}
Location du lieu
@if ($errors->any() && old('type') === 'location')
    @foreach ($errors->all() as $error)
  • {{ $error }}
  • @endforeach
@endif
@csrf {{-- Nom / Prénom --}}
{{-- Entreprise --}}
{{-- Email --}}
{{-- Téléphone --}}
Vous pouvez proposer plusieurs dates {{-- Dates multiples --}}
{{-- Date flexible --}}
{{-- Horaires --}}
{{-- Nombre de personnes (optionnel) --}}
{{-- Message --}}
{{-- Submit --}}
{{-- ====== COURS DE CUISINE (Wecandoo) ====== --}}
Réservation d’un cours de cuisine avec Justine (Wecandoo)
{{-- Iframe desktop --}}
{{-- Iframe mobile --}}
{{-- /#reservation-collapse-group --}} {{-- Flash succès global --}} @if(session('success'))
{{ session('success') }}
@endif
@include('layouts.what')
{{-- ================= JS comportement : scroll + pré-ouverture ================= --}} {{-- ================= reCAPTCHA v3 – binding par formulaire ================= --}} @endsection