✅ **1. Affichage dans le tableau des séquences**
- Nouvelle colonne "Formateur" ajoutée au tableau de gestion
- Affiche le nom du formateur ou "-" si non renseigné
✅ **2. Liste prédéfinie avec autocomplétion**
- Nouvelle table `formateurs` dans la base de données
- Procédures tRPC (list, create, delete) pour gérer les formateurs
- Composant `FormateurCombobox` avec autocomplétion intelligente
- Possibilité d'ajouter rapidement un nouveau formateur depuis le formulaire
- Recherche en temps réel parmi les formateurs existants
✅ **3. Inclusion dans les emails d'invitation**
- Le nom du formateur est maintenant affiché dans les emails de confirmation d'inscription
- Affichage conditionnel (uniquement si un formateur est renseigné)
- Améliore la communication avec les apprenants
Ces améliorations standardisent la gestion des formateurs, évitent les doublons/fautes de frappe, et enrichissent l'information transmise aux apprenants.
✅ Base de données : colonne "formateur" ajoutée à la table sequences (VARCHAR 255, nullable)
✅ Backend : procédures tRPC mises à jour
- sequences.create : champ formateur ajouté (optionnel)
- sequences.update : champ formateur ajouté (optionnel)
✅ Frontend : formulaires mis à jour
- Formulaire de création : champ "Formateur" ajouté avec placeholder
- Formulaire de modification : champ "Formateur" ajouté avec placeholder
- Le champ est non obligatoire comme demandé
Le champ formateur permet maintenant de spécifier le nom du formateur pour chaque séquence de formation lors de la création ou de la modification.
✅ Base de données : enum publicCible mis à jour avec la valeur "tous"
✅ Frontend mis à jour dans 4 fichiers :
- AdminSequences.tsx : ajout de "tous" dans les types TypeScript, options de sélection et badges (couleur violet)
- AdminSequenceInscrits.tsx : ajout de "tous" dans les fonctions de labels et badges
- AdminRapportPublicCible.tsx : ajout de "tous" dans les fonctions de labels et badges
- Inscription.tsx : ajout de "tous" dans le mapping, l'affichage et la logique d'alerte (pas d'alerte si public cible = "Tous")
Les séquences peuvent maintenant être créées avec le public cible "Tous", ce qui permet de cibler tous les profils sans distinction.
- Authentification locale avec email/mot de passe
- OAuth Manus pour les utilisateurs de la plateforme
Le contexte tRPC gère automatiquement les deux types de tokens (JWT local et JWT OAuth).