From edc97242f2219f48233441b8c7ec97ef9551c60c Mon Sep 17 00:00:00 2001 From: N3WT DE COMPET Date: Sun, 24 Nov 2024 10:24:09 +0100 Subject: [PATCH] fix: Gestion des listes d'inscription "vides" [#1] --- .../src/app/[locale]/admin/students/page.js | 60 +++++++++++++++---- 1 file changed, 48 insertions(+), 12 deletions(-) diff --git a/Front-End/src/app/[locale]/admin/students/page.js b/Front-End/src/app/[locale]/admin/students/page.js index 7a5fdf0..6b9deae 100644 --- a/Front-End/src/app/[locale]/admin/students/page.js +++ b/Front-End/src/app/[locale]/admin/students/page.js @@ -23,7 +23,8 @@ import { BK_GESTIONINSCRIPTION_FICHESINSCRIPTION_URL, FR_ADMIN_STUDENT_EDIT_SUBSCRIBE, BK_GESTIONINSCRIPTION_ARCHIVE_URL, BK_GESTIONINSCRIPTION_CLASSES_URL, - BK_GESTIONINSCRIPTION_FICHEINSCRIPTION_URL } from '@/utils/Url'; + BK_GESTIONINSCRIPTION_FICHEINSCRIPTION_URL, + BK_GESTIONINSCRIPTION_ELEVES_URL } from '@/utils/Url'; import DjangoCSRFToken from '@/components/DjangoCSRFToken' import useCsrfToken from '@/hooks/useCsrfToken'; @@ -34,7 +35,7 @@ export default function Page({ params: { locale } }) { const t = useTranslations('students'); const [ficheInscriptions, setFicheInscriptions] = useState([]); const [fichesInscriptionsDataEnCours, setFichesInscriptionsDataEnCours] = useState([]); - const [fichesInscriptionsDataInscrits, setichesInscriptionsDataInscrits] = useState([]); + const [fichesInscriptionsDataInscrits, setFichesInscriptionsDataInscrits] = useState([]); const [fichesInscriptionsDataArchivees, setFichesInscriptionsDataArchivees] = useState([]); // const [filter, setFilter] = useState('*'); const [searchTerm, setSearchTerm] = useState(''); @@ -55,6 +56,7 @@ export default function Page({ params: { locale } }) { const [isOpenAffectationClasse, setIsOpenAffectationClasse] = useState(false); const [eleve, setEleve] = useState(''); const [classes, setClasses] = useState([]); + const [eleves, setEleves] = useState([]); const csrfToken = useCsrfToken(); @@ -78,7 +80,9 @@ export default function Page({ params: { locale } }) { setIsLoading(false); if (data) { const { fichesInscriptions, count } = data; - setFichesInscriptionsDataEnCours(fichesInscriptions); + if (ficheInscriptions) { + setFichesInscriptionsDataEnCours(fichesInscriptions); + } const calculatedTotalPages = Math.ceil(count / pageSize); setTotalPending(count); setTotalPages(calculatedTotalPages); @@ -102,7 +106,9 @@ export default function Page({ params: { locale } }) { if (data) { const { fichesInscriptions, count } = data; setTotalSubscribed(count); - setichesInscriptionsDataInscrits(fichesInscriptions); + if (fichesInscriptions) { + setFichesInscriptionsDataInscrits(fichesInscriptions); + } } console.log('Success SUBSCRIBED:', data); }) @@ -123,7 +129,9 @@ export default function Page({ params: { locale } }) { if (data) { const { fichesInscriptions, count } = data; setTotalArchives(count); - setFichesInscriptionsDataArchivees(fichesInscriptions); + if (fichesInscriptions) { + setFichesInscriptionsDataArchivees(fichesInscriptions); + } } console.log('Success ARCHIVED:', data); }) @@ -138,15 +146,38 @@ export default function Page({ params: { locale } }) { .then(response => response.json()) .then(data => { setClasses(data); - console.log("classes : ", data) + console.log("Success CLASSES : ", data) }) .catch(error => { console.error('Error fetching classes:', error); }); }; + const fetchStudents = () => { + const request = new Request( + `${BK_GESTIONINSCRIPTION_ELEVES_URL}`, + { + method:'GET', + headers: { + 'Content-Type':'application/json' + }, + } + ); + fetch(request).then(response => response.json()) + .then(data => { + console.log('Success STUDENTS:', data); + setEleves(data); + }) + .catch(error => { + console.error('Error fetching data:', error); + error = error.message; + console.log(error); + }); + }; + useEffect(() => { fetchClasses(); + fetchStudents(); }, []); useEffect(() => { @@ -433,12 +464,6 @@ const columnsSubscribed = [ onClick={() => setActiveTab('archived')} />