🐛 fix(mailer): Corrige l'URL de suivi du mail pour production.
✨ feat(account): Ajoute la gestion de l'avatar de l'utilisateur.
✨ feat(account): Ajoute la gestion du premier mot de passe à la connexion.
🗑️ refactor: Supprime les tests unitaires obsolètes.
Ce commit ajoute la fonctionnalité de réinitialisation de mot de passe pour les utilisateurs. Il comprend les éléments suivants :
- Ajout d'un formulaire pour demander la réinitialisation du mot de passe.
- Ajout d'un formulaire pour confirmer la réinitialisation du mot de passe.
- Ajout d'un service pour gérer le processus de réinitialisation du mot de passe.
- Ajout d'un modèle d'e-mail pour envoyer un lien de réinitialisation du mot de passe.
- Mise à jour de la configuration de sécurité pour permettre l'accès aux routes de réinitialisation du mot de passe.
- Ajout d'une icône pour afficher ou masquer les mots de passe
Les changements spécifiques incluent :
- Création des formulaires `RequestPasswordConfirmType` et de son test unitaire `RequestPasswordConfirmTypeTest`.
- Création des templates `forgot-password-confirm.twig` et `mails/artemis/reset.twig`.
- Création des services `ResetPasswordPubscriber` et de l'event `ResetPasswordConfirmEvent`.
- Ajout de la migration pour la table `account_reset_password_request`.
- Modification de la configuration `security.yaml` pour la gestion des rôles.
- Ajout d'un script dans `app.js` pour afficher/masquer le mot de passe.
- Modification du template `login.twig` pour afficher les messages flash.
Ce commit introduit la fonctionnalité de réinitialisation du mot de passe pour les utilisateurs.
Les modifications apportées sont les suivantes :
- Ajout de l'entité `AccountResetPasswordRequest` pour gérer les requêtes de réinitialisation de mot de passe.
- Ajout du repository `AccountResetPasswordRequestRepository` pour interagir avec l'entité `AccountResetPasswordRequest`.
- Ajout du formulaire `RequestPasswordRequestType` pour permettre aux utilisateurs de demander une réinitialisation de mot de passe.
- Ajout de l'événement `ResetPasswordEvent` pour déclencher le processus de réinitialisation du mot de passe.
- Ajout de la route `/forgot-password` dans le `HomeController` pour gérer la demande de réinitialisation.
- Création des templates twig `admin/forgot-password.twig` et `admin/base.twig` et `form_tailwind.twig` pour la gestion de l'affichage du formulaire et de la base de l'interface admin.
- Modification des templates twig `admin/login.twig` pour ajouter un lien vers la page de réinitialisation de mot de passe.
- Mise à jour du fichier `assets/app.scss` pour inclure des styles CSS personnalisés.
- Ajout de tests unitaires pour l'entité, le repository et le formulaire.
- Ajout de la configuration twig pour prendre en charge les formulaires avec tailwind
- Ajout des règles d'exclusions sonar dans `sonar-project.properties`
Ce commit introduit une nouvelle fonctionnalité permettant de créer un compte administrateur via une commande console et d'envoyer un mot de passe temporaire par email.
Les changements incluent:
- Ajout d'une commande `AccountCommand` pour créer un compte administrateur.
- Création d'un service `TempPasswordGenerator` pour générer des mots de passe temporaires aléatoires.
- Ajout d'un événement `CreatedAdminEvent` pour déclencher l'envoi d'email après la création d'un administrateur.
- Modification du subscriber `MailerSubscriber` pour utiliser le nouveau template email et inclure le mot de passe temporaire.
- Création d'un nouveau template email `mails/artemis/new_admin.twig` pour l'envoi du mot de passe temporaire.
- Ajout de tests unitaires pour l'entité `Mail` et le repository `MailRepository`.
- Suppression de code commenté inutile dans `MailRepository`.
- Correction d'un bug dans `Mailer.php` pour passer les données au template twig.
- Mise à jour de la configuration `messenger.yaml` (suppression d'une ligne inutile).
Ce commit initialise la structure de base du projet, ajoute une nouvelle fonctionnalité de gestion des comptes administrateurs, et configure l'environnement de développement.
Les modifications comprennent :
- Ajout d'une commande `mainframe:admin` pour créer des comptes administrateurs via la console.
- Implémentation d'un service de Mailer avec un subscriber pour envoyer des emails lors de la création d'un compte administrateur.
- Création d'un contrôleur `Artemis/DashboardController` pour la partie administration (artemis).
- Mise à jour du `HomeController` pour rediriger les utilisateurs connectés vers le dashboard.
- Ajout de dépendances Symfony (UID) et configuration du Dockerfile (ajout de l'extension exif)
- Suppression du test `HomeControllerTest.php`
- Configuration de SonarQube et de PHPUnit pour exclure certains dossiers du code coverage.