diff --git a/Front-End/src/components/Structure/Files/FilesGroupsManagement.js b/Front-End/src/components/Structure/Files/FilesGroupsManagement.js index 25261eb..cdd9646 100644 --- a/Front-End/src/components/Structure/Files/FilesGroupsManagement.js +++ b/Front-End/src/components/Structure/Files/FilesGroupsManagement.js @@ -47,8 +47,6 @@ export default function FilesGroupsManagement({ const [groupToEdit, setGroupToEdit] = useState(null); const [reloadTemplates, setReloadTemplates] = useState(false); - const [popupVisible, setPopupVisible] = useState(false); - const [popupMessage, setPopupMessage] = useState(''); const [removePopupVisible, setRemovePopupVisible] = useState(false); const [removePopupMessage, setRemovePopupMessage] = useState(''); const [removePopupOnConfirm, setRemovePopupOnConfirm] = useState(() => {}); @@ -144,7 +142,6 @@ export default function FilesGroupsManagement({ 'Succès' ); - setPopupVisible(true); setRemovePopupVisible(false); setIsLoading(false); } else { @@ -153,7 +150,6 @@ export default function FilesGroupsManagement({ 'error', 'Erreur' ); - setPopupVisible(true); setRemovePopupVisible(false); setIsLoading(false); } @@ -165,7 +161,6 @@ export default function FilesGroupsManagement({ 'error', 'Erreur' ); - setPopupVisible(true); setRemovePopupVisible(false); setIsLoading(false); }); @@ -175,7 +170,6 @@ export default function FilesGroupsManagement({ 'error', 'Erreur' ); - setPopupVisible(true); setRemovePopupVisible(false); setIsLoading(false); } @@ -187,7 +181,6 @@ export default function FilesGroupsManagement({ 'error', 'Erreur' ); - setPopupVisible(true); setRemovePopupVisible(false); setIsLoading(false); }); @@ -329,14 +322,19 @@ export default function FilesGroupsManagement({ ); if (filesInGroup.length > 0) { showNotification( - "Impossible de supprimer ce groupe car il contient des schoolFileMasters. Veuillez d'abord retirer tous les schoolFileMasters de ce groupe.", + "Impossible de supprimer ce groupe car il contient déjà des formulaires. Veuillez d'abord retirer tous les formules de ce groupe.", 'error', 'Erreur' ); return; } - if (window.confirm('Êtes-vous sûr de vouloir supprimer ce groupe ?')) { + setRemovePopupVisible(true); + setRemovePopupMessage( + `Attentions ! \nÊtes-vous sûr de vouloir supprimer ce groupe ?` + ); + setRemovePopupOnConfirm(() => () => { + setIsLoading(true); deleteRegistrationFileGroup(groupId, csrfToken) .then((response) => { if (response.status === 409) { @@ -346,10 +344,14 @@ export default function FilesGroupsManagement({ throw new Error('Erreur lors de la suppression du groupe.'); } setGroups(groups.filter((group) => group.id !== groupId)); + setRemovePopupVisible(false); + setIsLoading(false); showNotification('Groupe supprimé avec succès.', 'success', 'Succès'); }) .catch((error) => { console.error('Error deleting group:', error); + setRemovePopupVisible(false); + setIsLoading(false); showNotification( error.message || "Erreur lors de la suppression du groupe. Vérifiez qu'aucune inscription n'utilise ce groupe.", @@ -357,7 +359,7 @@ export default function FilesGroupsManagement({ 'Erreur' ); }); - } + }); }; const handleCreate = (newParentFile) => { @@ -570,14 +572,6 @@ export default function FilesGroupsManagement({ handleEdit={handleEdit} handleDelete={handleDelete} /> - - setPopupVisible(false)} - onCancel={() => setPopupVisible(false)} - uniqueConfirmButton={true} - /> {}); const csrfToken = useCsrfToken(); + const { showNotification } = useNotification(); const handleAddEmptyRequiredDocument = () => { setEditingDocumentId('new'); @@ -48,17 +48,19 @@ export default function ParentFilesSection({ const handleSaveDocument = () => { if (!formData.name) { - setPopupMessage( - "Attention !\nVeuillez saisir un nom de document pour valider l'opération." + showNotification( + 'Veuillez saisir un nom de document pour valider l\'opération', + 'error', + 'Erreur' ); - setPopupVisible(true); return; } if (selectedGroups.length === 0) { - setPopupMessage( - "Attention !\nVeuillez sélectionner au moins un dossier d'inscription pour valider l'opération" + showNotification( + 'Veuillez sélectionner au moins un dossier d\'inscription pour valider l\'opération', + 'error', + 'Erreur' ); - setPopupVisible(true); return; } @@ -265,10 +267,7 @@ export default function ParentFilesSection({ setRemovePopupOnConfirm(() => () => { handleRemoveDocument(document.id) .then(() => { - setPopupMessage( - `Le document "${document.name}" a été correctement supprimé.` - ); - setPopupVisible(true); + showNotification('Le document "${document.name}" a été correctement supprimé.', 'success', 'Succès'); setRemovePopupVisible(false); }) .catch((error) => { @@ -276,10 +275,11 @@ export default function ParentFilesSection({ 'Erreur lors de la suppression du document:', error ); - setPopupMessage( - `Erreur lors de la suppression du document "${document.name}".` + showNotification( + `Erreur lors de la suppression du document "${document.name}".`, + 'error', + 'Erreur' ); - setPopupVisible(true); setRemovePopupVisible(false); }); }); @@ -335,13 +335,6 @@ export default function ParentFilesSection({ } columns={columnsRequiredDocuments} /> - setPopupVisible(false)} - onCancel={() => setPopupVisible(false)} - uniqueConfirmButton={true} - />