16580 contact fields for owners and tenants

This commit is contained in:
2025-06-11 18:26:14 +01:00
parent 5fc3b3867c
commit 89f1691c8f
4 changed files with 99 additions and 42 deletions
+60 -12
View File
@@ -748,7 +748,7 @@ const RenderDatePicker = ({
: value : value
: null : null
} //{parseISO(value) || null} } //{parseISO(value) || null}
className="govuk-input govuk-input--width-10" className="govuk-input govuk-input--width-12"
minDate={minDate} minDate={minDate}
maxDate={maxDate} maxDate={maxDate}
autoComplete="off" autoComplete="off"
@@ -2179,7 +2179,8 @@ const RenderFileUpload = (field) => {
).then((data) => { ).then((data) => {
console.log(data); console.log(data);
let buildAppealFilesArray = []; let buildAppealFilesArray = [];
let values = field.form.appealForm.values; //let values = field.form.appealForm.values;
let values = field.props.form.appealForm.values;
let filesUploadObj = renamedAcceptedFiles; let filesUploadObj = renamedAcceptedFiles;
for (let key in filesUploadObj) { for (let key in filesUploadObj) {
@@ -2434,6 +2435,18 @@ const RenderSubFields = ({ fields, meta: { touched, error }, ...custom }) => {
const required = (value) => const required = (value) =>
value ? undefined : t("newappeal:is-required-label"); value ? undefined : t("newappeal:is-required-label");
const email = (value) => {
let errors;
const emailRegex =
/(?:[a-z0-9!#$%&'*+\/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+\/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\])/gi;
if (!emailRegex.test(value)) {
errors = t("newappeal:invalid-email-address-errormsg");
}
return errors;
};
//fields.push({}); //fields.push({});
fields.length == 0 && fields.push({}); fields.length == 0 && fields.push({});
return ( return (
@@ -2445,18 +2458,47 @@ const RenderSubFields = ({ fields, meta: { touched, error }, ...custom }) => {
</h4> </h4>
<div className="fieldArrayContainer"> <div className="fieldArrayContainer">
<div className="govuk-grid-column-full">
<div
className="gouk-grid-row"
style={{
display: "flex",
marginBottom: "20px",
}}
>
<Field <Field
id={`${member}.${fields.name}`} id={`${member}.${fields.name}_firstname`}
name={`${member}.${fields.name}`} name={`${member}.${fields.name}_firstname`}
type="text" type="text"
component={RenderTextfield} component={RenderTextfield}
validate={[checkValue]} validate={[checkValue]}
label={ label={"First name"}
subTitle == "owners" className="govuk-input govuk-input--width-12"
? "Owner name" showErrorBottom={true}
: "Tenant name" />
} <Field
className="govuk-input govuk-input--width-10" id={`${member}.${fields.name}_lastname`}
name={`${member}.${fields.name}_lastname`}
type="text"
component={RenderTextfield}
validate={[checkValue]}
label={"Last name"}
className="govuk-input govuk-input--width-12"
showErrorBottom={true}
/>
</div>
<div
className="gouk-grid-row"
style={{ display: "flex" }}
>
<Field
id={`${member}.${fields.name}_email`}
name={`${member}.${fields.name}_email`}
type="text"
component={RenderTextfield}
validate={[email]}
label={"Email"}
className="govuk-input govuk-input--width-12"
showErrorBottom={true} showErrorBottom={true}
/> />
<Field <Field
@@ -2467,10 +2509,15 @@ const RenderSubFields = ({ fields, meta: { touched, error }, ...custom }) => {
dateStart={"-6m"} dateStart={"-6m"}
dateEnd={"0"} dateEnd={"0"}
validate={[required]} validate={[required]}
className="govuk-input govuk-input--width-10" className="govuk-input govuk-input--width-12"
showErrorBottom={true} showErrorBottom={true}
/> />
</div>
</div>
<div
className="gouk-grid-row"
style={{ display: "flex" }}
>
<button <button
type="button" type="button"
title="Remove" title="Remove"
@@ -2481,6 +2528,7 @@ const RenderSubFields = ({ fields, meta: { touched, error }, ...custom }) => {
</button> </button>
</div> </div>
</div> </div>
</div>
))} ))}
<br /> <br />
+12 -5
View File
@@ -317,11 +317,11 @@ let BuildCheckRow = (props) => {
datafieldname[0].value datafieldname[0].value
].map((tenant, index) => { ].map((tenant, index) => {
console.log( console.log(
typeof tenant.pinswg_owners typeof tenant.pinswg_owners_firstname
); );
return typeof tenant.pinswg_owners != return typeof tenant.pinswg_owners_firstname !=
"undefined" || "undefined" ||
typeof tenant.pinswg_agriculturaltenantname != typeof tenant.pinswg_agriculturaltenantname_firstname !=
"undefined" ? ( "undefined" ? (
<div <div
key={index} key={index}
@@ -330,8 +330,15 @@ let BuildCheckRow = (props) => {
}} }}
> >
<div className="govuk-!-width-one-half"> <div className="govuk-!-width-one-half">
{tenant.pinswg_agriculturaltenantname || {tenant?.pinswg_agriculturaltenantname_firstname &&
tenant.pinswg_owners} tenant.pinswg_agriculturaltenantname_firstname +
" " +
tenant.pinswg_agriculturaltenantname_lastname}
{tenant?.pinswg_owners_firstname &&
tenant.pinswg_owners_firstname +
" " +
tenant.pinswg_owners_lastname}
</div> </div>
<div className="govuk-!-width-one-half"> <div className="govuk-!-width-one-half">
Served:{" "} Served:{" "}
+2 -1
View File
@@ -119,5 +119,6 @@
"previously-added-files": "Ffeiliau wedi'u llwytho i fyny", "previously-added-files": "Ffeiliau wedi'u llwytho i fyny",
"new-appeal-finalising-heading": "Cwblhau cyflwyniad eich apêl", "new-appeal-finalising-heading": "Cwblhau cyflwyniad eich apêl",
"new-appeal-finalising-label": "Wrthi'n uwchlwytho ffeiliau ar hyn o bryd a chwblhau eich cyflwyniad apêl", "new-appeal-finalising-label": "Wrthi'n uwchlwytho ffeiliau ar hyn o bryd a chwblhau eich cyflwyniad apêl",
"new-appeal-wait-label": "Arhoswch os gwelwch yn dda" "new-appeal-wait-label": "Arhoswch os gwelwch yn dda",
"invalid-email-address-errormsg": "Cyfeiriad e-bost annilys"
} }
+2 -1
View File
@@ -119,5 +119,6 @@
"previously-added-files": "Uploaded files", "previously-added-files": "Uploaded files",
"new-appeal-finalising-heading": "Finalising your appeal submission", "new-appeal-finalising-heading": "Finalising your appeal submission",
"new-appeal-finalising-label": "Currently uploading files and finalising your appeal submission", "new-appeal-finalising-label": "Currently uploading files and finalising your appeal submission",
"new-appeal-wait-label": "Please wait" "new-appeal-wait-label": "Please wait",
"invalid-email-address-errormsg": "Invalid email address"
} }