diff --git a/client/src/pages/AdminGestionAttestations.tsx b/client/src/pages/AdminGestionAttestations.tsx index 8cb3abd..f635398 100644 --- a/client/src/pages/AdminGestionAttestations.tsx +++ b/client/src/pages/AdminGestionAttestations.tsx @@ -183,18 +183,23 @@ function UploadAttestationDialog({ const file = e.target.files?.[0]; if (!file) return; - if (file.type !== 'application/pdf') { - toast.error('Seuls les fichiers PDF sont acceptés'); - return; - } - - if (file.size > 10 * 1024 * 1024) { - toast.error('Le fichier ne doit pas dépasser 10 Mo'); - return; - } - + // Afficher immédiatement l'état de chargement setUploading(true); setUploadProgress(0); + + // Validation du type de fichier + if (file.type !== 'application/pdf') { + toast.error('Seuls les fichiers PDF sont acceptés'); + setUploading(false); + return; + } + + // Validation de la taille du fichier + if (file.size > 10 * 1024 * 1024) { + toast.error('Le fichier ne doit pas dépasser 10 Mo'); + setUploading(false); + return; + } try { const formData = new FormData(); formData.append('file', file); diff --git a/todo.md b/todo.md index 9774ff8..b16c8f1 100644 --- a/todo.md +++ b/todo.md @@ -1470,3 +1470,5 @@ - [x] Corriger le remplacement des variables dans le template email d'attestation - [x] Corriger le bug de la modal de chargement d'attestation qui reste bloquée sur l'état précédent + +- [x] Améliorer le feedback visuel pendant le chargement du fichier d'attestation (indicateur immédiat)