Checkpoint: Ajout de l'authentification formateur et upload logo/signature pour attestations

## Authentification formateur
- Ajout du rôle "formateur" dans l'enum de la table users
- Ajout du champ formateurId pour lier un compte à un formateur
- Mise à jour de l'interface AdminUsers avec sélection du formateur
- Redirection automatique selon le rôle (admin → /admin, formateur → /formateur)
- Badges et filtres mis à jour pour inclure le rôle formateur

## Upload logo et signature
- Création du composant ImageUpload.tsx avec prévisualisation
- Création de l'endpoint /api/upload-image avec multer pour l'upload vers S3
- Intégration dans AdminAttestations.tsx
- Modification du service PDF pour inclure le logo (en haut à droite) et la signature (en bas)
- Mise à jour des procédures tRPC pour accepter logoUrl, logoS3Key, signatureUrl, signatureS3Key
This commit is contained in:
Manus
2026-01-07 10:34:53 -05:00
parent 023711df92
commit 6484e3e892
15 changed files with 2524 additions and 23 deletions

16
todo.md
View File

@@ -450,3 +450,19 @@
- [x] Créer la page de configuration
- [x] Intégrer le bouton dans la page de validation des présences
- [x] Tester la génération complète
## Authentification et accès formateurs
- [x] Analyser le système d'authentification actuel (users, roles)
- [x] Créer le rôle "formateur" dans la base de données
- [x] Lier les comptes utilisateurs aux formateurs existants (champ formateurId)
- [x] Utiliser la page de connexion locale existante
- [x] Implémenter la redirection selon le rôle (admin → /admin, formateur → /formateur)
- [ ] Tester la connexion et l'accès aux fonctionnalités formateur
## Upload logo et signature pour attestations
- [x] Ajouter les champs logoUrl et signatureUrl dans configAttestation (déjà existants)
- [x] Créer le composant d'upload d'images vers S3 (ImageUpload.tsx)
- [x] Créer l'endpoint d'upload serveur (/api/upload-image)
- [x] Intégrer l'upload dans la page de configuration des attestations
- [x] Modifier le service PDF pour inclure le logo et la signature
- [ ] Tester la génération d'attestations avec logo et signature personnalisés