Commit Graph

51 Commits

Author SHA1 Message Date
Serreau Jovann
d23e75034c ```
 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
2026-02-04 09:10:41 +01:00
Serreau Jovann
d993a545d9 ```
 feat(Product): Ajoute la publication des produits et les périodes bloquées

Ajoute la possibilité de publier ou masquer un produit.
Permet de bloquer des périodes pour un produit.
Corrige des bugs liés à la suppression des produits du panier.
Mise à jour de l'affichage du calendrier pour les blocages.
```
2026-02-03 14:53:11 +01:00
Serreau Jovann
0be752c145 ```
 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]
```
2026-01-31 13:49:25 +01:00
Serreau Jovann
e1227c5d14 ```
 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.
```
2026-01-30 11:29:29 +01:00
Serreau Jovann
b6f90721ad ```
 feat(Formules): Ajoute champ 'pos' pour ordonner les formules.
🐛 fix(CrmEditor): Améliore la gestion du copier-coller et retire le toast d'erreur.
```
2026-01-30 09:48:27 +01:00
Serreau Jovann
dbd806a595 ```
 feat(Prestaire.php): Implémente UserInterface et PasswordAuthenticatedUserInterface.

 feat(security): Ajoute firewall et authentificateur pour ETL.

 feat(EtlController.php): Ajoute contrôleur et routes pour ETL.

 feat(RedirecListener.php): Ajoute redirection pour etl.ludikevent.fr.

✏️ chore(caddy): Ajoute etl.ludikevent.fr à la configuration Caddy.
```
2026-01-29 17:32:03 +01:00
Serreau Jovann
e5252b2932 feat(Contrats): Preparation pour le développement des etats des lieux sur etl.ludikevent.fr 2026-01-29 13:21:33 +01:00
Serreau Jovann
e530538af8 ```text
 feat(contrats): Ajoute détails option, actions paiements et style liste

Ajoute un champ détails pour les options de contrat, permet la validation
manuelle des paiements (accompte, caution, solde) et améliore le style
de la liste des contrats.
```
2026-01-29 10:40:03 +01:00
Serreau Jovann
9a4d7b6ae1 ```
 feat(DevisController): Améliore la gestion et l'édition des devis

Corrige des bugs et améliore la création/édition des devis, incluant options et lignes, et la gestion des signatures.
```
2026-01-29 10:06:39 +01:00
Serreau Jovann
034210d91d ```
 feat(Formules.php): Ajoute relation OneToOne avec FormulesRestriction.
 feat(Dashboard/FormulesController.php): Gère restrictions formules et formulaire.
🎨 refactor(template/formules): Améliore interface configuration restriction formule.
🐛 fix(assets/RepeatLine.js): Corrige réinitialisation TomSelect et selects "Type".
 feat(assets/initTomSelect.js): Gère cache options et init TomSelect.
```
2026-01-28 16:00:35 +01:00
Serreau Jovann
b375b90d58 feat(Formules): Ajoute options incluses, améliore affichage et PWA
Ajoute la gestion des options incluses dans les formules,
améliore l'affichage des packs et corrige le start_url de la PWA.
2026-01-28 12:31:05 +01:00
Serreau Jovann
aa75f290d0 ```
 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.
```
2026-01-28 10:00:58 +01:00
Serreau Jovann
c3f585bf2b ```
 feat(Formules.php): Ajoute les champs description et isPublish à l'entité Formules.
 feat(add.twig): Ajoute le champ description au formulaire d'ajout de formules.
 feat(FormulesType.php): Ajoute le champ description au formulaire FormulesType.
 feat(Dashboard/FormulesController.php): Gère l'ajout, la suppression et la vue des formules.
 feat(view.twig): Crée la vue pour modifier les détails d'une formule.
 feat(formules.twig): Affiche la liste des formules avec actions et statut.
```
2026-01-28 09:38:27 +01:00
Serreau Jovann
349b5fc2cc ```
 feat(Product): Ajoute la relation avec l'entité FormulesProductInclus.
 feat(FormulesController): Crée le contrôleur pour gérer les formules.
 feat(templates): Ajoute le template pour afficher les formules dans le dashboard.
 feat(base.twig): Ajoute un lien vers la gestion des formules dans le menu.
