mirror of
https://git.v0id.ovh/n3wt-innov/n3wt-school.git
synced 2026-01-29 07:53:23 +00:00
fix: Ajout du controle sur le format des dates
This commit is contained in:
@ -34,6 +34,7 @@ export default function ResponsableInputFields({
|
|||||||
|
|
||||||
const getLocalError = (index, field) => {
|
const getLocalError = (index, field) => {
|
||||||
const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
|
const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
|
||||||
|
const dateRegex = /^\d{4}-\d{2}-\d{2}$/;
|
||||||
if (
|
if (
|
||||||
// Student Form
|
// Student Form
|
||||||
(field === 'last_name' &&
|
(field === 'last_name' &&
|
||||||
@ -48,7 +49,8 @@ export default function ResponsableInputFields({
|
|||||||
!emailRegex.test(guardians[index].associated_profile_email))) ||
|
!emailRegex.test(guardians[index].associated_profile_email))) ||
|
||||||
(field === 'birth_date' &&
|
(field === 'birth_date' &&
|
||||||
(!guardians[index].birth_date ||
|
(!guardians[index].birth_date ||
|
||||||
guardians[index].birth_date.trim() === '')) ||
|
guardians[index].birth_date.trim() === '' ||
|
||||||
|
!dateRegex.test(guardians[index].birth_date))) ||
|
||||||
(field === 'profession' &&
|
(field === 'profession' &&
|
||||||
(!guardians[index].profession ||
|
(!guardians[index].profession ||
|
||||||
guardians[index].profession.trim() === '')) ||
|
guardians[index].profession.trim() === '')) ||
|
||||||
@ -136,7 +138,7 @@ export default function ResponsableInputFields({
|
|||||||
name="nomResponsable"
|
name="nomResponsable"
|
||||||
type="text"
|
type="text"
|
||||||
label={t('lastname')}
|
label={t('lastname')}
|
||||||
value={item.last_name}
|
value={item.last_name || ''}
|
||||||
onChange={(event) => {
|
onChange={(event) => {
|
||||||
onGuardiansChange(item.id, 'last_name', event.target.value);
|
onGuardiansChange(item.id, 'last_name', event.target.value);
|
||||||
}}
|
}}
|
||||||
@ -148,7 +150,7 @@ export default function ResponsableInputFields({
|
|||||||
name="prenomResponsable"
|
name="prenomResponsable"
|
||||||
type="text"
|
type="text"
|
||||||
label={t('firstname')}
|
label={t('firstname')}
|
||||||
value={item.first_name}
|
value={item.firstname || ''}
|
||||||
onChange={(event) => {
|
onChange={(event) => {
|
||||||
onGuardiansChange(item.id, 'first_name', event.target.value);
|
onGuardiansChange(item.id, 'first_name', event.target.value);
|
||||||
}}
|
}}
|
||||||
@ -163,7 +165,7 @@ export default function ResponsableInputFields({
|
|||||||
name="mailResponsable"
|
name="mailResponsable"
|
||||||
type="email"
|
type="email"
|
||||||
label={t('email')}
|
label={t('email')}
|
||||||
value={item.associated_profile_email}
|
value={item.associated_profile_email || ''}
|
||||||
onChange={(event) => {
|
onChange={(event) => {
|
||||||
onGuardiansChange(
|
onGuardiansChange(
|
||||||
item.id,
|
item.id,
|
||||||
@ -178,7 +180,7 @@ export default function ResponsableInputFields({
|
|||||||
<InputPhone
|
<InputPhone
|
||||||
name="telephoneResponsable"
|
name="telephoneResponsable"
|
||||||
label="phone"
|
label="phone"
|
||||||
value={item.phone}
|
value={item.phone || ''}
|
||||||
onChange={(event) => {
|
onChange={(event) => {
|
||||||
onGuardiansChange(item.id, 'phone', event.target.value);
|
onGuardiansChange(item.id, 'phone', event.target.value);
|
||||||
}}
|
}}
|
||||||
@ -193,7 +195,7 @@ export default function ResponsableInputFields({
|
|||||||
name="dateNaissanceResponsable"
|
name="dateNaissanceResponsable"
|
||||||
type="date"
|
type="date"
|
||||||
label={t('birthdate')}
|
label={t('birthdate')}
|
||||||
value={item.birth_date}
|
value={item.birth_date || ''}
|
||||||
onChange={(event) => {
|
onChange={(event) => {
|
||||||
onGuardiansChange(item.id, 'birth_date', event.target.value);
|
onGuardiansChange(item.id, 'birth_date', event.target.value);
|
||||||
}}
|
}}
|
||||||
@ -205,7 +207,7 @@ export default function ResponsableInputFields({
|
|||||||
name="professionResponsable"
|
name="professionResponsable"
|
||||||
type="text"
|
type="text"
|
||||||
label={t('profession')}
|
label={t('profession')}
|
||||||
value={item.profession}
|
value={item.profession || ''}
|
||||||
onChange={(event) => {
|
onChange={(event) => {
|
||||||
onGuardiansChange(item.id, 'profession', event.target.value);
|
onGuardiansChange(item.id, 'profession', event.target.value);
|
||||||
}}
|
}}
|
||||||
@ -220,7 +222,7 @@ export default function ResponsableInputFields({
|
|||||||
name="adresseResponsable"
|
name="adresseResponsable"
|
||||||
type="text"
|
type="text"
|
||||||
label={t('address')}
|
label={t('address')}
|
||||||
value={item.address}
|
value={item.address || ''}
|
||||||
onChange={(event) => {
|
onChange={(event) => {
|
||||||
onGuardiansChange(item.id, 'address', event.target.value);
|
onGuardiansChange(item.id, 'address', event.target.value);
|
||||||
}}
|
}}
|
||||||
|
|||||||
@ -17,6 +17,7 @@ export default function SiblingInputFields({
|
|||||||
};
|
};
|
||||||
|
|
||||||
const getLocalError = (index, field) => {
|
const getLocalError = (index, field) => {
|
||||||
|
const dateRegex = /^\d{4}-\d{2}-\d{2}$/;
|
||||||
if (
|
if (
|
||||||
(field === 'last_name' &&
|
(field === 'last_name' &&
|
||||||
(!siblings[index].last_name ||
|
(!siblings[index].last_name ||
|
||||||
@ -26,7 +27,8 @@ export default function SiblingInputFields({
|
|||||||
siblings[index].first_name.trim() === '')) ||
|
siblings[index].first_name.trim() === '')) ||
|
||||||
(field === 'birth_date' &&
|
(field === 'birth_date' &&
|
||||||
(!siblings[index].birth_date ||
|
(!siblings[index].birth_date ||
|
||||||
siblings[index].birth_date.trim() === ''))
|
siblings[index].birth_date.trim() === '' ||
|
||||||
|
!dateRegex.test(siblings[index].birth_date)))
|
||||||
) {
|
) {
|
||||||
return 'Champs requis';
|
return 'Champs requis';
|
||||||
}
|
}
|
||||||
|
|||||||
@ -109,6 +109,7 @@ export default function StudentInfoForm({
|
|||||||
};
|
};
|
||||||
|
|
||||||
const getLocalError = (field) => {
|
const getLocalError = (field) => {
|
||||||
|
const dateRegex = /^\d{4}-\d{2}-\d{2}$/;
|
||||||
if (
|
if (
|
||||||
// Student Form
|
// Student Form
|
||||||
(field === 'last_name' &&
|
(field === 'last_name' &&
|
||||||
@ -120,7 +121,9 @@ export default function StudentInfoForm({
|
|||||||
(field === 'nationality' &&
|
(field === 'nationality' &&
|
||||||
(!formData.nationality || formData.nationality.trim() === '')) ||
|
(!formData.nationality || formData.nationality.trim() === '')) ||
|
||||||
(field === 'birth_date' &&
|
(field === 'birth_date' &&
|
||||||
(!formData.birth_date || formData.birth_date.trim() === '')) ||
|
(!formData.birth_date ||
|
||||||
|
formData.birth_date.trim() === '' ||
|
||||||
|
!dateRegex.test(formData.birth_date))) ||
|
||||||
(field === 'birth_place' &&
|
(field === 'birth_place' &&
|
||||||
(!formData.birth_place || formData.birth_place.trim() === '')) ||
|
(!formData.birth_place || formData.birth_place.trim() === '')) ||
|
||||||
(field === 'birth_postal_code' &&
|
(field === 'birth_postal_code' &&
|
||||||
|
|||||||
Reference in New Issue
Block a user