{# --- COLONNE GAUCHE : ÉDITION TEXTE --- #}
Accroche de la page
{# Titre Hero #}
{{ form_label(form.heroTitre, null, {'label_attr': {'class': 'small fw-bold text-dark'}}) }} {{ form_widget(form.heroTitre, { 'attr': { 'class': form.heroTitre.vars.errors|length > 0 ? 'form-control form-control border-2 is-invalid' : 'form-control form-control border-2', 'placeholder': '' } }) }}
{{ form_errors(form.heroTitre) }}
{# Sous-Titre Hero #}
{{ form_label(form.heroSousTitre, null, {'label_attr': {'class': 'small fw-bold text-dark'}}) }} {{ form_widget(form.heroSousTitre, { 'attr': { 'class': form.heroSousTitre.vars.errors|length > 0 ? 'form-control is-invalid' : 'form-control', 'placeholder': 'Slogan ou phrase courte' } }) }}
{{ form_errors(form.heroSousTitre) }}
{# Description Hero #}
{{ form_label(form.heroDescription, null, {'label_attr': {'class': 'small fw-bold text-dark'}}) }} {{ form_widget(form.heroDescription, { 'attr': { 'class': form.heroDescription.vars.errors|length > 0 ? 'form-control is-invalid' : 'form-control', 'rows': 4, 'placeholder': '' } }) }}
{{ form_errors(form.heroDescription) }}
{# --- COLONNE DROITE : VISUEL & COULEUR --- #}
Identité Visuelle
{# Zone d'aperçu dynamique #}
{# Overlay de couleur dynamique #}
Aperçu Hero
{# Upload de l'image #}
{{ form_label(form.heroImageFile, 'Remplacer l\'image de fond', {'label_attr': {'class': 'small fw-bold text-primary mb-2 d-block'}}) }}
{{ form_widget(form.heroImageFile, { 'attr': { 'class': 'form-control', 'onchange': 'previewImage(this, "preview-hero")' } }) }}
Format recommandé : 1920x1080px (Paysage).
{# Sélecteur de couleur #}
Filtre d'opacité sur l'image
{{ form_widget(form.heroCouleurArrierePlan, { 'attr': { 'class': 'form-control form-control-color w-100 border-0', 'oninput': 'updateOverlay(this.value)' } }) }}