import React, { useState } from 'react'; import SelectChoice from '@/components/SelectChoice'; import { Users } from 'lucide-react'; import DraggableSpeciality from '@/components/Structure/Planning/DraggableSpeciality'; const groupSpecialitiesBySubject = (enseignants) => { const groupedSpecialities = {}; enseignants.forEach(teacher => { teacher.specialites.forEach(specialite => { if (!groupedSpecialities[specialite.id]) { groupedSpecialities[specialite.id] = { ...specialite, teachers: [`${teacher.nom} ${teacher.prenom}`], }; } else { groupedSpecialities[specialite.id].teachers.push(`${teacher.nom} ${teacher.prenom}`); } }); }); return Object.values(groupedSpecialities); }; const ClassesInfo = ({ classes, onClassSelect }) => { const [selectedClass, setSelectedClass] = useState(null); // Nouvelle variable d'état pour la classe sélectionnée const handleClassChange = (event) => { const classId = event.target.value; const selectedClass = classes.find(classe => classe.id === parseInt(classId)); setSelectedClass(selectedClass); onClassSelect(selectedClass); }; const classChoices = [ { value: '', label: 'Sélectionner...' }, ...classes.map(classe => ({ value: classe.id, label: classe.nom_ambiance, })) ]; // S'assurer que `selectedClass` n'est pas null avant d'appeler `groupSpecialitiesBySubject` const groupedSpecialities = selectedClass ? groupSpecialitiesBySubject(selectedClass.enseignants) : []; return (
Aucune classe disponible.
)} {selectedClass && (