⚙️ chore(vich_uploader): Configure vich uploader pour les images des formules.
```
2026-01-28 08:56:54 +01:00
Serreau Jovann
ff9ae0e8d4 ```
 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.
```
2026-01-27 23:36:11 +01:00
Serreau Jovann
454b748973 ```
 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.
```
2026-01-27 20:24:02 +01:00
Serreau Jovann
52e92b4230 ```
 feat(devis): Améliore la sélection des produits et options avec modales de recherche

Supprime la relation Product->DevisLine, ajoute des composants de recherche modale pour produits/options dans les devis.
```
2026-01-27 19:35:54 +01:00
Serreau Jovann
c7b4efcf1a feat(produit): Améliore l'affichage des prix et ajoute des options de prix supplémentaires. 2026-01-27 10:01:13 +01:00
Serreau Jovann
216ef477ac ```
 feat(Product): Ajoute les dimensions largeur, hauteur et profondeur au produit.
```
2026-01-27 09:08:14 +01:00
Serreau Jovann
42d588765d ```
 feat(Contrats): Ajoute la gestion de l'état de la caution (restituée/encaissée).
```
2026-01-23 13:10:42 +01:00
Serreau Jovann
160240fe85 ```
 feat(contrat): Améliore l'affichage des contrats et ajoute suivi des paiements.

Cette commit améliore l'affichage des contrats dans le dashboard,
ajoute le suivi des paiements et corrige des bugs mineurs.
```
2026-01-23 10:17:53 +01:00
Serreau Jovann
c351c239c5 ```
 feat(contrat/paiement): Ajoute la confirmation de paiement avec signature automatique.
```
2026-01-23 10:04:12 +01:00
Serreau Jovann
6656d56111 ```
 feat(reservation/contrat): Ajoute la gestion complète des contrats
```
2026-01-22 20:15:21 +01:00
Serreau Jovann
afa6133907 ```
 feat(Product.php): Ajoute ProductDoc pour gérer les documents.
 feat(Contrats.php): Gère les fichiers du contrat via VichUploader.
 feat(templates): Crée template mail signature contrat.
 feat(SignatureController): Ajoute la signature du contrat.
 feat(ContratsController): Crée contrat depuis devis et liste contrats.
 feat(Client): Crée soumission contrat Docuseal.
 feat(DevisPdfService): Corrige l'assurance RC Pro.
 feat(.env): Ajoute CONTRAT_BASEURL.
 feat(ProductDocType): Crée formulaire pour les documents produit.
 feat(contrats/list.twig): Liste et actions pour les contrats.
 feat(UtmEvent.js): Track click document produit.
 feat(ContratEvent.php): Crée event pour envoi contrat.
 feat(admin.js): Initialise la recherche dynamique des contrats.
 feat(ContratPdfService): Génère le PDF du contrat DocuSeal.
 feat(products/add.twig): Ajoute gestion des documents produits.
 feat(ContratController): Crée controlleur contrat.
 feat(ContratSubscriber.php): Envoi du contrat par email.
 feat(reservation/produit.twig): Affiche les documents produit.
 feat(ProductController.php): Refactorisation et ajout des documents.
```
2026-01-22 15:58:57 +01:00
Serreau Jovann
9eafbbe2d9 ```
 feat(Contrats): Rend les champs adresse 2 et 3 non obligatoires et ajoute la gestion du formulaire.
```
2026-01-22 11:14:22 +01:00
Serreau Jovann
7dc2978094 ```
 feat(Devis): Ajoute options, dates début/fin et améliore affichage PDF

Ajoute les champs date de début et fin au devis. Permet l'ajout d'options au devis. Améliore l'affichage du PDF.
```
2026-01-22 10:36:26 +01:00
Serreau Jovann
5ab4b06d7d ```
 feat(Devis.php): Ajoute liaison Options <-> Devis et méthode get/set.

 feat(options/add.twig): Ajoute template création/édition des options.

♻️ refactor(.env): Met à jour les URLs ngrok pour la synchro Stripe.

🐛 fix(StripeCommand.php): Corrige et améliore la synchro Stripe.

 feat(products.twig): Ajoute gestion et affichage des options.

 feat(Client.php): Ajoute gestion des options (CRUD) pour Stripe.

 feat(vich_uploader.yaml): Ajoute configuration pour upload images options.

 feat(ProductController.php): Gère les options (CRUD) dans le contrôleur.

 feat(OptionsType.php): Ajoute formulaire pour la gestion des options.
