✨ 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.
```
🐛 fix(ReserverController): Corrige la route de la sitemap.
♻️ refactor(SiteMapListener): Génère les URLs des produits dans la sitemap.
🔧 chore(ansible): Ajoute le dossier seo aux dossiers à sauvegarder.
✨ feat(.env): Met à jour les URLs de signature et Stripe pour Ngrok
✨ feat(SignatureController): Ajoute le contrôleur de signature
✨ feat(DevisController): Intègre DocuSeal et la gestion des adresses client
🐛 fix(DevisManager.js): Corrige la sélection et la synchronisation des adresses
✨ feat(vich_uploader.yaml): Configure le stockage des fichiers PDF
✨ feat(initTomSelect.js): Améliore la gestion des prix des produits
✨ feat(DevisPdfService): Intègre la signature DocuSeal et améliore le pied de page
✨ feat(Client.php): Crée une soumission Docuseal pour les devis
✨ feat(Devis.php): Ajoute adresses de facturation et de livraison au devis.
🔒️ fix(IntranetLocked.php): Autorise l'accès à la route st_control en mode debug.
✨ feat(CustomerAddress.php): Gère les adresses de facturation et livraison.
✨ feat: Ajoute la console superadmin pour le contrôle système.
✨ feat(DevisController.php): Supprime la génération PDF temporaire.
✨ feat(st_control.js): Ajoute la logique de contrôle système via JS.
✨ feat: Crée les templates CGV, Cookies, Hébergement et RGPD.
🎨 style(app.scss): Ajoute un style de fond pour la console.
✨ feat: Ajoute le template pour les informations d'hébergement.
✨ feat: Crée un template de mail d'alerte pour les accès root.
✨ feat: Crée le template RGPD (données personnelles).
🐛 fix(ErrorListener.php): Gère les erreurs 404 en prod (JSON/HTML).
✨ feat: Ajoute les mentions légales.
✨ feat(DevisPdfService.php): Améliore la génération PDF du devis.
✨ feat(admin.js): Charge dynamiquement les produits dans le select.
✨ feat(add.twig): Ajoute un sélecteur de produit et d'autres champs.
✅ chore(config): Ajoute INTRANET_LOCK à l'env.
```
Ce commit ajoute la gestion des images pour les produits, l'indexation des produits pour la recherche et la synchronisation avec Stripe. Ajoute un formulaire de création/édition de produits avec gestion de l'image, l'indexation pour la recherche, et la synchronisation des produits avec Stripe. Gère les uploads d'images.
✨ feat(security): Ajoute l'authentification Keycloak SSO et migre les commandes
Supprime la commande AccountCommand, la migration et ajoute l'authentification
Keycloak SSO. Crée les vues de base pour le tableau de bord.
```