feat: Livraison version 3.0.6

- Amélioration de la gestion des entités et des utilisateurs
- Mise à jour des modèles Amicale et Client avec champs supplémentaires
- Ajout du service de logging et amélioration du chargement UI
- Refactoring des formulaires utilisateur et amicale
- Intégration de file_picker et image_picker pour la gestion des fichiers
- Amélioration de la gestion des membres et de leur suppression
- Optimisation des performances de l'API
- Mise à jour de la documentation technique

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-08-08 20:33:54 +02:00
parent 599b9fcda0
commit 206c76c7db
69 changed files with 203569 additions and 174972 deletions

View File

@@ -52,6 +52,16 @@ class ApiService {
$mail->Subject = 'Bienvenue sur GEOSECTOR';
$mail->Body = EmailTemplates::getWelcomeTemplate($name, $data['username'] ?? '', $data['password']);
break;
case 'welcome_username':
$mail->Subject = 'GEOSECTOR - Votre identifiant de connexion';
$mail->Body = EmailTemplates::getWelcomeUsernameTemplate($name, $data['username'] ?? '');
break;
case 'welcome_password':
$mail->Subject = 'GEOSECTOR - Votre mot de passe';
$mail->Body = EmailTemplates::getWelcomePasswordTemplate($name, $data['password'] ?? '');
break;
case 'lostpwd':
$mail->Subject = 'Réinitialisation de votre mot de passe GEOSECTOR';

View File

@@ -17,6 +17,59 @@ class EmailTemplates {
L'équipe GeoSector";
}
/**
* Template d'email de bienvenue - Identifiant uniquement
*/
public static function getWelcomeUsernameTemplate(string $name, string $username): string {
return "
Bonjour $name,<br><br>
Votre compte a été créé avec succès sur <b>GeoSector</b>.<br><br>
Voici votre identifiant de connexion :<br>
<div style='background:#f5f5f5; padding:15px; margin:20px 0; border-left:4px solid #007bff;'>
<b style='font-size:16px;'>Identifiant :</b> <span style='font-size:18px; color:#333;'>$username</span>
</div>
<p style='color:#666; font-size:14px;'>
<b>Important :</b> Conservez précieusement cet identifiant, vous en aurez besoin pour vous connecter.
</p>
<p>
Votre mot de passe vous sera communiqué dans un email séparé pour des raisons de sécurité.
</p>
<p>
Une fois que vous aurez reçu votre mot de passe, vous pourrez vous connecter sur
<a href=\"https://app.geosector.fr\" style='color:#007bff;'>app.geosector.fr</a>
</p>
<br>
À très bientôt,<br>
L'équipe GeoSector";
}
/**
* Template d'email de bienvenue - Mot de passe uniquement
*/
public static function getWelcomePasswordTemplate(string $name, string $password): string {
return "
Bonjour $name,<br><br>
Suite à la création de votre compte <b>GeoSector</b>, voici votre mot de passe :<br><br>
<div style='background:#f5f5f5; padding:15px; margin:20px 0; border-left:4px solid #28a745;'>
<b style='font-size:16px;'>Mot de passe :</b> <span style='font-family:monospace; font-size:18px; color:#333;'>$password</span>
</div>
<p style='color:#d73502; font-size:14px;'>
<b>⚠ Sécurité :</b> Pour garantir la sécurité de votre compte, nous vous recommandons
de conserver ce mot de passe en lieu sûr et de ne jamais le partager.
</p>
<p>
Vous pouvez maintenant vous connecter avec votre identifiant (reçu dans un email précédent)
et ce mot de passe sur <a href=\"https://app.geosector.fr\" style='color:#007bff;'>app.geosector.fr</a>
</p>
<p style='background:#fff3cd; padding:10px; border-radius:5px; margin-top:20px;'>
<b>Rappel :</b> Ne communiquez jamais votre mot de passe à un tiers. L'équipe GeoSector
ne vous demandera jamais votre mot de passe par email ou téléphone.
</p>
<br>
À très bientôt,<br>
L'équipe GeoSector";
}
/**
* Template d'email pour mot de passe perdu
*/