```
2026-01-22 09:19:04 +01:00
Serreau Jovann
a4ee1c3379 ```
 feat(dashboard/contrats): Ajoute le formulaire de création de contrat

Ajoute le formulaire de création de contrat avec gestion des adresses, des détails techniques et des prestations.
```
2026-01-21 17:02:37 +01:00
Serreau Jovann
f9280db146 feat(Devis): Ajoute relation one-to-one avec Contrats et met à jour l'entité.
 feat(contrats): Ajoute le formulaire de création de contrats.
📝 feat(Contrats): Crée le type de formulaire ContratsType.
 feat(Customer): Ajoute la relation one-to-many avec Contrats.
 feat(contrats): Ajoute la vue de création de contrats.
2026-01-21 15:41:26 +01:00
Serreau Jovann
2afd6e6be8 ```
 feat(Product): Ajoute description et quantité aux produits, et formulaire associé.
```
2026-01-21 14:38:16 +01:00
Serreau Jovann
cd45a37d73 ```
 feat(Product.php): Ajoute la relation avec ProductReserve.

 feat(DevisSubscriber.php): Crée un subscriber pour l'envoi de devis.

 feat(Devis.php): Ajoute la relation avec ProductReserve.

 feat: Crée le template de mail pour la notification de signature.

 feat(DevisSend.php): Crée l'événement DevisSend.

 feat(Customer.php): Ajoute la relation avec ProductReserve.

🐛 fix(SignatureController.php): Corrige la gestion de la signature complétée.

 feat(DevisController.php): Ajoute la relance de signature et pagination.

 feat: Crée le template de mail pour l'envoi du devis à signer.

 feat: Crée le template de mail pour la confirmation de signature.

 feat(Client.php): Gère la création et le suivi de la signature DocuSeal.

 feat(DevisPdfService.php): Intègre les champs Docuseal.

 feat(list.twig): Affiche la liste des devis avec actions et statuts.

 feat: Crée la page de succès de signature.

 feat(StripeExtension.php): Ajoute le filtre totalQuoto pour calculer le total HT.
```
2026-01-19 19:40:27 +01:00
Serreau Jovann
5d6c0fdde7 ```
 feat(Product.php): Ajoute relation DevisLine et méthodes associées en français.
 feat(DevisLine.php): Ajoute propriétés et relations pour ligne de devis en français.
 feat(DevisController.php): Intègre génération PDF et ajout de lignes de devis en français.
🎨 style: Améliore la mise en page et l'esthétique de l'interface admin en français.
 feat: Initialise TomSelect et gère les adresses client dans DevisManager en français.
🐛 fix: Corrige l'initialisation de TomSelect et la gestion des lignes répétées en français.
 test: Ajoute génération du bon pour accord et signature en français.
```
2026-01-19 17:56:57 +01:00
Serreau Jovann
4c14932fee ```
 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.
```
2026-01-19 13:52:41 +01:00
Serreau Jovann
84180d9561 ```
 feat(Devis): Ajoute l'entité DevisLine et le formulaire de création de devis non terminer

Ajoute l'entité DevisLine, le formulaire NewDevisType et la route pour la création de devis.
```
2026-01-16 16:00:00 +01:00
Serreau Jovann
c952f2487a ```
 feat(Devis): Ajoute le champ signatureId à l'entité Devis.
 feat(Signature): Crée le service Client pour gérer les signatures.
```
2026-01-16 15:34:41 +01:00
Serreau Jovann
5bab18f966 ```
 feat(Product): Remplace les annotations Vich par des attributs.
♻️ refactor(Customer): Ajoute la relation OneToMany avec l'entité Devis.
 feat(DevisController): Affiche la liste des devis paginée.
 feat(devis/list.twig): Crée la vue de liste des devis avec pagination.
⚙️ chore(vich_uploader): Configure les mappings pour les fichiers de devis.
```
2026-01-16 15:04:50 +01:00
Serreau Jovann
cb5fdba2f9 feat(Customer): Ajoute la relation OneToMany avec CustomerAddress et les méthodes associées.
todo :add form create addresse in created account and edit account add multi address
2026-01-16 14:34:38 +01:00
Serreau Jovann
85b3f631d1 ```
 feat(Product): Ajoute un champ productId pour la synchronisation Stripe.

