Commit Graph

  • 193ffd7ecc Checkpoint: Correction de l'algorithme de génération de couleur pour les formations : utilisation d'un mapping basé sur l'ordre d'apparition des formations plutôt que sur leur ID. Chaque formation reçoit maintenant une couleur unique parmi 10 couleurs disponibles (bleu, violet, rose, indigo, cyan, teal, violet, fuchsia, sky, amber), garantissant une distinction visuelle claire entre toutes les formations dans le tableau des séquences. Manus Sandbox 2025-11-23 17:17:47 -05:00
  • d2bb185ea5 Checkpoint: Amélioration visuelle de la fenêtre des séquences : l'icône œil (visualisation) s'affiche maintenant en bleu pour mieux la distinguer. Chaque formation a une couleur unique (bleu, violet, rose, indigo, cyan, etc.) appliquée à son nom dans le tableau, facilitant l'identification visuelle rapide des séquences par formation sans utiliser vert, orange ou rouge déjà réservés aux indicateurs de capacité. Manus Sandbox 2025-11-23 17:12:59 -05:00
  • 41fc4874fd Checkpoint: Amélioration visuelle de la gestion des séquences : le taux de remplissage (pourcentage) s'affiche maintenant en couleur conditionnelle (vert pour <70%, orange pour 70-90%, rouge pour >90%) pour faciliter l'identification rapide des séquences proches de la capacité maximale. L'icône corbeille de suppression est maintenant affichée en rouge pour mieux signaler l'action destructive. Manus Sandbox 2025-11-23 17:05:45 -05:00
  • 3ec648f8cf Checkpoint: Ajout du graphique de répartition par établissement sur le tableau de bord principal, affiché côte à côte avec le graphique de répartition par fonction. Le graphique affiche le top 10 des établissements avec le plus d'apprenants inscrits, utilisant des couleurs distinctes pour faciliter la lecture. Les deux graphiques sont maintenant visibles en grille responsive (2 colonnes sur desktop, 1 colonne sur mobile). Manus Sandbox 2025-11-23 16:48:29 -05:00
  • a807183e2b Checkpoint: Correction de l'incohérence dans les statistiques de répartition des apprenants par fonction. Le tableau de bord principal et le tableau de bord analytique affichent maintenant les mêmes pourcentages car ils comptent tous les deux le nombre d'apprenants (et non le nombre d'inscriptions). Les deux graphiques sont maintenant cohérents. Manus Sandbox 2025-11-23 16:42:38 -05:00
  • 03efb59cbf Checkpoint: Ajout de filtres de période (dernier mois, trimestre, année) pour affiner l'analyse des tendances. Implémentation de l'export Excel des rapports analytiques avec 5 feuilles (statistiques globales, inscriptions par mois, taux de remplissage, participation par établissement et par fonction). Création du schéma de base de données pour les alertes automatiques (fonctionnalité future). Les utilisateurs peuvent maintenant filtrer les données analytiques par période et télécharger des rapports Excel complets. Manus Sandbox 2025-11-23 16:36:26 -05:00
  • 64db3f1aa6 Checkpoint: Création d'un tableau de bord analytique avancé avec graphiques interactifs (Recharts). Affiche les statistiques globales, l'évolution temporelle des inscriptions par mois, le taux de remplissage des séquences, le top 10 des établissements participants et la répartition par fonction. Accessible via le menu "Tableau de bord analytique". Manus Sandbox 2025-11-23 16:25:22 -05:00
  • 33161d1a4d Checkpoint: Implémentation complète du remplacement automatique des variables dans les emails et ajout d'un bouton d'aperçu. Les variables {{nomApprenant}}, {{prenomApprenant}}, {{nomFormation}}, {{nomSequence}}, {{dateDebut}}, {{dateFin}}, {{lieu}}, {{formateur}} sont automatiquement remplacées lors de l'envoi d'emails. Un bouton "Aperçu email" permet de visualiser le rendu final avec des données d'exemple avant l'envoi. Manus Sandbox 2025-11-23 16:14:53 -05:00
  • 4e825dbf99 Checkpoint: Correction de l'erreur de compatibilité React Quill avec React 19. Remplacement par TipTap (éditeur moderne compatible React 19). Barre d'outils complète (gras, italique, barré, titres H2/H3, listes). 7 boutons de variables dynamiques fonctionnels. Prévisualisation HTML en temps réel. Imports corrigés pour utiliser les exports nommés. Manus Sandbox 2025-11-23 16:05:38 -05:00
  • e16bdb22a1 Checkpoint: Ajout d'un éditeur de texte riche (React Quill) pour formater facilement le contenu des emails (gras, italique, listes, couleurs, liens). Ajout de 7 boutons pour insérer rapidement des variables dynamiques : {{nomApprenant}}, {{prenomApprenant}}, {{nomFormation}}, {{nomSequence}}, {{dateDebut}}, {{lieu}}, {{formateur}}. La prévisualisation affiche le contenu HTML formaté en temps réel. Manus Sandbox 2025-11-23 15:36:56 -05:00
  • 3de0e39350 Checkpoint: Amélioration de la prévisualisation des templates d'emails : la prévisualisation affiche maintenant en temps réel le contenu saisi dans le champ "Corps du message". Lorsque le champ est vide, un message d'aide s'affiche. Le contenu se met à jour automatiquement pendant la saisie, permettant de visualiser exactement l'email final avant de l'enregistrer. Manus Sandbox 2025-11-23 15:29:04 -05:00
  • e4abeb5dc9 Checkpoint: Correction complète de l'erreur 403 : ajout du champ bodyContent dans la validation Zod (routers.ts) et dans la fonction de mise à jour de la base de données (db.ts). Le champ "Corps du message" fonctionne maintenant correctement dans l'interface de gestion des templates d'emails et les données sont correctement sauvegardées en base de données. Manus Sandbox 2025-11-23 15:15:02 -05:00
  • 62644d544e Checkpoint: Ajout du champ "Corps du message" dans l'interface de gestion des templates d'emails. Les utilisateurs peuvent maintenant personnaliser le contenu principal de leurs emails automatiques (confirmation, teaser, rappel) en plus du titre, des couleurs et du pied de page. Le champ accepte du texte simple et affiche une prévisualisation en temps réel. Manus Sandbox 2025-11-23 14:57:58 -05:00
  • 59edce13d7 Checkpoint: Ajout du guide complet de configuration HTTPS avec Let's Encrypt, script d'installation automatique et template nginx optimisé Manus Sandbox 2025-11-23 12:40:25 -05:00
  • f9d1f21011 Checkpoint: Version finale avec authentification locale corrigée : utilisation de sdk.createSessionToken() et configuration SameSite=Lax pour compatibilité HTTP Manus Sandbox 2025-11-23 10:10:13 -05:00
  • 645f6f6b5f Checkpoint: Correction de l'authentification locale : utilisation de sdk.createSessionToken() au lieu de jsonwebtoken pour compatibilité avec le système OAuth Manus Sandbox 2025-11-23 08:50:35 -05:00
  • ccb1484839 Checkpoint: Amélioration de la page de choix de connexion : ajout de la détection automatique de l'état de connexion. Les utilisateurs déjà connectés sont maintenant redirigés automatiquement vers le tableau de bord admin, tandis que les utilisateurs non connectés voient la page de choix entre connexion Manus OAuth et connexion locale. Cela évite d'afficher la page de choix inutilement aux utilisateurs déjà authentifiés. Manus Sandbox 2025-11-23 06:22:04 -05:00
  • 92d5825ead Checkpoint: Correction de la redirection après déconnexion : l'utilisateur est maintenant redirigé vers la page de choix de connexion (/) après s'être déconnecté, au lieu de rester sur la même page. Cela permet de choisir à nouveau entre connexion Manus OAuth et connexion locale après chaque déconnexion. Manus Sandbox 2025-11-23 06:16:58 -05:00
  • 83b32f44ab Checkpoint: Ajout d'une page de choix de connexion à la racine (/) permettant de sélectionner entre "Connexion Manus OAuth" et "Connexion locale". La page affiche deux cartes avec icônes distinctes (bouclier bleu pour OAuth, clé verte pour connexion locale) et redirige vers la page appropriée selon le choix de l'utilisateur. Cette page résout le problème de redirection automatique vers OAuth en production en offrant un point d'entrée clair pour les deux modes d'authentification. Manus Sandbox 2025-11-23 05:45:41 -05:00
  • 614680ac95 Checkpoint: Checkpoint final incluant la page de connexion locale à /login avec formulaire username/password. La page fonctionne correctement en développement. Après publication, la route /login sera accessible sur le domaine public. Identifiants de test : adminServFormation / Itinova69! Manus Sandbox 2025-11-23 05:36:40 -05:00
  • aa6d5c940d Checkpoint: Vérification et confirmation que la page d'accueil (Home.tsx) contient bien deux boutons de connexion pour les utilisateurs non authentifiés : "Connexion locale" (vers /login) et "Connexion OAuth" (vers OAuth Manus). Les boutons sont visibles dans le header de la page d'accueil pour les utilisateurs non connectés. Pour accéder directement à la page de connexion locale, utiliser l'URL /login. Manus Sandbox 2025-11-23 05:11:39 -05:00
  • fe8b8e90c4 Checkpoint: Ajout d'une page de connexion locale permettant aux utilisateurs de se connecter avec leur identifiant et mot de passe (username/password) au lieu de l'OAuth Manus. Implémentation complète avec route d'authentification backend, hashage bcrypt, session JWT, et reconnaissance automatique des sessions locales vs OAuth. Tests unitaires et manuels réussis avec l'utilisateur adminServFormation. Manus Sandbox 2025-11-23 04:59:54 -05:00
  • b2e7505afb Checkpoint: Email modifiable pour l'utilisateur administrateur Manus Sandbox 2025-11-21 10:39:00 -05:00
  • 422f5634f9 Checkpoint: Création d'un utilisateur administrateur spécial non supprimable Manus Sandbox 2025-11-21 10:18:49 -05:00
  • 8a61f9b823 Checkpoint: Ajout de l'identifiant de connexion et modification du mot de passe dans la gestion des utilisateurs Manus Sandbox 2025-11-21 10:08:56 -05:00
  • fad88c5257 Checkpoint: Correction majeure du problème de création excessive d'utilisateurs Manus Sandbox 2025-11-21 09:53:16 -05:00
  • 2975d92568 Checkpoint: Ajout de la fonctionnalité "Détail par apprenant" Manus Sandbox 2025-11-20 11:00:53 -05:00
  • 017ad5dd18 Checkpoint: Ajout de la signature du formateur sur les feuilles de présence Manus Sandbox 2025-11-20 09:51:51 -05:00
  • b9e1a63d82 Checkpoint: Améliorations complètes des feuilles de présence : Manus Sandbox 2025-11-20 05:03:24 -05:00
  • 1768e45dc1 Checkpoint: Correction complète de l'affichage du formateur dans la liste des séquences et dans le formulaire de modification. Ajout de la colonne formateurId dans la table sequences, modification du schéma Zod pour accepter null, et correction du FormateurCombobox pour stocker l'ID au lieu du nom. Le formateur s'affiche maintenant correctement dans la liste des séquences. Manus Sandbox 2025-11-20 04:36:02 -05:00
  • 7149458bb8 Checkpoint: Correction de l'erreur "No procedure found on path formateurs.create" en ajoutant le routeur formateurs complet avec les procédures list, getById, create, update et delete, ainsi que les fonctions de base de données correspondantes Manus Sandbox 2025-11-20 03:57:35 -05:00
  • 89cc7db497 Checkpoint: Sauvegarde complète de l'application avec toutes les modifications récentes : Manus Sandbox 2025-11-19 12:39:44 -05:00
  • 01c23405af Checkpoint: Corrections d'affichage du formateur : - Correction du placeholder du formateur dans le formulaire de modification de séquence (suppression de "(optionnel)") - Ajout d'une colonne "Formateur" dans le tableau de la liste des séquences - Le formateur s'affiche maintenant dans la liste avec "-" si non assigné - Tests réussis : le placeholder est correct et la colonne formateur est visible Manus Sandbox 2025-11-19 12:28:18 -05:00
  • 4a48164461 Checkpoint: Corrections d'affichage du nom de formation dans le calendrier : - Création de getSequencesWithFormation() pour récupérer les informations de formation - Mise à jour de la procédure sequences.list pour utiliser la nouvelle fonction - Correction de AdminCalendrier.tsx pour utiliser formation.nom au lieu de formation.titre - Le nom de la formation s'affiche maintenant correctement dans le calendrier et dans le dialog de détails - Vérification que le placeholder du FormateurCombobox est correct Manus Sandbox 2025-11-19 12:17:52 -05:00
  • 6264693dff Checkpoint: Trois corrections appliquées Manus Sandbox 2025-11-19 12:03:25 -05:00
  • 1eba34a31f Checkpoint: Trois corrections appliquées Manus Sandbox 2025-11-19 11:54:47 -05:00
  • a130d464d0 Checkpoint: Correction bug calendrier - Gestion robuste des dates Manus Sandbox 2025-11-19 11:41:02 -05:00
  • 1ab817c9ea Checkpoint: Corrections de bugs : calendrier et taux de remplissage Manus Sandbox 2025-11-19 11:35:24 -05:00
  • 4b4a885704 Checkpoint: Vérification et finalisation des trois fonctionnalités principales Manus Sandbox 2025-11-19 11:30:44 -05:00
  • 4ce36ebbb0 Checkpoint: Ajout des pages Calendrier et Rappels dans le menu de navigation Manus Sandbox 2025-11-19 11:25:18 -05:00
  • 21b75d4464 Checkpoint: Checkpoint complet avec toutes les fonctionnalités développées Manus Sandbox 2025-11-19 11:20:40 -05:00
  • b7cadc173b Checkpoint: Correction du bug FormateurCombobox manquant Manus Sandbox 2025-11-19 10:53:22 -05:00
  • 2283e84b54 true message Manus Sandbox 2025-11-19 10:33:48 -05:00
  • 54cf4297bf Checkpoint: Corrections d'affichage pour la page de gestion des séquences Manus Sandbox 2025-11-19 10:19:34 -05:00
  • 770f803717 Checkpoint: Correction du bug "useMemo is not defined" dans AdminSequences.tsx Manus Sandbox 2025-11-19 10:04:18 -05:00
  • 4bf589dde3 Checkpoint: Trois améliorations majeures pour la gestion des séquences : Manus Sandbox 2025-11-19 09:59:37 -05:00
  • 16351ea3d5 Checkpoint: Trois améliorations majeures du champ formateur : Manus Sandbox 2025-11-19 09:38:06 -05:00
  • 703d0e4961 Checkpoint: Ajout du champ "Formateur" dans les séquences de formation : Manus Sandbox 2025-11-19 09:30:51 -05:00
  • b9907f9cca Checkpoint: Corrections apportées à la gestion des séquences : Manus Sandbox 2025-11-19 09:19:47 -05:00
  • b72a9c471c Checkpoint: Ajout de "Tous" dans la liste des publics cible pour les séquences. Modifications apportées : Manus Sandbox 2025-11-19 09:09:31 -05:00
  • 61d64c365b Checkpoint: Correction OAuth callback failed : ajout colonnes openId et loginMethod, password nullable, logs détaillés Manus Sandbox 2025-11-19 08:57:37 -05:00
  • 37e0f8da49 Rollback to 9d67724e Manus Sandbox 2025-11-19 08:41:10 -05:00
  • 5085159cf7 Rollback to 641200f3 Manus Sandbox 2025-11-19 08:36:23 -05:00
  • 1313a45879 Rollback to a1d67c74 Manus Sandbox 2025-11-19 08:34:55 -05:00
  • 4d2ed3d5d8 Checkpoint: Correction de la redirection OAuth pour revenir à l'application après authentification. Le callback OAuth décode maintenant le state pour rediriger vers /admin au lieu de rester sur le tableau de bord Manus. Le système gère maintenant correctement les deux modes d'authentification (local + OAuth). Manus Sandbox 2025-11-19 08:24:59 -05:00
  • 42826fc7dd Checkpoint: Implémentation de la cohabitation des deux systèmes d'authentification (OAuth Manus et authentification locale). Les utilisateurs peuvent maintenant choisir entre : - Authentification locale avec email/mot de passe - OAuth Manus pour les utilisateurs de la plateforme Manus Sandbox 2025-11-19 07:03:34 -05:00
  • a1d67c7451 Checkpoint: Implémentation authentification hybride (cookies + Authorization header) - Résolution du problème de connexion dans l'environnement de preview Manus Manus Sandbox 2025-11-19 06:40:14 -05:00
  • a5b78153a0 Checkpoint: Correction de la boucle de connexion Manus Sandbox 2025-11-19 05:42:09 -05:00
  • cc0bd97248 Checkpoint: Migration complète vers l'authentification locale avec email/mot de passe Manus Sandbox 2025-11-19 05:35:17 -05:00
  • 934edc63cd Checkpoint: Correction des erreurs de compilation - Installation de jsonwebtoken, correction des imports, serveur fonctionnel. Migration OAuth vers authentification locale maintenant opérationnelle. Manus Sandbox 2025-11-19 04:47:42 -05:00
  • 28727171ae Checkpoint: Migration OAuth Manus vers authentification locale (80% complété) - Pages login/register créées, backend JWT implémenté, guides de déploiement ajoutés. Reste à corriger les doublons dans db.ts et finaliser AdminUsers. Manus Sandbox 2025-11-19 04:39:07 -05:00
  • 9d67724e83 Checkpoint: Ajout de l'interface de configuration SMTP avec Resend : formulaire de configuration (API key, email expéditeur, nom), basculement simulation/production, test d'envoi immédiat, stockage sécurisé en base de données, et guide de configuration intégré Manus Sandbox 2025-11-18 02:00:48 -05:00
  • 20dc80cd74 Checkpoint: Ajout d'une interface d'administration complète pour personnaliser les templates d'emails avec prévisualisation en temps réel, stockage en base de données et intégration avec le service d'envoi Manus Sandbox 2025-11-17 17:11:27 -05:00
  • f06cd3e8a5 Checkpoint: Amélioration du système d'envoi d'emails : intégration de Resend pour l'envoi réel d'emails avec fallback vers simulation si non configuré. Documentation complète ajoutée dans EMAIL_SETUP.md pour guider la configuration. Manus Sandbox 2025-11-17 16:53:32 -05:00
  • 6c24939d20 Checkpoint: Correction de l'affichage de la page de gestion des utilisateurs : intégration du DashboardLayout pour afficher le menu latéral de navigation sur toutes les pages. Manus Sandbox 2025-11-17 16:41:42 -05:00
  • 155c4592e1 Checkpoint: Ajout de la fonctionnalité complète de réinitialisation de mot de passe avec génération de tokens temporaires (24h), stockage en base de données, et envoi d'emails automatiques. Nouveau bouton dans la page de gestion des utilisateurs avec dialogue de confirmation. Manus Sandbox 2025-11-17 16:21:11 -05:00
  • c9f6f8f068 Checkpoint: Ajout de la fonctionnalité de création d'utilisateurs : ajout de la fonction createUser dans db.ts, création de la procédure tRPC users.create, ajout du bouton "Ajouter un utilisateur" dans la page AdminUsers avec icône Plus, création du dialogue de création avec formulaire complet (OpenID, nom, email, rôle) et gestion des états de création avec validation et messages de succès/erreur Manus Sandbox 2025-11-17 16:10:16 -05:00
  • 8cf6a9f6c3 Checkpoint: Ajout d'une fonctionnalité complète de gestion des utilisateurs : ajout du champ isActive dans le schéma users, création des procédures tRPC (list, update, toggleStatus, delete), développement de la page AdminUsers avec tableau, filtres (recherche, rôle, statut), formulaires de modification, activation/désactivation et suppression des comptes, intégration dans le menu de navigation avec l'icône UserCog Manus Sandbox 2025-11-17 15:57:51 -05:00
  • 6f5178b909 Checkpoint: Ajout des badges de couleur pour le public cible (bleu pour Directeurs, vert pour Chefs de service, gris pour Autre) dans les tableaux des séquences et création d'un rapport d'analyse comparant le public cible des séquences avec la fonction des apprenants inscrits pour identifier les écarts et optimiser la planification des formations Manus Sandbox 2025-11-17 08:44:49 -05:00
  • 01e2b8b2d4 Checkpoint: Ajout d'un filtre par public cible sur la page de gestion des séquences pour faciliter la recherche des séquences destinées à un profil spécifique (Directeurs, Chefs de service, Autre) Manus Sandbox 2025-11-17 07:57:18 -05:00
  • 3f16cd8a48 Checkpoint: Ajout du champ "Public cible" dans tous les exports (Excel, PDF liste d'inscrits, PDF feuille de présence) pour une meilleure traçabilité des séquences Manus Sandbox 2025-11-17 06:06:23 -05:00
  • 19dbe9cccc Checkpoint: Ajout d'une alerte d'information non bloquante qui s'affiche lorsqu'un apprenant s'inscrit à une séquence dont le public cible ne correspond pas à sa fonction. L'alerte persiste 8 secondes avec un délai de 2 secondes avant la soumission pour laisser le temps de lecture. Manus Sandbox 2025-11-17 04:52:17 -05:00
  • 634565b134 Checkpoint: Correction des bugs d'inscription : validation des inscriptions et ajout des apprenants dans la liste. Les deux bugs étaient déjà corrigés dans la version restaurée (732b84fe). Manus Sandbox 2025-11-17 01:50:14 -05:00
  • 6a5af08dad Rollback to 732b84fe Manus Sandbox 2025-11-17 01:42:00 -05:00
  • 5439ce3ca2 Checkpoint: Correction du formulaire de modification des séquences : ajout du champ "Public cible" qui était manquant dans le dialogue de modification. Le champ est maintenant présent et modifiable dans les deux dialogues (création et modification). Manus Sandbox 2025-11-13 12:03:17 -05:00
  • 732b84fee8 Checkpoint: Correction : déplacement du champ "Public cible" des formations vers les séquences. Le public cible est maintenant défini au niveau de chaque séquence, permettant d'avoir des séquences différentes pour des publics différents au sein d'une même formation. Mise à jour complète du schéma de base de données, des procédures tRPC, du formulaire de création/édition de séquences avec affichage dans le tableau, et affichage du public cible pour chaque séquence sur la page d'inscription publique. Manus Sandbox 2025-11-13 11:18:02 -05:00
  • 5f4a049e05 Checkpoint: Ajout du champ "Public cible" dans la fiche formation avec liste déroulante identique à celle de "Fonction" des apprenants (Directeur, Chef de service, Autre). Mise à jour du schéma de base de données, des procédures tRPC, du formulaire de gestion des formations avec affichage dans le tableau, et affichage du public cible sur la page d'inscription publique. Manus Sandbox 2025-11-13 10:35:54 -05:00
  • 4152b88c91 Checkpoint: Correction finale du décalage horaire : parseLocalDateTime compense maintenant automatiquement le décalage UTC en utilisant getTimezoneOffset(). Cela garantit que l'heure saisie (par exemple 09:48) est stockée en UTC de manière à être affichée correctement en heure locale. Le paramètre timezone a été retiré de la connexion MySQL pour éviter les doubles conversions. Manus Sandbox 2025-11-13 10:24:37 -05:00
  • 7e0e9d0586 Checkpoint: Correction définitive du décalage horaire : parseLocalDateTime retourne maintenant directement une chaîne au format MySQL "YYYY-MM-DD HH:mm:ss" au lieu d'un objet Date JavaScript. Cela évite toute conversion UTC automatique lors de l'insertion en base de données. L'heure saisie (par exemple 09:48) est maintenant stockée et affichée exactement telle quelle sans décalage. Manus Sandbox 2025-11-13 10:17:35 -05:00
  • 1031c57f96 Checkpoint: Configuration du fuseau horaire Europe/Paris (UTC+1) dans la connexion MySQL pour éliminer le décalage horaire. Le paramètre timezone=+01:00 est ajouté automatiquement à l'URL de connexion pour forcer MySQL à stocker et récupérer les dates en heure locale française sans conversion UTC. Manus Sandbox 2025-11-13 09:59:12 -05:00
  • 1af1f3ceed Checkpoint: Correction de la gestion des objets Date JavaScript dans toutes les fonctions de formatage. Les dates récupérées de la base de données via tRPC sont automatiquement converties en objets Date JavaScript par SuperJSON. Toutes les fonctions formatDate et safeFormatDate ont été mises à jour pour détecter et gérer correctement les objets Date en plus des chaînes MySQL, évitant ainsi les erreurs "Format de date non reconnu". Manus Sandbox 2025-11-13 09:52:41 -05:00
  • 0b83cbd8cd Checkpoint: Correction complète et définitive du décalage horaire. Toutes les fonctions de formatage de dates ont été réécrites pour parser manuellement les chaînes MySQL sans passer par new Date() qui provoquait des conversions UTC. Les corrections incluent : parseLocalDateTime côté serveur, safeFormatDate dans le formulaire d'édition, formatDate dans AdminSequences, Inscription et AdminSequenceInscrits. L'heure saisie correspond désormais exactement à l'heure affichée partout dans l'application. Manus Sandbox 2025-11-13 03:23:12 -05:00
  • fedfcc59a4 Checkpoint: Correction définitive du décalage horaire lors de l'enregistrement des dates. La fonction parseLocalDateTime parse maintenant manuellement les composants de la date (année, mois, jour, heures, minutes) et construit un objet Date en utilisant le constructeur avec les valeurs locales, évitant ainsi toute conversion UTC automatique. L'heure saisie (ex: 15h00) est désormais correctement enregistrée en base sans décalage. Manus Sandbox 2025-11-12 12:27:03 -05:00
  • f266e8dde8 Checkpoint: Amélioration de la gestion d'erreurs pour la modification des séquences : ajout de validation dans parseLocalDateTime, protection contre les valeurs nulles dans handleEdit avec fonction safeFormatDate, remplacement de invalidate() par refetch() pour forcer le rafraîchissement immédiat, et ajout de logs détaillés côté serveur pour faciliter le débogage. Manus Sandbox 2025-11-12 12:01:14 -05:00
  • 7135a9d2c6 Checkpoint: Correction du décalage d'une heure entre la saisie et l'affichage des dates de séquences. Création d'un module dateUtils.ts avec des fonctions parseLocalDateTime et formatToLocalDateTime pour gérer correctement les conversions entre heure locale et UTC. Toutes les procédures de création et mise à jour de séquences utilisent maintenant ces fonctions pour préserver l'heure locale saisie par l'utilisateur. Manus Sandbox 2025-11-12 11:35:01 -05:00
  • d198d4ce3f Checkpoint: Correction du calcul du nombre d'inscrits sur la page d'inscription publique - le frontend utilisait uniquement capaciteMax au lieu de calculer capaciteMax - nbInscrits. Ajout de logs de débogage côté client et serveur pour investiguer le problème de modification des heures des séquences qui persiste malgré les corrections précédentes. Manus Sandbox 2025-11-12 10:44:41 -05:00
  • 12bfc657e5 Checkpoint: Correction du bug de modification des horaires des séquences. Le problème venait du fait que les champs de la procédure update étaient marqués comme optionnels, ce qui empêchait la mise à jour correcte des dates. Tous les champs sont maintenant obligatoires et les dates sont systématiquement supprimées puis recréées lors de la modification pour garantir la cohérence des données. Manus Sandbox 2025-11-12 10:25:13 -05:00
  • b60250e265 Checkpoint: Correction de l'erreur React "Cannot update a component while rendering" dans Home.tsx. L'appel de setLocation pour la redirection automatique des admins a été déplacé dans un useEffect pour respecter les règles de React et éviter les mises à jour de composants pendant le rendu. Manus Sandbox 2025-11-12 10:10:31 -05:00
  • 5c9b6637c4 Checkpoint: Refonte majeure : transformation du système de sessions en séquences avec support de jusqu'à 4 dates par séquence. L'inscription à une séquence inscrit automatiquement l'apprenant à toutes les dates. Mise à jour complète du backend (schéma DB, procédures tRPC, emails, exports) et du frontend (AdminSequences, AdminSequenceInscrits, Inscription, Admin). Toutes les fonctionnalités existantes (filtres, statistiques, exports PDF/Excel, emails automatiques) sont préservées et adaptées au nouveau modèle. Manus Sandbox 2025-11-12 09:57:58 -05:00
  • ca9b1c3d37 Checkpoint: Implémentation des trois améliorations demandées : ajout de filtres par fonction sur les pages apprenants et inscrits, création d'un graphique circulaire de répartition par fonction sur le tableau de bord avec recharts, et personnalisation des templates d'emails (confirmation, teaser, rappel J-7) incluant la fonction de l'apprenant dans la salutation. Manus Sandbox 2025-11-12 09:35:58 -05:00
  • 9d591b64ba Checkpoint: Ajout du champ "Fonction" (Directeur, Chef de service, Autre) dans la fiche apprenant : mise à jour du schéma de base de données, ajout dans les formulaires d'inscription et de gestion des apprenants, affichage dans le tableau des apprenants, et intégration dans tous les exports (Excel, PDF, feuille de présence). Manus Sandbox 2025-11-12 09:30:30 -05:00
  • 2e75838bed Checkpoint: Ajout de filtres complets sur la page de gestion des inscrits : recherche par nom/prénom/email, filtre par statut d'inscription (confirmée/liste d'attente/annulée), filtre par code établissement, tri par date d'inscription ou nom alphabétique, avec compteur de résultats filtrés. Manus Sandbox 2025-11-12 09:21:21 -05:00
  • 8a77f62723 Checkpoint: Ajout d'un système complet de filtres et de recherche : filtres par date, lieu, statut et capacité pour les sessions ; recherche par nom/description pour les formations ; recherche multi-critères pour les apprenants. Compteurs de résultats inclus. Manus Sandbox 2025-11-12 09:11:45 -05:00
  • 2c5bc825af Checkpoint: Corrections : mise à jour automatique de la liste des apprenants après inscription + envoi de notifications par email via le système Manus lors des inscriptions Manus Sandbox 2025-11-12 08:58:29 -05:00
  • 0fc35596d9 Checkpoint: Application complète de gestion des formations Manager Itinova avec toutes les fonctionnalités : gestion des formations/sessions/apprenants, système d'inscription avec validations, génération d'invitations Outlook, emails automatiques, exports PDF/Excel, et documentation complète. Manus Sandbox 2025-11-12 08:38:33 -05:00
  • 641200f3a4 Initial project bootstrap Manus Sandbox 2025-11-12 08:24:07 -05:00