Commit Graph

  • 2cac56b8c6 fix: corriger le flux de réinitialisation par e-mail main manus-admin 2026-09-02 11:30:37 +02:00
  • 166729bdbc feat: ouvrir directement la connexion locale manus-admin 2026-08-31 16:04:00 +02:00
  • 983119a4f1 fix: isoler les certificats TLS des domaines formation manus-admin 2026-08-22 12:05:08 +02:00
  • 979a2b4b26 fix: rendre le démarrage production reproductible manus-admin 2026-08-22 11:55:43 +02:00
  • ea05e9ec6a ci: trigger manus-admin 2026-08-21 13:21:06 +02:00
  • b6ca46f953 CI fix : corrections pour CI production Manus CI 2026-08-21 11:48:10 +00:00
  • d580c9a107 CI : workflow validate.yml, manifeste ci.required:true, garde VITEST, tests isolés Manus CI 2026-08-21 11:10:29 +00:00
  • 62e65ed32a chore: versionner le manifeste de déploiement Manus 2026-08-18 09:42:16 +02:00
  • 81d1871d40 Checkpoint: Fix: ajout timeZone Europe/Paris dans tous les toLocaleDateString avec heure dans emailService.ts et exportService.ts — corrige l'affichage 7h00 au lieu de 9h00 dans les mails de rappel Manus 2026-07-15 10:30:59 +00:00
  • f3170d5f50 Checkpoint: V1.28 - Déploiement PROD de la fonctionnalité "Gestion des plans de formations" sur 180.149.196.138. Image Docker v2 construite et déployée. Règle iptables ajoutée pour autoriser le réseau Docker à accéder à MariaDB. Todo.md mis à jour. Manus 2026-07-11 03:50:37 +00:00
  • 61ba1a8d1d Checkpoint: Fonctionnalité complète "Gestion des plans de formations" : - 3 nouvelles tables DB : catalogueFormation, planFormation, planFormationItem - Backend tRPC : routers catalogue et planFormation avec CRUD complet, import CSV/Excel, suggestion automatique - Frontend : pages PlanFormation, PlanFormationDetail, CatalogueFormation + menu sidebar - Déployé sur le serveur de recette (TEST) : https://formations.recette.santinova-soft.org - Portail applicatif mis à jour avec la carte de l'application Manus 2026-05-27 17:31:02 +00:00
  • 6952ae6907 Checkpoint: Implémentation complète de la fonctionnalité "Gestion des plans de formations" : - Schéma DB : 3 nouvelles tables (catalogueFormation, planFormation, planFormationItem) - Backend tRPC : routers catalogue et planFormation (CRUD, import bulk CSV, suggestions, toggle validée Itinova) - Frontend : page Plans de formation (liste par établissement/année, CRUD, soumission/validation) - Frontend : page Détail plan (items, liaison catalogue, suggestions automatiques) - Frontend : page Catalogue de formation (liste, filtres thème/Itinova/OPCO, import CSV, badges) - Menu sidebar : nouvelle section "Plans de formations" avec sous-menus - Tests unitaires : 13 tests (scoring suggestions, validation données, parsing CSV) Manus 2026-05-27 16:39:18 +00:00
  • 54159fd872 Checkpoint: V1.27 - Optimisation taille PDFs feuille de présence : compression pngjs (résolution 500x160px), réduction de ~40 Mo à < 1 Mo par fichier Manus 2026-03-04 09:40:42 -05:00
  • 4063e298b9 Checkpoint: V1.26 - Feuille de présence : un PDF par jour (A4 portrait, colonnes sig. matin + après-midi sur même ligne, zone signature formateur). Correction des bugs d'upload attestations et de plantage PDF. Manus 2026-03-02 04:39:32 -05:00
  • 460d2f3922 Checkpoint: V1.25 - Correction plantage génération feuille de présence Manus 2026-03-02 04:21:23 -05:00
  • 2c3891f979 Checkpoint: V1.24 - Correction erreur SQL upload attestations Manus 2026-02-27 05:38:01 -05:00
  • 429d6cf264 Checkpoint: V1.23 - Amélioration boîte de dialogue d'ajout manuel d'apprenant : tri alphabétique (nom puis prénom) et champ de recherche en temps réel sur nom/prénom/email Manus 2026-02-26 12:52:34 -05:00
  • feee0d803e Checkpoint: V1.22 - Correction complète des invitations ICS : envoi des 3 fichiers + encodage UTF-8 correct Manus 2026-02-26 10:35:14 -05:00
  • 77e5544a90 Checkpoint: Correction du bug d'importation des invitations Outlook (ICS) - ajout de l'encodage UTF-8 explicite et des en-têtes corrects pour les pièces jointes calendrier Manus 2026-02-26 09:42:34 -05:00
  • 35eb0e78f8 Checkpoint: Implémentation du paramètre notificationsActives pour contrôler les notifications d'inscription et d'annulation aux formateurs. Le paramètre permet maintenant de désactiver les notifications formateur tout en gardant les rappels actifs. Déployé sur TEST. Manus 2026-02-26 09:00:42 -05:00
  • bf12b9b680 Checkpoint: V1.20 - Amélioration de l'envoi d'attestations par groupe. Le bouton d'envoi par séquence est maintenant toujours visible dès qu'il y a des attestations disponibles, permettant d'envoyer les nouvelles attestations ou de renvoyer celles déjà envoyées. Message de confirmation adapté selon la situation. Manus 2026-02-26 07:53:53 -05:00
  • 198656947f Checkpoint: V1.19 - Ajout de l'affichage de l'URL complète sous le QR code d'émargement apprenant. L'URL est maintenant visible et cliquable, permettant de tester l'émargement directement depuis un navigateur web sans avoir besoin de scanner le QR code. Manus 2026-02-26 03:30:45 -05:00
  • 844118251b Checkpoint: V1.18 - Correction définitive et robuste de l'erreur "(void 0) is not a function" lors de la suppression de dates. Utilisation de useCallback pour stabiliser la référence de la fonction removeDate et éviter les problèmes de closure React. Préservation des signatures lors de l'ajout de dates grâce au champ id dans le schéma Zod. Manus 2026-02-11 09:16:33 -05:00
  • 33abf134e4 Checkpoint: V1.17 PROD - Correction définitive du bug de perte de signatures déployée sur production. Le schéma Zod de sequences.update inclut maintenant le champ id optionnel, permettant la mise à jour intelligente des dates sans suppression des signatures existantes. Manus 2026-02-11 08:36:51 -05:00
  • 0f0695a4c7 Checkpoint: V1.17 - Correction DÉFINITIVE du bug de perte de signatures : ajout du champ id dans le schéma Zod de sequences.update. Le backend peut maintenant recevoir et traiter les IDs des dates existantes envoyés par le frontend. Manus 2026-02-11 08:32:22 -05:00
  • 69fd3f01cc Checkpoint: V1.16 - Correction définitive perte de signatures lors de l'ajout de dates dans une séquence. Le frontend envoie maintenant les IDs des dates existantes pour permettre au backend de les mettre à jour au lieu de les supprimer/recréer. Manus 2026-02-11 08:24:34 -05:00
  • 6761044f4a Checkpoint: Correction critique : préservation des signatures lors de l'ajout/modification de dates dans une séquence - Remplacement de la logique de suppression/recréation par une mise à jour intelligente Manus 2026-02-11 08:07:04 -05:00
  • 2b01c4ba6c Checkpoint: Correction définitive du stockage local pour les signatures formateur - Remplacement de storagePut() par fs.writeFileSync() pour éviter les timeouts liés à l'API Manus non configurée sur le VPS Manus 2026-02-10 11:46:00 -05:00
  • 3e7b15c54c Rollback to 9c6a5028 Manus 2026-02-10 11:34:51 -05:00
  • 5cf4313f10 Checkpoint: Correction de l'affichage des présences formateur dans la fenêtre des émargements Manus 2026-02-10 11:30:23 -05:00
  • 9c6a5028e0 Rollback to fcb05034 Manus 2026-02-10 11:15:22 -05:00
  • 1c5ed12845 Checkpoint: Correction définitive de l'erreur "fetch failed" lors de l'émargement formateur Manus 2026-02-10 10:58:11 -05:00
  • 343aca9de7 Rollback to fcb05034 Manus 2026-02-10 10:41:43 -05:00
  • 80c5797321 Checkpoint: Correction du bug "Formateur introuvable avec cet email" Manus 2026-02-10 10:35:03 -05:00
  • fcb0503488 Checkpoint: Correction de deux bugs critiques de l'émargement formateur Manus 2026-02-10 10:23:55 -05:00
  • 6e27e3909e Checkpoint: Correction du bug "inscription requise pour un apprenant" lors de l'émargement formateur Manus 2026-02-10 10:04:15 -05:00
  • 62bf5f3a99 Checkpoint: Ajout d'un cadre bleu (border-2 border-blue-500) autour des images de signature des apprenants et formateurs dans la page d'émargement. L'effet hover passe au bleu foncé (border-blue-700) pour une meilleure interactivité visuelle. Manus 2026-02-10 09:54:35 -05:00
  • 023a047ee0 Checkpoint: Affichage des images de signature (matin et après-midi) directement dans la page d'émargement pour les apprenants et formateurs. Les images s'affichent en miniature (h-8 w-16) à côté des informations de présence et sont cliquables pour agrandissement. Manus 2026-02-10 05:09:37 -05:00
  • 672494ccc0 Checkpoint: Intégration des signatures formateurs dans la feuille de présence PDF - Les signatures tactiles des formateurs (matin et après-midi) sont maintenant affichées dans la section dédiée de la feuille de présence au lieu des lignes vides Manus 2026-02-09 11:53:03 -05:00
  • 5d8054b4b8 Checkpoint: Modification du format d'affichage des signatures formateurs Manus 2026-02-09 11:43:12 -05:00
  • 04d8faf919 Checkpoint: Amélioration de l'ergonomie de l'encart des signatures formateurs Manus 2026-02-09 11:10:56 -05:00
  • 37924ad4fd Checkpoint: Ajout d'un encart dédié pour afficher les signatures des formateurs sur la page d'émargement numérique Manus 2026-02-09 11:04:09 -05:00
  • a40e0bf6cd Checkpoint: Checkpoint: Restauration de la procédure sequences.getDatesByFormateurToken et de la fonction getSequenceByFormateurToken dans db.ts. Le système d'émargement formateur fonctionne maintenant correctement avec chargement des dates. Prochaine étape : corriger l'affichage du message "[ERREUR MUTATION]" pour les doublons. Manus 2026-02-06 09:43:43 -05:00
  • 98c3b21ec1 Checkpoint: Implémentation complète de la fonctionnalité QR code formateur : - Procédure generateQRCodeFormateur dans routers.ts - Fonction validerPresenceFormateur dans presenceDb.ts - Bouton "QR Code Formateur" dans FormateurEmargement.tsx - Page EmargementFormateurScan.tsx pour le scan du QR code - Route /emargement-formateur/{token} - Gestion automatique de la date du jour - Stockage de la signature sur S3 - Champ qrCodeFormateurToken dans le schéma sequences Manus 2026-02-03 11:04:37 -05:00
  • 70f9055073 Rollback to eebcb648 Manus 2026-02-02 17:32:58 -05:00
  • 04001e7bcd Checkpoint: Implémentation du QR code dédié pour l'émargement formateur avec signature tactile Manus 2026-02-02 15:11:18 -05:00
  • f9983adada Checkpoint: Correction du bug d'émargement formateur bloqué sur la saisie d'email Manus 2026-02-02 14:18:46 -05:00
  • e8410230a9 Checkpoint: Implémentation de l'émargement formateur par QR code avec signature tactile Manus 2026-02-02 13:24:08 -05:00
  • eebcb64848 Checkpoint: Session d'améliorations multiples : - Amélioration du feedback visuel lors du chargement des attestations (affichage immédiat du nom de fichier) - Ergonomie unifiée pour tous les uploads de fichiers (composant FileUpload) - Réorganisation de la modal des rappels (largeur optimisée, disposition horizontale) - Modification de la feuille de présence (signatures formateur matin/après-midi sans date) - Permissions de gestion des attestations pour formateurs et super-formateurs - Rafraîchissement automatique de la page d'émargement numérique (30 secondes) - Indicateur visuel de rafraîchissement "Mis à jour il y a X secondes" - Vérification empêchant l'émargement avant la date de formation Manus 2026-02-02 10:59:38 -05:00
  • b74e575d11 Checkpoint: Retrait des compteurs dynamiques de taux de présence et ajout d'une vérification backend empêchant l'émargement avant la date de formation concernée Manus 2026-02-02 10:27:19 -05:00
  • 68df39a072 Checkpoint: Ajout d'un indicateur visuel de rafraîchissement (badge "Mis à jour il y a X secondes" avec icône animée) et de statistiques en temps réel du taux de présence par période (matin/après-midi) sur la page d'émargement numérique Manus 2026-02-02 10:17:14 -05:00
  • 0163b46e5d Checkpoint: Ajout d'un rafraîchissement automatique toutes les 30 secondes sur la page d'émargement numérique pour mettre à jour automatiquement la liste des inscrits et des présences sans recharger manuellement la page Manus 2026-02-02 10:09:48 -05:00
  • 42d57c6e7c Checkpoint: Ajout des permissions de gestion des attestations pour les formateurs et super-formateurs : création de formateurProcedure, fonction canAccessSequence pour vérifier les accès par séquence, modification des procédures uploadDocument, deleteDocument, sendAttestation et sendAllAttestations avec vérifications de permissions Manus 2026-02-02 09:53:28 -05:00
  • fadadf0d7d Checkpoint: Retrait de la ligne de date en dessous des signatures du formateur dans la feuille de présence, ne conservant que les deux lignes de signature (Matin et Après-midi) Manus 2026-02-02 09:41:57 -05:00
  • b1a140449a Checkpoint: Modification de la feuille de présence : ajout de deux colonnes de signature pour le formateur (Matin et Après-midi), disposition horizontale optimisée, date unique en dessous des signatures Manus 2026-02-02 09:38:48 -05:00
  • fec271c19a Checkpoint: Réorganisation complète de la modal des rappels : largeur optimisée (50vw), labels et champs sur une seule ligne horizontale pour Configuration générale et Timing d'envoi, pièces jointes compactes avec icône et textes alignés, 4 zones colorées distinctes, espacement optimisé pour écran 24 pouces Manus 2026-02-02 08:00:46 -05:00
  • 014c2cd68b Checkpoint: Unification de l'ergonomie de chargement de fichiers dans toute l'application : le composant FileUpload utilise maintenant la même interface élégante que la boîte de dialogue d'attestations. Affichage immédiat du nom de fichier, animation de chargement avec barre de progression, feedback visuel cohérent (gris → bleu → vert). Cette amélioration s'applique automatiquement à toutes les pièces jointes des rappels (2 par rappel). Déployé sur le VPS de production. Manus 2026-02-02 06:13:58 -05:00
  • a77123e07f Checkpoint: Solution finale pour le feedback instantané lors de l'upload d'attestations : affichage immédiat du nom du fichier sélectionné dans la boîte de dialogue dès la sélection. Le nom reste visible pendant toute la durée de l'upload avec la barre de progression. Cette approche simple et fiable résout définitivement le problème de latence en donnant un feedback visuel instantané à l'utilisateur. Déployé sur le VPS de production. Manus 2026-01-30 09:54:14 -05:00
  • e68949baeb Checkpoint: Résolution du problème de latence d'affichage avec double requestAnimationFrame : cette technique garantit que le navigateur peint l'animation à l'écran avant de bloquer sur le fetch. Le premier requestAnimationFrame permet à React de mettre à jour l'état, le second force le navigateur à afficher visuellement l'animation avant de démarrer l'upload. Déployé sur le VPS de production. Manus 2026-01-30 09:37:18 -05:00
  • 1bbbe842b5 Checkpoint: Résolution définitive de la latence d'affichage du message d'upload : utilisation de flushSync() de React DOM pour forcer un rendu synchrone et immédiat de l'interface avant le traitement du fichier. L'animation "Upload en cours..." s'affiche maintenant instantanément dès la sélection du fichier, sans aucune latence. Déployé sur le VPS de production. Manus 2026-01-30 09:09:14 -05:00
  • f9401dcb72 Checkpoint: Correction définitive de la latence d'affichage du message d'upload : ajout d'un délai de 50ms après setUploading(true) pour permettre à React de rafraîchir l'interface avant de démarrer le traitement du fichier. L'animation "Upload en cours..." s'affiche maintenant instantanément dès la sélection du fichier. Déployé sur le VPS de production. Manus 2026-01-30 08:57:56 -05:00
  • 41af13c47e Checkpoint: Amélioration du feedback visuel pendant le chargement du fichier d'attestation : l'indicateur de progression s'affiche maintenant immédiatement dès la sélection du fichier, sans délai d'attente. Déployé sur le VPS de production. Manus 2026-01-30 08:50:31 -05:00
  • c102572403 Checkpoint: Corrections multiples sur les attestations : bug de modal bloquée corrigé, remplacement des variables dans l'email d'attestation fonctionnel, et type attestation ajouté au schéma de validation Manus 2026-01-30 08:46:39 -05:00
  • 8bfc851fe8 Checkpoint: Corrections multiples : 1) Bug de statut d'attestation résolu - le statut passe maintenant à "Aucune attestation" après suppression. 2) Erreur de validation du template attestation corrigée - ajout de "attestation" dans l'enum des types de templates autorisés. 3) Interface de chargement d'attestations modernisée. Déployé sur le VPS de production. Manus 2026-01-30 08:26:24 -05:00
  • 15728cda48 Checkpoint: Correction du bug où le statut restait "envoyé" après la suppression d'une attestation. Maintenant, lors de la suppression, les champs emailEnvoye et dateEnvoiEmail sont réinitialisés, faisant passer le statut à "Aucune attestation". Déployé sur le VPS de production. Manus 2026-01-30 08:12:31 -05:00
  • 7032fd890f Checkpoint: Interface modernisée de chargement d'attestations avec design coloré (dégradés bleu-violet), icônes grandes et expressives, zone de drop stylisée, et meilleure hiérarchie visuelle. Déployé sur le VPS de production. Manus 2026-01-30 08:04:36 -05:00
  • 806366db01 Checkpoint: Correction de l'erreur SQL lors du chargement manuel d'attestations - modification de la requête dans gestionAttestationsDb.ts pour sélectionner uniquement les colonnes existantes au lieu de toutes les colonnes Manus 2026-01-30 07:41:39 -05:00
  • 53609e901e Checkpoint: Ajout d'une colonne 'Mode d'envoi' dans l'historique des attestations pour distinguer les envois manuels des envois automatiques. Modifications: ajout du champ modeEnvoi dans la table historiqueAttestations, mise à jour du scheduler d'attestations, et ajout de la colonne dans l'interface utilisateur. Déployé sur le VPS de production. Manus 2026-01-30 06:01:30 -05:00
  • dd581594b5 Checkpoint: Implémentation de l'envoi automatique des attestations : création d'un scheduler qui vérifie quotidiennement (à 10h00) les séquences terminées la veille et envoie automatiquement les attestations par email pour les formations ayant le mode d'envoi automatique activé (modeEnvoi='auto'). Le système utilise le template email personnalisable créé précédemment et enregistre les envois dans les logs de notifications pour éviter les doublons. Déployé et testé sur le VPS. Manus 2026-01-30 04:37:31 -05:00
  • 26a16327cf Checkpoint: Correction et finalisation du template email attestation : ajout du type 'attestation' dans le frontend, création automatique du template au démarrage de l'application, déploiement réussi sur le VPS. Le template est maintenant visible et modifiable dans l'interface de gestion des templates. Manus 2026-01-30 04:04:16 -05:00
  • 493366fa10 Checkpoint: Ajout d'un template d'email personnalisable pour l'envoi des attestations de formation. Le template utilise des variables dynamiques ({{prenomApprenant}}, {{nomApprenant}}, {{nomFormation}}) et peut être modifié depuis l'interface de gestion des templates. Déployé sur le VPS avec migration SQL. Manus 2026-01-29 11:58:20 -05:00
  • a221deb4f1 Checkpoint: Correction des permissions : les super formateurs n'ont plus accès à la section Configuration, uniquement à Gestion, Traçabilité et Analyses. Manus 2026-01-29 11:41:13 -05:00
  • c16392900c Checkpoint: Ajout du rôle super_formateur avec accès à toutes les formations et séquences. Migration SQL appliquée en local et sur le VPS de production. Manus 2026-01-29 11:35:35 -05:00
  • 1a8d598339 Checkpoint: Correction du bug d'envoi de la deuxième pièce jointe dans les emails de rappel. Les paramètres attachmentUrl2, attachmentFilename2 et attachmentMimeType2 ont été ajoutés dans la procédure d'envoi de test. Déployé et testé sur le VPS. Manus 2026-01-28 12:32:05 -05:00
  • f0f3d83fae Checkpoint: Correction de l'affichage des labels des pièces jointes qui apparaissaient en double. Ajout d'un prop label au composant FileUpload pour personnaliser le texte. Déployé sur le VPS. Manus 2026-01-28 12:21:05 -05:00
  • 86d3d437bd Checkpoint: Évolution du système de rappels pour permettre jusqu'à 2 pièces jointes au lieu d'une seule. Migration SQL appliquée en local et sur le VPS de production. Les rappels existants sont préservés. Manus 2026-01-28 10:13:32 -05:00
  • 8c6dda473a Checkpoint: Intégration complète des signatures tactiles (matin et après-midi) dans les feuilles de présence PDF. Correction du bug apres-midi vs apres_midi. Logs de debug retirés. Déployé sur VPS. Manus 2026-01-28 09:44:13 -05:00
  • 700e4956fc Checkpoint: Correction du bug : signatures manquantes dans les feuilles de présence PDF Manus 2026-01-28 06:14:11 -05:00
  • 3029e797c9 Checkpoint: Déploiement VPS réussi - Intégration des signatures tactiles dans les feuilles de présence PDF Manus 2026-01-28 05:54:40 -05:00
  • 8f808980dc Checkpoint: Intégration des signatures tactiles dans les feuilles de présence PDF : Manus 2026-01-28 05:21:57 -05:00
  • a0141e3f71 Checkpoint: Système de signature tactile pour émargement numérique - Version finale : Manus 2026-01-28 02:27:52 -05:00
  • 5821f82eb2 Rollback to feb708bb Manus 2026-01-27 08:14:31 -05:00
  • 6c48a8fae0 Checkpoint: Correction du bug d'affichage de l'icône de signature : - Ajout des champs signatureUrl, signatureS3Key et dateSigned dans getPresencesBySequence - L'icône de signature s'affiche maintenant correctement quand une signature existe Manus 2026-01-27 07:48:51 -05:00
  • abca9956ff Checkpoint: Correction de l'affichage des signatures dans l'émargement : - Format modifié : "Prénom Nom a validé(e) le date et heure" - Icône de signature agrandie (h-5 w-5) et plus visible avec hover bleu - Ajout d'un title "Voir la signature" sur l'icône - Espacement amélioré (ml-3) Manus 2026-01-27 07:44:50 -05:00
  • feb708bb3e Checkpoint: Affichage des informations de signature dans la fenêtre d'émargement numérique : - Ajout des champs signatureUrl, signatureS3Key et dateSigned dans getPresencesByInscription - Affichage du nom du signataire, date/heure de validation à côté de chaque puce matin/après-midi - Icône cliquable pour visualiser la signature en grand format - Modale Dialog pour afficher la signature manuscrite - Fonction getPresenceInfo pour récupérer les détails de présence - Interface moderne avec icône de stylo SVG pour les signatures Manus 2026-01-27 07:38:59 -05:00
  • 5356819ceb Checkpoint: Modification du stockage des signatures d'émargement pour utiliser le système de fichiers local au lieu de S3 : - Remplacement de storagePut par fs.writeFileSync dans routers.ts - Structure de dossiers : uploads/signatures/[formation-id]-[sequence-id]/ - Noms de fichiers uniques avec crypto.randomBytes - URLs publiques relatives : /uploads/signatures/[formation-id]-[sequence-id]/[fichier].png - Correction de l'erreur "fetch failed" causée par l'inaccessibilité de forge.manus.im sur le VPS Manus 2026-01-27 07:28:09 -05:00
  • 1e915acd5b Checkpoint: Implémentation de la signature manuscrite tactile pour l'émargement via QR code : - Intégration du composant SignaturePad dans EmargementScan.tsx - Ajout des champs de signature dans la table presences (signatureUrl, signatureS3Key, dateSigned) - Modification de la procédure presences.valider pour accepter et uploader la signature en S3 - Stockage automatique de l'URL et de la clé S3 dans la base de données - Correction des types nullables dans exportService.ts (codeEtablissement, fonction) - Les apprenants doivent maintenant signer avec le doigt sur l'écran avant de valider leur présence Manus 2026-01-27 04:29:01 -05:00
  • b3b808145c Checkpoint: Ajout d'une confirmation visuelle améliorée après émargement réussi : animations fluides, heure d'enregistrement précise et design moderne Manus 2026-01-25 15:20:13 -05:00
  • 61f0e81a9d Checkpoint: Correction du problème d'émargement via QR code : ajout de la colonne commentaire manquante dans la table presences et correction de la requête SQL avec mysqlEnum Manus 2026-01-25 15:13:26 -05:00
  • ab65ce6690 Checkpoint: Correction de l'erreur SQL lors de la validation de présence via QR code - retrait du .limit(1) qui causait un problème de paramètres avec mysqlEnum dans Drizzle ORM Manus 2026-01-25 14:31:13 -05:00
  • 935e6959ba Checkpoint: Correction complète du bouton œil pour les formateurs - changement de adminProcedure à protectedProcedure pour apprenants.getById ET apprenants.getInscriptions Manus 2026-01-25 12:59:59 -05:00
  • 71c790e9b4 Checkpoint: Correction du bouton œil dans la page apprenants pour les formateurs - changement de adminProcedure à protectedProcedure pour apprenants.getInscriptions Manus 2026-01-25 12:49:08 -05:00
  • 590232be89 Checkpoint: Correction définitive de la page de gestion des attestations : - Affichage correct de la liste des apprenants par séquence - Date de début affichée dans l'en-tête de chaque séquence - Tri chronologique des séquences par date de début - Filtre fonctionnel : Toutes les séquences / Séquences terminées / Séquences à venir - Badge de statut visuel (Terminée en vert, À venir en orange) - Compteur d'envois par séquence - Bouton "Tout renvoyer" pour envoi groupé par séquence - Les données sont maintenant correctement récupérées et affichées Manus 2026-01-25 11:44:14 -05:00
  • 2ebc3dfa99 Checkpoint: Améliorations de la page de gestion des attestations : - Affichage de la date de début dans l'en-tête de chaque séquence - Tri chronologique des séquences par date de début - Filtre fonctionnel : Toutes les séquences / Séquences terminées / Séquences à venir - Badge de statut visuel (Terminée en vert, À venir en orange) - Compteur d'envois par séquence - Bouton "Tout renvoyer" pour envoi groupé par séquence - Correction robuste de l'affichage des apprenants Manus 2026-01-25 11:29:16 -05:00
  • 8efcb65f0f Rollback to 8e20ac40 Manus 2026-01-25 11:19:22 -05:00
  • 727a29fa63 Checkpoint: Correction de l'erreur SQL MIN() vide dans la récupération de la première date des séquences - remplacé par post-traitement JavaScript Manus 2026-01-25 11:12:50 -05:00
  • b32487aa4d Checkpoint: Améliorations de la gestion des attestations : - Affichage de la date de début dans l'en-tête de chaque séquence - Bouton d'envoi groupé par séquence - Filtre séquences terminées/à venir Manus 2026-01-25 09:16:22 -05:00
  • 8e20ac40dd Checkpoint: Correction finale de l'affichage vide des apprenants dans la gestion des attestations. Problème résolu en aplatissant la structure de la requête Drizzle ORM (structure imbriquée non supportée) et en restructurant les résultats côté serveur. Manus 2026-01-25 09:06:36 -05:00
  • f51e027a5c Checkpoint: Correction de l'affichage vide des apprenants dans la gestion des attestations après le regroupement par séquence. Le problème venait de la référence à un champ premiereDate inexistant. Solution: utiliser l'ID de séquence pour le tri et le regroupement. Manus 2026-01-25 09:03:13 -05:00
  • 77a65cbfa2 Checkpoint: Ajout du tri chronologique des séquences dans la gestion des attestations: - Modification du backend pour inclure la première date de chaque séquence - Tri des séquences par ordre chronologique (première date en premier) - Les séquences sont maintenant affichées dans l'ordre temporel pour une meilleure organisation Manus 2026-01-25 08:56:53 -05:00