🎨 style(product/products.twig): Affiche l'état de synchronisation Stripe.
```
2026-01-16 13:55:11 +01:00
Serreau Jovann
1304260c1b feat(Product): Ajoute la gestion des images des produits avec VichUploader. 2026-01-16 13:52:22 +01:00
Serreau Jovann
7a43efc9b7 feat(produit): Ajoute l'entité Produit, son repository et la migration associée. 2026-01-16 13:44:08 +01:00
Serreau Jovann
890da18c15 ```
 feat(Stripe): Intègre Stripe pour la gestion des paiements et les webhooks

Ajoute Stripe pour la synchronisation des clients et la configuration des webhooks.
Crée une commande pour synchroniser les clients locaux avec Stripe.
Ajoute un champ customerId à l'entité Customer.
```
2026-01-16 13:15:42 +01:00
Serreau Jovann
52f5eece17 feat(crm/customer): Ajoute la gestion des clients (list only) 2026-01-16 11:43:28 +01:00
Serreau Jovann
540bdc1d07 feat(ansible): Ajoute les tâches cron pour recherche et sauvegarde
📝 style(templates): Crée un template de mail pour notifications de sauvegarde

🐛 fix(.gitignore): Exclut les fichiers de sauvegarde .zip

🎨 style(dashboard): Crée une page pour la gestion des sauvegardes

 feat(command): Implémente la commande de sauvegarde avec notification et rétention

🎨 style(dashboard): Améliore l'interface de recherche avec des effets visuels

 feat(dashboard): Ajoute une page pour la gestion des sauvegardes

 test(controller): Ajoute la logique de téléchargement et suppression des sauvegardes
2026-01-16 11:04:13 +01:00
Serreau Jovann
26c3dfd3a1 ```
 feat(security): Ajoute l'authentification à deux facteurs (2FA) avec Google Authenticator.
```
2026-01-16 10:04:02 +01:00
Serreau Jovann
1b6f0bcde4 ```
 feat(crm/admin): Améliore gestion des administrateurs et sécurité

Ajoute formulaires identité et mot de passe, rôles dynamiques.
Gère statuts, journal d'audit, connexions.
Améliore les notifications.
```
2026-01-15 22:07:01 +01:00
Serreau Jovann
aba456e5ca ```
 feat(caddy): Améliore la sécurité avec CSP et headers standards

 feat(templates): Met à jour le logo sur la page d'inscription réussie

 feat(knp_paginator): Ajoute la configuration pour le style Tailwind

 feat(audit_logs): Crée la page de traçabilité des actions

 feat(logs): Ajoute le contrôleur pour gérer les logs d'audit

 feat(AppLogger): Enregistre l'user agent dans les logs d'audit

 feat(AccountController): Supprime l'appel inutile de l'EventAdminCreate

 feat(AuditLogRepository): Récupère les logs en excluant les ROOT

 feat(base): Ajoute la structure de base pour le dashboard
```
2026-01-15 20:08:04 +01:00
Serreau Jovann
98937f9164 ```
 feat(admin): Ajoute gestion des administrateurs avec création et suppression.

Ajoute la gestion complète des administrateurs : création, suppression,
logs d'audit, notifications mail (création/suppression) et désinscription.
```
2026-01-15 19:44:51 +01:00
Serreau Jovann
b1b2687320 feat(ansible): Ajoute des headers de sécurité et limite la taille des requêtes.
 feat(Security): Active l'authentification à deux facteurs (2FA).
 feat(Account): Ajoute une entité et un formulaire pour les administrateurs.
🐛 fix(Security): Corrige la redirection après la connexion.
 feat(CRM): Ajoute une page d'administration des comptes administrateurs.
2026-01-15 18:51:17 +01:00
Serreau Jovann
3b0ce1314f ```
 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.
```
2026-01-15 18:04:01 +01:00
Serreau Jovann
662bb0bcc6 ```
[+] chore(root): Initialise le projet avec une structure de base

Crée la structure de base du projet Symfony, incluant les entités,
services, formulaires, et templates nécessaires pour la gestion des
comptes utilisateurs, la sécurité, et la gestion des mots de passe
oubliés. Ajoute également la configuration pour la gestion des assets
avec Vite, la gestion des fichiers avec Flysystem, et la
génération de sitemaps.
```
2025-12-11 17:22:26 +01:00