✨ feat(reservation/flow): Améliore le flux de réservation et ajoute des options.
Cette commit améliore le flux de réservation, ajoute une estimation des
frais de livraison et gère les options de produit et les paiements.
```
✨ feat(ReserverController): Gère les options de produits au panier et en session.
Ajoute la gestion des options de produits lors de l'ajout au panier et dans la session de réservation. Inclut des corrections pour les options orphelines.
```
✨ feat(Product.php): Ajoute la liaison ManyToMany avec l'entité Options
✨ feat(Devis.php): Ajoute la propriété isNotAddCaution pour masquer la caution
♻️ refactor(.env): Met à jour les URLs de SIGN, STRIPE et CONTRAT
✨ feat(workflow.twig): Adapte le workflow et supprime l'étape de caution
✨ feat(NewDevisType.php): Ajoute un champ pour gérer
✨ feat(ReserverController): Génère un devis PDF provisoire basé sur la session.
🎨 style(flow_confirmed.twig): Ajoute un lien pour télécharger le devis provisoire.
```
✨ feat(ReserverController): Ajoute route de confirmation de réservation.
✨ feat(FeedController): Crée un contrôleur pour les flux RSS.
✨ feat(templates): Ajoute un template pour les flux RSS.
✨ feat(templates): Ajoute des liens RSS dans la base du template.
```
✨ feat(revervation): [Ajoute la création de session de réservation et le flow]
🐛 fix(PurgeCommandTest): [Utilise addCommand au lieu de add pour les commandes]
📝 chore(deps): [Mise à jour des dépendances Composer et corrections]
🐛 fix(KeycloakAuthenticator): [Corrige le type nullable de l'exception start]
✨ feat(Customer): [Ajoute les sessions de commandes aux entités Customer]
♻️ refactor(AppLogger): [Refactorise l'AppLogger pour obtenir l'UserAgent]
✨ feat(FlowReserve): [Ajoute une action de validation du panier]
```
✨ feat(reservation): Ajoute le panier et sélection de date globale
Ajoute un composant de panier accessible depuis toutes les pages de réservation et un sélecteur de date global.
```
✨ feat(reservation): Ajoute le panier et sélection de date globale
Ajoute un composant de panier accessible depuis toutes les pages de réservation et un sélecteur de date global.
```
✨ feat(workflow.twig): Ajoute animations AOS pour un effet visuel amélioré.
✨ feat(app.js): Initialise la librairie AOS pour les animations.
➕ chore(package.json): Ajoute AOS comme dépendance.
✨ feat(reserve.js): Initialise AOS pour les animations.
✨ feat(formules.twig): Ajoute animations AOS pour améliorer l'UX.
✨ feat(catalogue.twig): Ajoute animations AOS pour une meilleure UX.
✨ feat(dashboard/base.twig): Améliore la mise en page du dashboard.
✨ feat(base.twig): Ajoute macros pour les liens de navigation.
✨ feat(home.twig): Ajoute animations AOS et macros pour la page d'accueil.
```
✨ feat(Product.php): Ajoute les entités ProductPhotos et ProductVideo.
✨ feat(Product): Ajoute les collections photos et vidéos au produit.
🆕 feat(ProductPhotosType): Crée le formulaire d'upload des photos.
🆕 feat(ProductVideoType): Crée le formulaire d'upload des vidéos.
🎨 refactor(add.twig): Ajoute les formulaires et affichage des photos/vidéos.
🎨 refactor(produit.twig): Affiche les photos et vidéos sur la page produit.
♻️ refactor(vich_uploader.yaml): Ajoute les mappings pour photos et vidéos.
🐛 fix(ProductController): Gère l'ajout/suppression des photos et vidéos.
```
✨ feat(ReserverController): Ordonne les formules par position
🎨 style(formule/show.twig): Simplifie le texte de tarification
♻️ refactor(FormulesController): Permet de réordonner les formules
🐛 fix(SortableReorder.js): Corrige l'attribut URL de tbody
✨ feat(formules/view.twig): Ajoute un sélecteur de type de formule
🐛 fix(formules.twig): Correction de l'ordre d'affichage
🐛 fix(revervation.twig): Correction de la description SEO
```
✨ feat(revervation/formule): Affiche détails et composition des formules
Partie gestion formules terminer
Affiche la composition des formules (pack ou personnalisable), avec
détails produits et options. Ajoute des sections dynamiques.
```
✨ feat(translations): Ajoute et met à jour les traductions françaises.
This commit adds new French translations for the catalog page, base SEO,
navigation, and footer. It also updates existing translations to be
more accurate and consistent.
```
🔥 refactor(translations): Supprime le fichier de traduction français obsolète.
🌐 feat(templates/revervation): Ajoute la prise en charge de l'internationalisation (i18n).
```
✨ feat(gitignore): Ajoute Catalogue.pdf aux fichiers ignorés.
🎨 style(templates): Ajoute un lien vers le catalogue PDF dans la page produits.
♻️ refactor(pwa): Met à jour l'URL du catalogue PDF dans le fichier PWA.
♻️ refactor(templates): Met à jour l'URL du catalogue PDF dans la base de réservation.
✨ feat(ProductController): Ajoute une route pour mettre à jour le catalogue PDF.
```
✨ feat(ReserverController): Affiche les formules publiées et leur détail.
✨ feat(formule/show.twig): Crée template pour afficher détails d'une formule.
🎨 style(formules.twig): Améliore l'affichage des formules disponibles.
```
✨ feat(admin.js): Ajoute CrmEditor pour l'édition WYSIWYG et l'initialise.
🎨 style(templates): Intègre CrmEditor pour la description des produits et formules.
```
✨ feat(Formules.php): Ajoute les propriétés de prix et la fonction slug.
✨ feat(ReserverController.php): Affiche les formules sur la page d'accueil.
♻️ refactor(Dashboard/FormulesController.php): Gère le statut et les prix.
✨ feat(templates/dashboard): Affiche les tarifs des formules.
```
✨ feat(SitePerformance): Ajoute la collecte des métriques web vitales.
🐛 fix(caddy): Corrige la redirection du script Trustpilot.
📦 chore: Ajoute web-vitals comme dépendance et adapte package.json.
```
✨ feat(UtmEvent): Ajoute le tracking Umami des utilisateurs connectés.
Ajoute l'identification des utilisateurs Umami et enregistre la session.
Implémente une bannière de consentement pour les cookies et gère l'état.
```
✨ feat(contrat): Affiche les détails du contrat et gère les paiements.
📝 chore(contrat/view): Traduit "ID Yousign" en "Numéro de signature".
🎨 style(reservation/search): Supprime une condition d'affichage des produits.
♻️ refactor(ContratController): Modifie les routes de paiement du contrat.
🐛 fix(Signature/Client): Corrige les valeurs par défaut des champs signature.
🎨 style(revervation/produit): Améliore l'affichage de l'image du produit.
```
✨ feat(reservation): Ajoute la gestion des contrats client et améliore l'authentification.
Corrige l'URL de retour, ajoute la gestion des contrats client et le logout client.
```
✨ feat(ReserverController): Ajoute des routes pour connexion, création de compte et recherche.
Crée les routes pour la connexion (`/reservation/connexion`), la création de compte
(`/reservation/creation-compte`), la gestion du mot de passe
(`/reservation/creation-compte`), et la recherche de produits
(`/reservation/recherche`). Intègre UploaderHelper et Client pour la recherche.
```