{{-- Création chiffrée au cas par cas : le client décrit son projet, le créateur répond. --}}
@csrf

{{ __('surmesure.quote_title') }}

{{ __('surmesure.quote_intro') }}

@php // Les libellés viennent du créateur : ils sont traduits un par un, // sans toucher aux montants qui les accompagnent. $translator = app(\App\Services\TranslationService::class); $locale = app()->getLocale(); @endphp @foreach($creation->custom_options_json ?? [] as $index => $option) @php $type = $option['type'] ?? 'text'; $required = (bool) ($option['required'] ?? false); $name = 'options[' . $index . ']'; $id = 'sm-quote-opt-' . $index; @endphp
@switch($type) @case('select') @break @case('textarea') @break @case('file') @break @case('color') {{-- Même précaution que dans le configurateur : une couleur non choisie ne doit pas être transmise comme si elle l'était. --}} @php $defaultColor = '#000000'; @endphp
@unless($required) {{ __('surmesure.color_none') }} @endunless
@break @default @endswitch @if(!empty($option['help'])) {{ $translator->translate($option['help'], $locale) }} @endif
@endforeach
{{ __('surmesure.starting_price') }} {{ display_price($creation->final_price, $creation->currency) }}

{{ __('surmesure.quote_price_note') }}

@auth @else {{ __('surmesure.quote_login_required') }} @endauth