diff --git a/apps/web/src/components/registration/PerformerForm.tsx b/apps/web/src/components/registration/PerformerForm.tsx index 9a6e556..5b41a1a 100644 --- a/apps/web/src/components/registration/PerformerForm.tsx +++ b/apps/web/src/components/registration/PerformerForm.tsx @@ -15,6 +15,8 @@ interface PerformerErrors { lastName?: string; email?: string; phone?: string; + postcode?: string; + birthdate?: string; artForm?: string; isOver16?: string; } @@ -41,6 +43,8 @@ export function PerformerForm({ lastName: prefillLastName, email: prefillEmail, phone: "", + postcode: "", + birthdate: "", artForm: "", experience: "", isOver16: false, @@ -71,6 +75,8 @@ export function PerformerForm({ lastName: validateTextField(data.lastName, true, "Achternaam"), email: validateEmail(data.email), phone: validatePhone(data.phone), + postcode: !data.postcode.trim() ? "Postcode is verplicht" : undefined, + birthdate: !data.birthdate ? "Geboortedatum is verplicht" : undefined, artForm: !data.artForm.trim() ? "Kunstvorm is verplicht" : undefined, isOver16: !data.isOver16 ? "Je moet 16 jaar of ouder zijn om op te treden" @@ -82,6 +88,8 @@ export function PerformerForm({ lastName: true, email: true, phone: true, + postcode: true, + birthdate: true, artForm: true, isOver16: true, }); @@ -110,6 +118,14 @@ export function PerformerForm({ ), email: validateEmail(name === "email" ? value : data.email), phone: validatePhone(name === "phone" ? value : data.phone), + postcode: + name === "postcode" && !value.trim() + ? "Postcode is verplicht" + : undefined, + birthdate: + name === "birthdate" && !value + ? "Geboortedatum is verplicht" + : undefined, artForm: name === "artForm" && !value.trim() ? "Kunstvorm is verplicht" @@ -129,6 +145,14 @@ export function PerformerForm({ lastName: validateTextField(value, true, "Achternaam"), email: validateEmail(value), phone: validatePhone(value), + postcode: + name === "postcode" && !value.trim() + ? "Postcode is verplicht" + : undefined, + birthdate: + name === "birthdate" && !value + ? "Geboortedatum is verplicht" + : undefined, artForm: !value.trim() ? "Kunstvorm is verplicht" : undefined, }; setErrors((prev) => ({ ...prev, [name]: errMap[name] })); @@ -145,6 +169,8 @@ export function PerformerForm({ lastName: data.lastName.trim(), email: data.email.trim(), phone: data.phone.trim() || undefined, + postcode: data.postcode.trim(), + birthdate: data.birthdate, registrationType: "performer", artForm: data.artForm.trim() || undefined, experience: data.experience.trim() || undefined, @@ -306,6 +332,54 @@ export function PerformerForm({ + {/* Postcode + Birthdate row */} +
diff --git a/apps/web/src/components/registration/WatcherForm.tsx b/apps/web/src/components/registration/WatcherForm.tsx
index 60e9639..b8387ee 100644
--- a/apps/web/src/components/registration/WatcherForm.tsx
+++ b/apps/web/src/components/registration/WatcherForm.tsx
@@ -21,6 +21,8 @@ interface WatcherErrors {
lastName?: string;
email?: string;
phone?: string;
+ postcode?: string;
+ birthdate?: string;
}
interface Props {
@@ -251,6 +253,8 @@ export function WatcherForm({
lastName: prefillLastName,
email: prefillEmail,
phone: "",
+ postcode: "",
+ birthdate: "",
extraQuestions: "",
});
const [errors, setErrors] = useState