feat: Ajout de la photo pour le dossier de l'élève + correction

sauvegarde des datas des responsables
This commit is contained in:
N3WT DE COMPET
2025-05-01 14:59:19 +02:00
parent d37e6c384d
commit 5851341235
12 changed files with 187 additions and 86 deletions

View File

@ -10,6 +10,7 @@ import logger from '@/utils/logger';
import MultiSelect from '@/components/MultiSelect'; // Import du composant MultiSelect
import { useCsrfToken } from '@/context/CsrfContext';
import { useEstablishment } from '@/context/EstablishmentContext';
import Popup from '@/components/Popup';
export default function FileUploadDocuSeal({
handleCreateTemplateMaster,
@ -24,6 +25,9 @@ export default function FileUploadDocuSeal({
const [selectedGroups, setSelectedGroups] = useState([]);
const [guardianDetails, setGuardianDetails] = useState([]);
const [popupVisible, setPopupVisible] = useState(false);
const [popupMessage, setPopupMessage] = useState('');
const csrfToken = useCsrfToken();
const { selectedEstablishmentId } = useEstablishment();
@ -84,6 +88,17 @@ export default function FileUploadDocuSeal({
};
const handleSubmit = (data) => {
// Vérifier si au moins un champ a la propriété "required" à true
const hasRequiredField = data.fields.some(
(field) => field.required === true
);
if (!hasRequiredField) {
setPopupMessage('Veuillez définir au moins un champ comme requis.');
setPopupVisible(true);
return;
}
const is_required = data.fields.length > 0;
if (fileToEdit) {
logger.debug('Modification du template master:', templateMaster?.id);
@ -139,6 +154,13 @@ export default function FileUploadDocuSeal({
return (
<div className="h-full flex flex-col mt-4 space-y-6">
<Popup
visible={popupVisible}
message={popupMessage}
onConfirm={() => setPopupVisible(false)}
onCancel={() => setPopupVisible(false)}
uniqueConfirmButton={true}
/>
{/* Contenu principal */}
<div className="grid grid-cols-10 gap-6 items-start">
{/* Sélection des groupes */}