mirror of
https://git.v0id.ovh/n3wt-innov/n3wt-school.git
synced 2026-01-28 23:43:22 +00:00
feat: Ajout de la photo pour le dossier de l'élève + correction
sauvegarde des datas des responsables
This commit is contained in:
@ -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 */}
|
||||
|
||||
Reference in New Issue
Block a user