Merge from git

This commit is contained in:
2021-11-01 11:21:39 +00:00
parent adcff32d73
commit d94b3b3e5a
210 changed files with 69742 additions and 3359 deletions
+33
View File
@@ -0,0 +1,33 @@
// dev
//RELAY_ROOT = https://dev-pedw-ns.servicebus.windows.net/dev-pedw-hc/
//RELAYURI = "dev-pedw-ns.servicebus.windows.net"
//RELAYPATH = "dev-pedw-hc"
//SASKEY = "Ml0Y/S/nfRcmIrHFRkO4jNm2J3iH52TSxPiak7+E1+Y="
//SASKEYNAME = "devpedwnspolicy"
PORT= "3000"
DEFAULT_DOMAIN = "localhost"
I18N_DOMAIN = "cymru.local"
//I18N_DOMAIN ="dev-gwaithcynllunio.gwasanaeth.llyw.cymru"
//I18N_DOMAIN ="stage-gwaithcynllunio.gwasanaeth.llyw.cymru"
//I18N_DOMAIN ="pp-gwaithcynllunio.gwasanaeth.llyw.cymru"
//I18N_DOMAIN ="gwaithcynllunio.gwasanaeth.llyw.cymru"
//test
RELAY_ROOT = https://test-pedw-ns.servicebus.windows.net/test-pedw-hc/
RELAYURI = "test-pedw-ns.servicebus.windows.net"
RELAYPATH = "test-pedw-hc"
SASKEY = "kTLrs9UHwuW9Msc9uNfjf+89qLYT6ly80lK0zdTYJW4="
SASKEYNAME = "testpedwhcpolicy"
//preprod
//RELAY_ROOT = https://pp-pedw-ns.servicebus.windows.net/pp-pedw-hc/
//RELAYURI = "pp-pedw-ns.servicebus.windows.net"
//RELAYPATH = "pp-pedw-hc"
//SASKEY = "JzrOYfMTsGBD1cZHH2nkzqsbfDCqg0brO6jyiIDNVPo="
//SASKEYNAME = "pppedwnspolicy"
GOOGLE_TAG_MANAGER = GTM-T78CBC3
+1 -52
View File
@@ -1,54 +1,3 @@
# These are some examples of commonly ignored file patterns.
# You should customize this list as applicable to your project.
# Learn more about .gitignore:
# https://www.atlassian.com/git/tutorials/saving-changes/gitignore
# Node artifact files
node_modules/
dist/
# Compiled Java class files
*.class
# Compiled Python bytecode
*.py[cod]
# Log files
*.log
# Package files
*.jar
# Maven
target/
dist/
# JetBrains IDE
.idea/
# Unit test reports
TEST*.xml
# Generated by MacOS
.DS_Store
# Generated by Windows
Thumbs.db
# Applications
*.app
*.exe
*.war
# Large media files
*.mp4
*.tiff
*.avi
*.flv
*.mov
*.wmv
// .gitignore
# next.js build output
.next
@@ -67,4 +16,4 @@ yarn-error.log*
#lock files
yarn.lock
package-lock.json
package-lock.json
+876 -328
View File
File diff suppressed because it is too large Load Diff
+59 -38
View File
@@ -24,6 +24,7 @@ const RenderTextfield = ({
input,
type,
errorMsg,
disabled,
meta: { touched, error },
...custom
}) => {
@@ -55,18 +56,23 @@ const RenderTextfield = ({
name={id}
id={id}
type={type}
disabled={disabled ? true : false}
/>
</div>
</>
);
};
const PersonalDetails = (props) => {
let PersonalDetails = (props) => {
const {
handleSubmit,
value,
setPersonalDetailsComplete,
setAccountUpdatedComplete,
load,
pristine,
reset,
submitting,
} = props;
let { t, lang } = useTranslation();
@@ -126,17 +132,18 @@ const PersonalDetails = (props) => {
errorMsg="Is required"
/>
<Field
name="email"
id="email"
name="emailaddress1"
id="emailaddress1"
component={RenderTextfield}
type="email"
className="govuk-input govuk-input--width-20"
validate={[required, email]}
label="Email address"
disabled
/>
<Field
name="telephone"
id="telephone"
name="telephone1"
id="telephone1"
component={RenderTextfield}
type="number"
className="govuk-input govuk-input--width-20"
@@ -145,8 +152,8 @@ const PersonalDetails = (props) => {
/>
<Field
name="companygroup"
id="companygroup"
name="company"
id="company"
component={RenderTextfield}
type="text"
className="govuk-input govuk-input--width-20"
@@ -162,8 +169,8 @@ const PersonalDetails = (props) => {
</legend>
<Field
name="addressline1"
id="addressline1"
name="address1_line1"
id="address1_line1"
component={RenderTextfield}
type="text"
className="govuk-input govuk-input--width-20"
@@ -172,8 +179,8 @@ const PersonalDetails = (props) => {
errorMsg="Is required"
/>
<Field
name="addressline2"
id="addressline2"
name="address1_line2"
id="address1_line2"
component={RenderTextfield}
type="text"
className="govuk-input govuk-input--width-20"
@@ -181,8 +188,8 @@ const PersonalDetails = (props) => {
errorMsg="Is required"
/>
<Field
name="towncity"
id="towncity"
name="address1_city"
id="address1_city"
component={RenderTextfield}
type="text"
className="govuk-input govuk-input--width-10"
@@ -191,8 +198,8 @@ const PersonalDetails = (props) => {
errorMsg="Is required"
/>
<Field
name="county"
id="county"
name="address1_county"
id="address1_county"
component={RenderTextfield}
type="text"
className="govuk-input govuk-input--width-10"
@@ -201,8 +208,8 @@ const PersonalDetails = (props) => {
errorMsg="Is required"
/>
<Field
name="postcode"
id="postcode"
name="address1_postalcode"
id="address1_postalcode"
component={RenderTextfield}
type="text"
className="govuk-input govuk-input--width-5"
@@ -235,7 +242,7 @@ const PersonalDetails = (props) => {
</>
)
) : (
<PersonalDetailsComplete />
<PersonalDetailsComplete props={props} />
)}
</>
);
@@ -262,23 +269,37 @@ const mapDispatchToProps = (dispatch) => {
const selector = formValueSelector("personalDetailsForm"); // <-- same as form name
export default connect(
mapStateToProps,
mapDispatchToProps
//, (state) => ({
// initialValues: state.accountDetails.accountDetails.data,
// // search: state.search,
// searchResultsObj: state.searchResultsObj,
// formData: state.formData,
// appealType: state.appealType,
// accountDetails: state.accountDetails,
// form: state.form,
// pull initial values from account reducer
//})
)(
reduxForm({
form: "personalDetailsForm",
enableReinitialize: true, // this is needed!!
destroyOnUnmount: false,
})(PersonalDetails)
);
// export default connect(
// mapStateToProps,
// mapDispatchToProps
// //, (state) => ({
// // initialValues: state.accountDetails.accountDetails.data,
// // // search: state.search,
// // searchResultsObj: state.searchResultsObj,
// // formData: state.formData,
// // appealType: state.appealType,
// // accountDetails: state.accountDetails,
// // form: state.form,
// // pull initial values from account reducer
// //})
// )(
// reduxForm({
// form: "personalDetailsForm",
// enableReinitialize: true, // this is needed!!
// destroyOnUnmount: false,
// })(PersonalDetails)
// );
// Decorate with reduxForm(). It will read the initialValues prop provided by connect()
PersonalDetails = reduxForm({
form: "personalDetailsForm",
enableReinitialize: true, // this is needed!!
destroyOnUnmount: false,
})(PersonalDetails);
// You have to connect() to any reducers that you wish to connect to yourself
PersonalDetails = connect((state) => ({
initialValues: state.accountDetails.accountDetails, // pull initial values from account reducer
}))(PersonalDetails);
export default PersonalDetails;
+8 -8
View File
@@ -80,7 +80,7 @@ const BuildCheckPersonalDetails = (props) => {
<dd className="govuk-summary-list__value">
{
props.props.props.form.personalDetailsForm.values
.email
.emailaddress1
}
</dd>
<dd className="govuk-summary-list__actions">
@@ -104,7 +104,7 @@ const BuildCheckPersonalDetails = (props) => {
<dd className="govuk-summary-list__value">
{
props.props.props.form.personalDetailsForm.values
.telephone
.telephone1
}
</dd>
<dd className="govuk-summary-list__actions">
@@ -127,7 +127,7 @@ const BuildCheckPersonalDetails = (props) => {
<dd className="govuk-summary-list__value">
{
props.props.props.form.personalDetailsForm.values
.companygroup
.company
}
</dd>
<dd className="govuk-summary-list__actions">
@@ -155,7 +155,7 @@ const BuildCheckPersonalDetails = (props) => {
<dd className="govuk-summary-list__value">
{
props.props.props.form.personalDetailsForm.values
.addressline1
.address1_line1
}
</dd>
<dd className="govuk-summary-list__actions">
@@ -179,7 +179,7 @@ const BuildCheckPersonalDetails = (props) => {
<dd className="govuk-summary-list__value">
{
props.props.props.form.personalDetailsForm.values
.addressline2
.address1_line2
}
</dd>
<dd className="govuk-summary-list__actions">
@@ -203,7 +203,7 @@ const BuildCheckPersonalDetails = (props) => {
<dd className="govuk-summary-list__value">
{
props.props.props.form.personalDetailsForm.values
.towncity
.address1_city
}
</dd>
<dd className="govuk-summary-list__actions">
@@ -227,7 +227,7 @@ const BuildCheckPersonalDetails = (props) => {
<dd className="govuk-summary-list__value">
{
props.props.props.form.personalDetailsForm.values
.county
.address1_county
}
</dd>
<dd className="govuk-summary-list__actions">
@@ -251,7 +251,7 @@ const BuildCheckPersonalDetails = (props) => {
<dd className="govuk-summary-list__value">
{
props.props.props.form.personalDetailsForm.values
.postcode
.address1_postalcode
}
</dd>
<dd className="govuk-summary-list__actions">
+11 -2
View File
@@ -1,6 +1,6 @@
import _ from "lodash";
import Link from "next/link";
import React, { useState } from "react";
import React, { useState, useEffect } from "react";
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import {
@@ -17,6 +17,7 @@ import {
setRegisterFormComplete,
setAccountCreatedComplete,
} from "react-redux";
import { updateAccount } from "../../actions";
const PersonalDetailsComplete = (props) => {
const {
@@ -30,6 +31,12 @@ const PersonalDetailsComplete = (props) => {
const router = useRouter();
const { locale } = router;
useEffect(() => {
let contactid = props.accountDetails.loggedinUserId;
let updateBody = props.props.props.form.personalDetailsForm.values;
updateAccount(contactid, updateBody);
}, []);
return (
<>
<p className="govuk-body">Your details have been updated</p>
@@ -41,7 +48,9 @@ const PersonalDetailsComplete = (props) => {
</p>
<p className="govuk-body">
<Link href="/myportal">
<Link
href={"/myportal?q=" + props.accountDetails.loggedinUserId}
>
<a className="govuk-link">Return to My Portal</a>
</Link>
</p>
+91 -41
View File
@@ -9,6 +9,7 @@ import {
getFormSubmitErrors,
} from "redux-form";
import { useDispatch, useSelector, shallowEqual, connect } from "react-redux";
import { setAccCr } from "../../store/accountDetails/action";
const RegisterFormCheck = (props) => {
const {
@@ -18,6 +19,7 @@ const RegisterFormCheck = (props) => {
value,
setRegisterFormComplete,
setAccountCreatedComplete,
setAccCr,
} = props;
let { t, lang } = useTranslation();
@@ -26,11 +28,16 @@ const RegisterFormCheck = (props) => {
return (
<>
<p>Check that the details you entered are correct.</p>
<h2 className="govuk-heading-m">About you</h2>
<p>{t("account:register-new-account-check-details-paragraph")}</p>
<h2 className="govuk-heading-m">
{" "}
{t("account:register-new-account-sub-heading-1")}
</h2>
<dl className="govuk-summary-list govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">First name</dt>
<dt className="govuk-summary-list__key">
{t("account:register-new-account-first-name-label")}
</dt>
<dd className="govuk-summary-list__value">
{
props.props.props.form.accountRegisterForm.values
@@ -45,15 +52,19 @@ const RegisterFormCheck = (props) => {
setRegisterFormComplete(false);
}}
>
Change
{t("common:change-link-label")}
<span className="govuk-visually-hidden">
first name
{t(
"account:register-new-account-first-name-label"
)}
</span>
</a>
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">Last name</dt>
<dt className="govuk-summary-list__key">
{t("account:register-new-account-last-name-label")}
</dt>
<dd className="govuk-summary-list__value">
{
props.props.props.form.accountRegisterForm.values
@@ -68,20 +79,24 @@ const RegisterFormCheck = (props) => {
setRegisterFormComplete(false);
}}
>
Change
{t("common:change-link-label")}
<span className="govuk-visually-hidden">
{" "}
last name
{t(
"account:register-new-account-last-name-label"
)}
</span>
</a>
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">Email address</dt>
<dt className="govuk-summary-list__key">
{t("account:register-new-account-email-address-label")}
</dt>
<dd className="govuk-summary-list__value">
{
props.props.props.form.accountRegisterForm.values
.email
.emailaddress1
}
</dd>
<dd className="govuk-summary-list__actions">
@@ -92,20 +107,25 @@ const RegisterFormCheck = (props) => {
setRegisterFormComplete(false);
}}
>
Change
{t("common:change-link-label")}
<span className="govuk-visually-hidden">
{" "}
email address
{t(
"account:register-new-account-email-address-label"
)}
</span>
</a>
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">Telephone</dt>
<dt className="govuk-summary-list__key">
{t("account:register-new-account-phone-label")}
</dt>
<dd className="govuk-summary-list__value">
{
props.props.props.form.accountRegisterForm.values
.telephone
.telephone1
}
</dd>
<dd className="govuk-summary-list__actions">
@@ -116,14 +136,15 @@ const RegisterFormCheck = (props) => {
setRegisterFormComplete(false);
}}
>
Change
{t("common:change-link-label")}
<span className="govuk-visually-hidden">
telephone
{t("account:register-new-account-phone-label")}
</span>
</a>
</dd>
</div>
<div className="govuk-summary-list__row">
{/* <div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">Company/Group</dt>
<dd className="govuk-summary-list__value">
{
@@ -146,17 +167,21 @@ const RegisterFormCheck = (props) => {
</span>
</a>
</dd>
</div>
</div> */}
</dl>
<dl className="govuk-summary-list govuk-!-margin-bottom-9">
<h2 className="govuk-heading-m">Your address</h2>
<h2 className="govuk-heading-m">
{t("account:register-new-account-sub-heading-2")}
</h2>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">Address Line 1</dt>
<dt className="govuk-summary-list__key">
{t("account:register-new-account-address-line-1-label")}
</dt>
<dd className="govuk-summary-list__value">
{
props.props.props.form.accountRegisterForm.values
.addressline1
.address1_line1
}
</dd>
<dd className="govuk-summary-list__actions">
@@ -167,20 +192,25 @@ const RegisterFormCheck = (props) => {
setRegisterFormComplete(false);
}}
>
Change
{t("common:change-link-label")}
<span className="govuk-visually-hidden">
{" "}
address line 1
{t(
"account:register-new-account-address-line-1-label"
)}
</span>
</a>
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">Address line 2</dt>
<dt className="govuk-summary-list__key">
{t("account:register-new-account-address-line-2-label")}
</dt>
<dd className="govuk-summary-list__value">
{
props.props.props.form.accountRegisterForm.values
.addressline2
.address1_line2
}
</dd>
<dd className="govuk-summary-list__actions">
@@ -191,20 +221,25 @@ const RegisterFormCheck = (props) => {
setRegisterFormComplete(false);
}}
>
Change
{t("common:change-link-label")}
<span className="govuk-visually-hidden">
{" "}
address line 2
{t(
"account:register-new-account-address-line-2-label"
)}
</span>
</a>
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">Town/City</dt>
<dt className="govuk-summary-list__key">
{t("account:register-new-account-town-label")}
</dt>
<dd className="govuk-summary-list__value">
{
props.props.props.form.accountRegisterForm.values
.towncity
.address1_city
}
</dd>
<dd className="govuk-summary-list__actions">
@@ -215,20 +250,24 @@ const RegisterFormCheck = (props) => {
setRegisterFormComplete(false);
}}
>
Change
{t("common:change-link-label")}
<span className="govuk-visually-hidden">
{" "}
town/city
{t("account:register-new-account-town-label")}
</span>
</a>
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">County</dt>
<dt className="govuk-summary-list__key">
{" "}
{t("account:register-new-account-county-label")}
</dt>
<dd className="govuk-summary-list__value">
{
props.props.props.form.accountRegisterForm.values
.county
.address1_county
}
</dd>
<dd className="govuk-summary-list__actions">
@@ -239,20 +278,24 @@ const RegisterFormCheck = (props) => {
setRegisterFormComplete(false);
}}
>
Change
{t("common:change-link-label")}
<span className="govuk-visually-hidden">
{" "}
county
{t("account:register-new-account-county-label")}
</span>
</a>
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">Postcode</dt>
<dt className="govuk-summary-list__key">
{" "}
{t("account:register-new-account-postcode-label")}
</dt>
<dd className="govuk-summary-list__value">
{
props.props.props.form.accountRegisterForm.values
.postcode
.address1_postalcode
}
</dd>
<dd className="govuk-summary-list__actions">
@@ -263,10 +306,13 @@ const RegisterFormCheck = (props) => {
setRegisterFormComplete(false);
}}
>
Change
{t("common:change-link-label")}
<span className="govuk-visually-hidden">
{" "}
postcode
{t(
"account:register-new-account-postcode-label"
)}
</span>
</a>
</dd>
@@ -278,10 +324,11 @@ const RegisterFormCheck = (props) => {
className="govuk-button"
data-module="govuk-button"
onClick={() => {
setAccCr(false);
setAccountCreatedComplete(true);
}}
>
Continue
{t("common:continue-button")}
</button>
</div>
</>
@@ -304,6 +351,9 @@ const mapDispatchToProps = (dispatch) => {
setCurrentSection: (currentSection) => {
dispatch(setCurrentSection(currentSection));
},
setAccCr: (accState) => {
dispatch(setAccCr(accState));
},
};
};
+83 -17
View File
@@ -1,8 +1,10 @@
import _ from "lodash";
import Link from "next/link";
import React, { useState } from "react";
import React, { useEffect, useState } from "react";
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import {
Field,
reduxForm,
@@ -18,6 +20,10 @@ import {
setAccountCreatedComplete,
} from "react-redux";
import { setAccCr, setLogout } from "../../store/accountDetails/action";
import { getEmailAccountCheck, createAccount } from "../../actions";
const RegisterComplete = (props) => {
const {
footerLinks,
@@ -26,37 +32,94 @@ const RegisterComplete = (props) => {
value,
setRegisterFormComplete,
setAccountCreatedComplete,
setAccCr,
} = props;
let { t, lang } = useTranslation();
const router = useRouter();
const { locale } = router;
return (
const [accountCreated, setAccountCreated] = useState(false);
useEffect(() => {
let accountBody = props.props.props.form.accountRegisterForm.values;
let emailAddress =
props.props.props.form.accountRegisterForm.values.emailaddress1;
Object.assign(accountBody, {
"pinswg_typeofinvolvement": 846040001,
});
accountBody = _.omit(accountBody, ["custom_password_check"]);
let checkEmailObj = {};
switch (props.accountDetails.accCr) {
case "created":
case "exists":
break;
default:
let emailExists = getEmailAccountCheck(
accountBody.emailaddress1
).then((data) => {
data["@odata.count"] > 0
? setAccCr("exists")
: (checkEmailObj = createAccount(accountBody).then(
(data) => {
//console.log(data);
setAccCr("created");
}
));
});
break;
}
});
return props.accountDetails.accCr == "created" ? (
<>
<p className="govuk-body">We have sent you a confirmation email.</p>
<h2 className="govuk-heading-m">What happens next</h2>
<p className="govuk-body">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi a
metus non quam mollis egestas. Integer ac leo cursus, laoreet
nulla sed, tempus tellus. Mauris condimentum erat arcu.
{t("account:register-new-account-confirmation-email")}
</p>
<h2 className="govuk-heading-m">
{t("account:register-new-account-sub-heading-what-next")}
</h2>
<p className="govuk-body">
Sed imperdiet dignissim ipsum. Orci varius natoque penatibus et
magnis dis parturient montes, nascetur ridiculus mus. In id leo
in turpis aliquam venenatis ut non erat. Ut est arcu, luctus sit
amet pretium sed, iaculis non purus. Etiam dictum tortor commodo
luctus rhoncus.
{t("account:register-new-account-paragraph-what-next")}
</p>
<p className="govuk-body">
<Link href="/">
<a className="govuk-link">Login to My Portal</a>
<a
className="govuk-link"
onClick={() => {
setLogout(), window.localStorage.clear();
}}
>
{t("account:register-new-account-my-portal-link")}
</a>
</Link>
</p>
</>
) : (
<>
<h2 className="govuk-heading-m">
{t("account:register-new-account-account-failed")}
</h2>
<p className="govuk-body">
<a
onClick={() => {
setRegisterFormComplete(false),
setAccountCreatedComplete(false),
setAccCr("false");
}}
className="govuk-link"
>
Try registering again
</a>
</p>
</>
);
};
@@ -73,8 +136,11 @@ const mapStateToProps = (state) => {
const mapDispatchToProps = (dispatch) => {
return {
setCurrentSection: (currentSection) => {
dispatch(setCurrentSection(currentSection));
setAccCr: (accountCreated) => {
dispatch(setAccCr(accountCreated));
},
setLogout: () => {
dispatch(setLogout());
},
};
};
+154 -63
View File
@@ -28,33 +28,34 @@ const RenderTextfield = ({
}) => {
return (
<>
<div
className={
touched && error
? "govuk-form-group govuk-form-group--error"
: "govuk-form-group "
}
>
<div className="govuk-form-group ">
<label className="govuk-label " htmlFor={id} id={id + "_label"}>
{label}
</label>
{touched && error && (
<span id={id + "-error"} className="govuk-error-message">
<span className="govuk-visually-hidden">Error:</span>{" "}
{touched &&
((error && (
<span>{errorMsg ? errorMsg : error}</span>
)) ||
(warning && <span>{warning}</span>))}
</span>
)}
<input
{...input}
className={className}
name={name}
id={id}
type={type}
/>
<div>
<input
{...input}
className={className}
name={name}
id={id}
type={type}
/>
{touched && error && (
<span
id={id + "-error"}
className="govuk-error-message govuk-form-group--error"
>
<span className="govuk-visually-hidden">
Error:
</span>{" "}
{touched &&
((error && (
<span>{errorMsg ? errorMsg : error}</span>
)) ||
(warning && <span>{warning}</span>))}
</span>
)}
</div>
</div>
</>
);
@@ -63,6 +64,8 @@ const RenderTextfield = ({
const RegisterForm = (props) => {
const {
handleSubmit,
pristine,
valid,
value,
setRegisterFormComplete,
setAccountCreatedComplete,
@@ -87,21 +90,51 @@ const RegisterForm = (props) => {
? "Invalid phone number"
: undefined;
const passwordsMatch = (value, allValues) =>
value !== allValues.pinswg_custom_password
? "Passwords don't match"
: undefined;
const minLength = (min) => (value) =>
value && value.length < min
? `Must be ${min} characters or more`
: undefined;
const minLength5 = minLength(5);
const [hasErrors, setHasErrors] = useState("");
const onHandleSubmit = (values) => {
//console.log(values);
setRegisterFormComplete(true);
};
console.log(pristine);
return (
<>
{!pristine && !valid && (
<div>
<span
id={"summary-error"}
className="govuk-error-message govuk-form-group--error-summary"
>
<span className="govuk-visually-hidden">Error:</span>{" "}
<span className="govuk-error-exclamation">
There are errors on this page. Please correct any
required fields and submit again.
</span>
</span>
</div>
)}
{props.accountCreatedComplete != true ? (
props.registerFormComplete == false ? (
<form onSubmit={handleSubmit(onHandleSubmit)}>
<fieldset className="govuk-fieldset">
<legend className="govuk-fieldset__legend govuk-fieldset__legend--m">
<h2 className="govuk-fieldset__heading">
About you
{t(
"account:register-new-account-sub-heading-1"
)}
</h2>
</legend>
<Field
@@ -111,8 +144,12 @@ const RegisterForm = (props) => {
type="text"
className="govuk-input govuk-input--width-20"
validate={[required]}
label="First name"
errorMsg="Is required"
label={t(
"account:register-new-account-first-name-label"
)}
errorMsg={t(
"account:register-new-account-first-name-label-errormsg"
)}
/>
<Field
name="lastname"
@@ -121,93 +158,143 @@ const RegisterForm = (props) => {
type="text"
className="govuk-input govuk-input--width-20"
validate={[required]}
label="Last name"
errorMsg="Is required"
label={t(
"account:register-new-account-last-name-label"
)}
errorMsg={t(
"account:register-new-account-last-name-label-errormsg"
)}
/>
<Field
name="email"
id="email"
name="emailaddress1"
id="emailaddress1"
component={RenderTextfield}
type="email"
className="govuk-input govuk-input--width-20"
validate={[required, email]}
label="Email address"
label={t(
"account:register-new-account-email-address-label"
)}
/>
<Field
name="telephone"
id="telephone"
name="telephone1"
id="telephone1"
component={RenderTextfield}
type="number"
className="govuk-input govuk-input--width-20"
validate={[required, phoneNumber]}
label="Telephone"
label={t(
"account:register-new-account-phone-label"
)}
/>
<Field
name="companygroup"
id="companygroup"
name="pinswg_custom_password"
id="pinswg_custom_password"
component={RenderTextfield}
type="text"
type="password"
className="govuk-input govuk-input--width-20"
label="Company/Group"
errorMsg="Is required"
label={t(
"account:register-new-account-password-label"
)}
validate={[required, minLength5]}
errorMsg={t(
"account:register-new-account-password-label-errormsg"
)}
/>
<Field
name="custom_password_check"
id="custom_password_check"
component={RenderTextfield}
type="password"
className="govuk-input govuk-input--width-20"
label={t(
"account:register-new-account-confirm-password-label"
)}
validate={[
required,
passwordsMatch,
minLength5,
]}
errorMsg={t(
"account:register-new-account-confirm-password-label-errormsg"
)}
/>
</fieldset>
<fieldset className="govuk-fieldset">
<legend className="govuk-fieldset__legend govuk-fieldset__legend--m">
<h2 className="govuk-fieldset__heading">
What is your address?
{t(
"account:register-new-account-sub-heading-2"
)}
</h2>
</legend>
<Field
name="addressline1"
id="addressline1"
name="address1_line1"
id="address1_line1"
component={RenderTextfield}
type="text"
className="govuk-input govuk-input--width-20"
label="Address line 1"
label={t(
"account:register-new-account-address-line-1-label"
)}
validate={[required]}
errorMsg="Is required"
errorMsg={t(
"account:register-new-account-address-line-1-label-errormsg"
)}
/>
<Field
name="addressline2"
id="addressline2"
name="address1_line2"
id="address1_line2"
component={RenderTextfield}
type="text"
className="govuk-input govuk-input--width-20"
label="Address line 2"
errorMsg="Is required"
label={t(
"account:register-new-account-address-line-2-label"
)}
/>
<Field
name="towncity"
id="towncity"
name="address1_city"
id="address1_city"
component={RenderTextfield}
type="text"
className="govuk-input govuk-input--width-10"
label="Town/City"
label={t(
"account:register-new-account-town-label"
)}
validate={[required]}
errorMsg="Is required"
errorMsg={t(
"account:register-new-account-town-label-errormsg"
)}
/>
<Field
name="county"
id="county"
name="address1_county"
id="address1_county"
component={RenderTextfield}
type="text"
className="govuk-input govuk-input--width-10"
label="County"
label={t(
"account:register-new-account-county-label"
)}
validate={[required]}
errorMsg="Is required"
errorMsg={t(
"account:register-new-account-county-label-errormsg"
)}
/>
<Field
name="postcode"
id="postcode"
name="address1_postalcode"
id="address1_postalcode"
component={RenderTextfield}
type="text"
className="govuk-input govuk-input--width-5"
label="Postcode"
label={t(
"account:register-new-account-postcode-label"
)}
validate={[required]}
errorMsg="Is required"
errorMsg={t(
"account:register-new-account-postcode-label-errormsg"
)}
/>
</fieldset>
@@ -217,7 +304,7 @@ const RegisterForm = (props) => {
className="govuk-button"
data-module="govuk-button"
>
Continue
{t("common:continue-button")}
</button>
</div>
</form>
@@ -229,7 +316,11 @@ const RegisterForm = (props) => {
/>
)
) : (
<RegisterComplete />
<RegisterComplete
props={props}
setRegisterFormComplete={setRegisterFormComplete}
setAccountCreatedComplete={setAccountCreatedComplete}
/>
)}
</>
);
+18 -8
View File
@@ -1,12 +1,22 @@
import Link from "next/link";
import useTranslation from "next-translate/useTranslation";
export default function Banner() {
return (
<div className="govuk-phase-banner">
<p className="govuk-phase-banner__content">
<span className="govuk-tag govuk-phase-banner__content__tag">beta</span>
<span className="govuk-phase-banner__text">This is a new service</span>
</p>
</div>
);
let { t, lang } = useTranslation();
return (
<div className="govuk-header phase_banner">
<div className="govuk-header__container govuk-width-container">
<div className="govuk-phase-banner">
<p className="govuk-phase-banner__content">
<span className="govuk-tag govuk-phase-banner__content__tag">
beta
</span>
<span className="govuk-phase-banner__text">
{t("common:new-service-beta")}
</span>
</p>
</div>
</div>
</div>
);
}
+551 -302
View File
@@ -1,8 +1,10 @@
import Link from "next/link";
import jsonpath from "jsonpath";
import _ from "lodash";
import { useState } from "react";
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import LoadingOverlay from "react-loading-overlay";
const Breadcrumbs = (props) => {
const { courseContent, slug, currentView } = props;
@@ -36,309 +38,556 @@ const Breadcrumbs = (props) => {
}
}
return (
<nav
aria-label={"Breadcrumb for " + _.startCase(_.toLower(appealType))}
role="navigation"
data-module="track-click"
>
<div className="govuk-breadcrumbs ">
<ol className="govuk-breadcrumbs__list">
<li className="govuk-breadcrumbs__list-item">
<Link href="http://www.gov.wales">
<a className="govuk-breadcrumbs__link">GOV.WALES</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
<Link
href={
router.pathname.includes("dns") ? "/dns" : "/"
}
>
<a className="govuk-breadcrumbs__link">
{router.pathname.includes("dns")
? t("dnsCommon:service-name")
: t("common:service-name")}
</a>
</Link>
</li>
{router.pathname == "/myportal" ? (
<li className="govuk-breadcrumbs__list-item">
{t("myportal:page-title")}
</li>
) : (
""
)}
{router.pathname == "/searchresults" ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link href="/myportal">
<a className="govuk-breadcrumbs__link">
My Portal
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
Search results
</li>
</>
) : (
""
)}
{router.pathname == "/newappeal" ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link href="/myportal">
<a className="govuk-breadcrumbs__link">
{t("newappeal:parent-page-title")}
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
{t("newappeal:page-title")}
</li>
</>
) : (
""
)}
{router.pathname == "/newappeal/selectappeal" ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link href="/myportal">
<a className="govuk-breadcrumbs__link">
{t("newappeal:parent-page-title")}
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
<Link href="/myportal">
<a className="govuk-breadcrumbs__link">
{t("newappeal:page-title")}
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
Select Appeal
</li>
</>
) : (
""
)}
{router.pathname == "/viewall" ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link href="/myportal">
<a className="govuk-breadcrumbs__link">
My Portal
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
Your cases
</li>
</>
) : (
""
)}
{router.pathname == "/myportal/viewall" ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link href="/myportal">
<a className="govuk-breadcrumbs__link">
My Portal
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
{currentView.viewName}
</li>
</>
) : (
""
)}
{router.pathname == "/case" ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link href="/myportal">
<a className="govuk-breadcrumbs__link">
My Portal
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
<Link href="/viewall">
<a className="govuk-breadcrumbs__link">
Your cases{" "}
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
Case Reference:{" "}
{
props.props.currentView.caseReference
.currentReference
}
</li>
</>
) : (
""
)}
{router.pathname == "/representation" ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link href="/myportal">
<a className="govuk-breadcrumbs__link">
My Portal
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
Make representation for:{" "}
{
props.props.currentView.caseReference
.currentReference
}
</li>
</>
) : (
""
)}
{router.pathname == "/account/personaldetails" ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link href="/myportal">
<a className="govuk-breadcrumbs__link">
My Portal
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
Your account
</li>
</>
) : (
""
)}
{router.pathname == "/account/register" ? (
<>
<li className="govuk-breadcrumbs__list-item">
Register your account
</li>
</>
) : (
""
)}
{router.pathname == "/account/changepassword" ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link href="/myportal">
<a className="govuk-breadcrumbs__link">
My Portal
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
Update your password
</li>
</>
) : (
""
)}
{router.pathname == "/dns" ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link href="/dns">
<a className="govuk-breadcrumbs__link">
{t("dnsCommon:service-name")}
</a>
</Link>
</li>
</>
) : (
""
)}
{router.pathname == "/dns/application-process" ? (
<>
<li className="govuk-breadcrumbs__list-item">
Guidance
</li>
</>
) : (
""
)}
{router.pathname == "/dns/help" ? (
<>
<li className="govuk-breadcrumbs__list-item">
Help
</li>
</>
) : (
""
)}
{router.pathname == "/dns/contact-us" ? (
<>
<li className="govuk-breadcrumbs__list-item">
Contact us
</li>
</>
) : (
""
)}
{router.pathname == "/dns/applications" ? (
<>
<li className="govuk-breadcrumbs__list-item">
{t("dnsApplications:page-title")}
</li>
</>
) : (
""
)}
{router.pathname == "/dns/application-view" ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link href="/dns/applications">
<a className="govuk-breadcrumbs__link">
{t(
"dnsApplicationView:page-parent-title"
)}
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
TWA - Morlais Demonstration Zone
</li>
</>
) : (
""
)}
{!_.isEmpty(slug) ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link href="/myportal">
<a className="govuk-breadcrumbs__link">
My Portal
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
<Link href="/newappeal">
<a className="govuk-breadcrumbs__link">
New Appeal
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
{props.formTitle}
</li>
</>
) : (
""
)}
const [showSpinnerState, setShowSpinnerState] = useState(false);
<Breadcrumb />
</ol>
</div>
</nav>
let spinnerState = () => {
showSpinnerState == true
? setShowSpinnerState(false)
: setShowSpinnerState(true);
};
return (
<>
<nav
aria-label={
"Breadcrumb for " + _.startCase(_.toLower(appealType))
}
role="navigation"
data-module="track-click"
>
<div className="govuk-breadcrumbs ">
<ol className="govuk-breadcrumbs__list">
{/* <li className="govuk-breadcrumbs__list-item">
<Link href={t("common:gov-wales-link")}>
<a className="govuk-breadcrumbs__link">
{t("common:gov-wales-label")}
</a>
</Link>
</li> */}
<li className="govuk-breadcrumbs__list-item">
<Link
href={
router.pathname.includes("/dns/")
? "/dns"
: "/"
}
>
<a className="govuk-breadcrumbs__link">
{router.pathname.includes("/dns/")
? t("dnsCommon:service-name")
: t("common:service-name-breadcrumb")}
</a>
</Link>
</li>
{router.pathname == "/myportal" ? (
<li className="govuk-breadcrumbs__list-item">
{t("myportal:page-title")}
</li>
) : (
""
)}
{router.pathname == "/myportal/searchresults" ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link
href={
router.locale != "en"
? router.locale + "/myportal"
: "/myportal"
}
>
<a className="govuk-breadcrumbs__link">
{t("common:breadcrumb-my-portal")}
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
{t("common:breadcrumb-search-results")}
</li>
</>
) : (
""
)}
{router.pathname ==
(router.locale == "cy"
? "/canlyniadauchwilio"
: "/searchresults") ? (
<>
<li className="govuk-breadcrumbs__list-item">
{t("common:breadcrumb-search-results")}
</li>
</>
) : (
""
)}
{router.pathname == "/advancedsearch" ? (
<>
<li className="govuk-breadcrumbs__list-item">
{t("common:breadcrumb-advanced-search")}
</li>
</>
) : (
""
)}
{router.pathname == "/advancedsearchresults" ? (
<>
{" "}
<li className="govuk-breadcrumbs__list-item">
<Link
href={
router.locale != "en"
? router.locale +
"/advancedsearch"
: "/advancedsearch"
}
>
<a className="govuk-breadcrumbs__link">
{t(
"common:breadcrumb-advanced-search"
)}
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
{t(
"common:breadcrumb-advanced-search-results"
)}
</li>
</>
) : (
""
)}
{router.pathname == "/newappeal" ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link
href={
router.locale != "en"
? router.locale + "/myportal"
: "/myportal"
}
>
<a className="govuk-breadcrumbs__link">
{t("newappeal:parent-page-title")}
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
{t("newappeal:page-title")}
</li>
</>
) : (
""
)}
{router.pathname == "/newappeal/selectappeal" ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link
href={
router.locale != "en"
? router.locale + "/myportal"
: "/myportal"
}
>
<a className="govuk-breadcrumbs__link">
{t("newappeal:parent-page-title")}
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
<Link
href={
router.locale != "en"
? router.locale + "/myportal"
: "/myportal"
}
>
<a className="govuk-breadcrumbs__link">
{t("newappeal:page-title")}
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
Select Appeal
</li>
</>
) : (
""
)}
{router.pathname == "/viewall" ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link
href={
router.locale != "en"
? router.locale + "/myportal"
: "/myportal"
}
>
<a className="govuk-breadcrumbs__link">
{t("common:breadcrumb-my-portal")}
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
Your cases
</li>
</>
) : (
""
)}
{router.pathname == "/myportal/viewall" ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link
href={
router.locale != "en"
? router.locale + "/myportal"
: "/myportal"
}
>
<a className="govuk-breadcrumbs__link">
{t("common:breadcrumb-my-portal")}
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
{currentView.viewName}
</li>
</>
) : (
""
)}
{router.pathname == "/myportal/case" ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link
href={
router.locale != "en"
? router.locale + "/myportal"
: "/myportal"
}
>
<a className="govuk-breadcrumbs__link">
{t("common:breadcrumb-my-portal")}
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
<Link
href={
router.locale != "en"
? router.locale + "/viewall"
: "/viewall"
}
>
<a className="govuk-breadcrumbs__link">
Your cases{" "}
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
{t("common:breadcrumb-case-reference")}:{" "}
{
props.props.currentView.caseReference
.currentReference
}
</li>
</>
) : (
""
)}
{router.pathname == "/case" ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link
href={
router.locale != "en"
? router.locale +
"/searchresults?q=" +
props.props.search
.searchString
: "/searchresults?q=" +
props.props.search
.searchString
}
>
<a
onClick={() => {
spinnerState();
router.back();
}}
className="govuk-breadcrumbs__link"
>
{t(
"common:breadcrumb-search-results"
)}
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
{t("common:breadcrumb-case-reference")}:{" "}
{
props.props.currentView.caseReference
.currentReference
}
</li>
</>
) : (
""
)}
{router.pathname == "/myportal/representation" ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link
href={
router.locale != "en"
? router.locale + "/myportal"
: "/myportal"
}
>
<a className="govuk-breadcrumbs__link">
{t("common:breadcrumb-my-portal")}
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
Make representation for:{" "}
{
props.props.currentView.caseReference
.currentReference
}
</li>
</>
) : (
""
)}
{router.pathname == "/account/personaldetails" ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link
href={
router.locale != "en"
? router.locale + "/myportal"
: "/myportal"
}
>
<a className="govuk-breadcrumbs__link">
{t("common:breadcrumb-my-portal")}
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
Your account
</li>
</>
) : (
""
)}
{router.pathname == "/account/register" ? (
<>
<li className="govuk-breadcrumbs__list-item">
{t("account:register-new-account-heading")}
</li>
</>
) : (
""
)}
{router.pathname == "/account/changepassword" ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link
href={
router.locale != "en"
? router.locale + "/myportal"
: "/myportal"
}
>
<a className="govuk-breadcrumbs__link">
{t("common:breadcrumb-my-portal")}
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
Update your password
</li>
</>
) : (
""
)}
{router.pathname == "/dns" ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link
href={
router.locale != "en"
? router.locale + "/dns"
: "/dns"
}
>
<a className="govuk-breadcrumbs__link">
{t("dnsCommon:service-name")}
</a>
</Link>
</li>
</>
) : (
""
)}
{router.pathname == "/dnsapplications" ? (
<>
<li className="govuk-breadcrumbs__list-item">
{t("dnsCommon:service-name")}
</li>
</>
) : (
""
)}
{router.pathname ==
(router.locale == "cy"
? "/manyliondns"
: "/dnsdetails") ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link
href={
router.locale == "en"
? router.locale +
"/dnsapplications"
: "/dnsapplications"
}
>
<a className="govuk-breadcrumbs__link">
{t("dnsCommon:service-name")}
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
{t("common:breadcrumb-case-reference")}:{" "}
{
props.props.currentView.caseReference
.currentReference
}
</li>
</>
) : (
""
)}
{router.pathname == "/dns/application-process" ? (
<>
<li className="govuk-breadcrumbs__list-item">
Guidance
</li>
</>
) : (
""
)}
{router.pathname == "/dns/help" ? (
<>
<li className="govuk-breadcrumbs__list-item">
Help
</li>
</>
) : (
""
)}
{router.pathname == "/dns/contact-us" ? (
<>
<li className="govuk-breadcrumbs__list-item">
Contact us
</li>
</>
) : (
""
)}
{router.pathname == "/dns/applications" ? (
<>
<li className="govuk-breadcrumbs__list-item">
{t("dnsApplications:page-title")}
</li>
</>
) : (
""
)}
{router.pathname == "/dns/application-view" ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link
href={
router.locale != "en"
? router.locale +
"/dns/applications"
: "/dns/applications"
}
>
<a className="govuk-breadcrumbs__link">
{t(
"dnsApplicationView:page-parent-title"
)}
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
TWA - Morlais Demonstration Zone
</li>
</>
) : (
""
)}
{router.pathname == "/help/cookies" ? (
<>
<li className="govuk-breadcrumbs__list-item">
{t("cookies:cookie-breadcrumb")}
</li>
</>
) : (
""
)}
{!_.isEmpty(slug) ? (
<>
<li className="govuk-breadcrumbs__list-item">
<Link
href={
router.locale != "en"
? router.locale + "/myportal"
: "/myportal"
}
>
<a className="govuk-breadcrumbs__link">
{t("common:breadcrumb-my-portal")}
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
<Link
href={
router.locale == "cy"
? router.locale + "/apêlnewydd"
: "/newappeal"
}
>
<a className="govuk-breadcrumbs__link">
{t("common:breadcrumb-new-appeal")}
</a>
</Link>
</li>
<li className="govuk-breadcrumbs__list-item">
{props.formTitle}
</li>
</>
) : (
""
)}
<Breadcrumb />
</ol>
</div>
</nav>
<LoadingOverlay
active={showSpinnerState}
spinner
text={t("common:spinner-searching")}
/>
</>
);
};
export default Breadcrumbs;
+12 -1
View File
@@ -21,15 +21,26 @@ const CaseSummary = (props) => {
<div className="govuk-grid-column-full">
<Summary
myCases={props.myCases}
myCasesDetails={props.myCasesDetails}
myRepresentations={props.myRepresentations}
watchedCases={props.watchedCases}
awaitingSubmission={props.awaitingSubmission}
caseReference={props.caseReference}
currentType={props.currentType}
appealTypeID={props.appealTypeID}
searchResultsObj={props.searchResultsObj}
searchDetailsObj={props.searchDetailsObj}
searchString={props.searchString}
incidentid={props.incidentid}
/>
<Documents
incidentid={props.incidentid}
caseReference={props.caseReference}
searchResultsObj={props.searchResultsObj}
searchDetailsObj={props.searchDetailsObj}
documentDetailsObj={props.documentDetailsObj}
documentHistoryObj={props.documentHistoryObj}
/>
<Documents />
</div>
</div>
</main>
+386 -52
View File
@@ -1,65 +1,399 @@
import Link from "next/link";
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import { useState, useEffect, useRef } from "react";
import { useDispatch, useSelector, shallowEqual, connect } from "react-redux";
import transLookup from "../../data/lookuptranslations.json";
import PaginationControl from "./pagination";
import LoadingOverlay from "react-loading-overlay";
export default function CaseSummary() {
import {
getBasicSearch,
getBasicSearchDetails,
getSearchDocumentDetails1,
getSearchDocumentHistory1,
getSearchDocumentHistory1Paged,
getSearchDocumentDetails1Paged,
getSASToken,
} from "../../actions";
import {
setSearchResults,
setSearchDetails,
setDocumentDetails,
setDocumentHistory,
getSearchResultsObj,
} from "../../store/searchOutput/action";
const DocumentDetails = (props) => {
let { t } = useTranslation();
const firstRender = useRef(false);
const {
incidentid,
caseReference,
searchResultsObj,
searchDetailsObj,
documentDetailsObj,
documentHistoryObj,
setDocumentDetails,
setDocumentHistory,
} = props;
const router = useRouter();
const { locale } = router;
return (
<div>
<div className="govuk-grid-row">
<div className="govuk-grid-column-full">
<h2>Documents</h2>
<dl className="govuk-summary-list govuk-!-margin-bottom-9 results">
<div className="govuk-summary-list__row results-headings">
<dd className="govuk-summary-list__key govuk-!-font-size-14 govuk-!-padding-left-2">
{t("case:documents-name-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
{t("case:documents-doc-type-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
{t("case:documents-date-published-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
{t("case:documents-size-label")}
</dd>
</div>
<div className="govuk-summary-list__row">
<dd className="govuk-summary-list__value govuk-!-font-size-14 govuk-!-padding-left-2">
<Link href="/case">
<a>
var documentDetailsArr = documentDetailsObj || [];
const DocumentView = (documentDetailsArr) => {
//console.log(documentDetailsArr);
documentDetailsArr = documentDetailsArr.value;
return (
<>
<p>
{documentDetailsObj["@odata.count"] > 1
? t("case:documents-count-label-1")
: t("case:documents-count-label-1a")}{" "}
{documentDetailsObj["@odata.count"]}{" "}
{documentDetailsObj["@odata.count"] > 1
? t("case:documents-count-label-2")
: t("case:documents-count-label-2a")}
</p>
<dl className="documentList govuk-summary-list govuk-!-margin-bottom-9 results">
<div className="govuk-summary-list__row results-headings">
<dd className="govuk-summary-list__key govuk-!-font-size-16 ">
{t("case:documents-name-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t("case:documents-doc-type-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t("case:documents-date-published-label")}
</dd>
{/* <dd className="govuk-summary-list__key govuk-!-font-size-16">
{t("case:documents-size-label")}
</dd> */}
</div>
{documentDetailsArr.map((item) => {
let detailsObj = jsonpath.query(
item,
"$..[?(@._pinswg_documentids_value=='" +
incidentid +
"')]"
);
detailsObj = item;
if (typeof detailsObj != "undefined") {
var documentHistoryArr = documentHistoryObj || [];
return documentHistoryArr.map(
(historyItem, key) => {
let historyObj = jsonpath.query(
documentHistoryObj[key],
"$..value[?(@._pinswg_documentid_value=='" +
detailsObj.pinswg_documentid +
"')]"
);
historyObj = historyObj[0];
return !_.isEmpty(historyObj) ? (
<div
className="govuk-summary-list__row"
key={key}
>
<dd className="govuk-summary-list__value govuk-!-font-size-16 ">
<a
href={
"/api/proxy/documents/download/" +
detailsObj.pinswg_isharedocumentreference
}
>
<span className="results-visually-hidden">
{t(
"case:documents-name-label"
)}
:
</span>
{_.has(historyObj, [
"_pinswg_documentid_value@OData.Community.Display.V1.FormattedValue",
])
? historyObj[
"_pinswg_documentid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</a>
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"case:documents-doc-type-label"
)}
:
</span>
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_isharedocumentlocations@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_isharedocumentlocations@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"case:documents-date-published-label"
)}
:
</span>
{_.has(historyObj, [
"pinswg_publisheddate@OData.Community.Display.V1.FormattedValue",
])
? formatDates(
historyObj[
"pinswg_publisheddate@OData.Community.Display.V1.FormattedValue"
]
)
: ""}
</dd>
{/* <dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t("case:documents-name-label")}:
{t("case:documents-size-label")}:
</span>
3272770 Appeal Decision.pdf
</a>
</Link>
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<span className="results-visually-hidden">
{t("case:documents-doc-type-label")}:
</span>
Outcome / Decision
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<span className="results-visually-hidden">
{t("case:documents-date-published-label")}:
</span>
15/06/2021
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<span className="results-visually-hidden">
{t("case:documents-size-label")}:
</span>
92
</dd>
</div>
</dl>
92
</dd> */}
</div>
) : (
""
);
}
);
}
})}
</dl>
<PaginationControl
currentPage={currentPage}
searchResultsObj={documentDetailsObj}
spinnerState={spinnerState}
getDocumentResults={getDocumentResults}
/>
</>
);
};
useEffect(() => {
const docDetailsObj = async () => {
let docObj = await getSearchDocumentDetails1(incidentid)
.then((data) => {
//console.log(data);
setDocumentDetails(data);
return data;
})
.then((data) => {
let historyObj = getDocumentHistory(data.value).then(
(result) => {
setDocumentHistory(result);
setDocumentSearchState(true);
return result;
}
);
return data;
});
return docObj;
};
const getDocumentHistory = async (searchDocumentDetailsObj) => {
let historyArr = [];
searchDocumentDetailsObj = searchDocumentDetailsObj || [];
const detailsObj = searchDocumentDetailsObj.map(
(historyDetail, index) => {
if (historyDetail.pinswg_publishtoweb != true) {
console.log(historyDetail.pinswg_documentid);
} else {
historyArr.push(
getSearchDocumentHistory1(
historyDetail.pinswg_documentid
)
);
}
}
);
return Promise.all(historyArr);
};
const searchDocumentResultsObj = docDetailsObj();
}, [incidentid, setDocumentHistory, setDocumentDetails]);
const getDocumentResults = (pageNumber) => {
//console.log(advancedSearch, searchString, pageNumber);
getSearchDocumentDetails1Paged(incidentid, pageNumber)
.then((data) => {
//console.log(data);
setDocumentDetails(data);
return data;
})
.then((data) => {
//console.log("getting details", data);
return getDocumentHistory(data.value).then((data) => {
setDocumentHistory(data);
setShowSpinnerState(false);
});
});
};
const getDocumentDetails = async () => {
let docObj = await getSearchDocumentDetails1Paged(
incidentid,
pageNumber
)
.then((data) => {
//console.log(data);
setDocumentDetails(data);
return data;
})
.then((data) => {
let historyObj = getDocumentHistory(
data.value,
pageNumber
).then((result) => {
setDocumentHistory(result);
return result;
});
return data;
});
return docObj;
};
const getDocumentHistory = async (searchDocumentDetailsObj, pageNumber) => {
let historyArr = [];
searchDocumentDetailsObj = searchDocumentDetailsObj || [];
const detailsObj = searchDocumentDetailsObj.map(
(historyDetail, index) => {
if (historyDetail.pinswg_publishtoweb != true) {
console.log(historyDetail.pinswg_documentid);
} else {
historyArr.push(
getSearchDocumentHistory1Paged(
historyDetail.pinswg_documentid,
pageNumber
)
);
}
}
);
return Promise.all(historyArr);
};
function formatDates(dateObj) {
var dateObj = new Date(dateObj);
var dd = String(dateObj.getDate()).padStart(2, "0");
var mm = String(dateObj.getMonth() + 1).padStart(2, "0"); //January is 0!
var yyyy = dateObj.getFullYear();
return dd + "/" + mm + "/" + yyyy;
}
const pagesCount = Math.ceil(documentDetailsObj["@odata.count"] / 10);
let currentPage = 0;
currentPage = decodeURI(documentDetailsObj["@odata.nextLink"]).split(
"skiptoken="
)[1];
currentPage =
typeof currentPage != "undefined"
? parseInt(
decodeURI(currentPage)
.split('pagenumber="')[1]
.slice(
0,
decodeURI(currentPage)
.split('pagenumber="')[1]
.indexOf('"')
) - 1
)
: pagesCount;
const [showSpinnerState, setShowSpinnerState] = useState(false);
let spinnerState = () => {
showSpinnerState == true
? setShowSpinnerState(false)
: setShowSpinnerState(true);
};
const [showDocumentSearchState, setDocumentSearchState] = useState(false);
let documentSearchState = () => {
showDocumentSearchState == true
? setDocumentSearchState(false)
: setDocumentSearchState(true);
};
return (
<>
<div>
<div className="govuk-grid-row">
<div className="govuk-grid-column-full">
<h2>{t("case:documents-heading-label")}</h2>
{_.isEmpty(documentHistoryObj) ? (
<div className="govuk-grid-row">
<div className="govuk-grid-column-two-thirds">
<h3>
{showDocumentSearchState == false
? t("case:documents-checking-label")
: t(
"case:documents-non-available-label"
)}
</h3>
</div>
</div>
) : (
DocumentView(documentDetailsArr)
)}
</div>
</div>
</div>
</div>
<LoadingOverlay
active={showSpinnerState}
spinner
text={t("common:spinner-searching")}
/>
</>
);
}
};
const mapStateToProps = (state) => {
return {
...state,
};
};
const mapDispatchToProps = (dispatch) => {
return {
setDocumentDetails: (detailsObj) => {
dispatch(setDocumentDetails(detailsObj));
},
setDocumentHistory: (historyObj) => {
dispatch(setDocumentHistory(historyObj));
},
};
};
export default connect(mapStateToProps, mapDispatchToProps)(DocumentDetails);
+158
View File
@@ -0,0 +1,158 @@
import Link from "next/link";
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
const PaginationControl = (props) => {
const {
searchString,
searchResultsObj,
currentPage,
spinnerState,
getDocumentResults,
} = props;
let { t } = useTranslation();
const router = useRouter();
const { locale } = router;
const pagesCount = Math.ceil(searchResultsObj["@odata.count"] / 10);
const getRange = (start, end) => {
//console.log(start, end);
return Array(end - start + 1)
.fill()
.map((v, i) => i + start);
};
const paginationNumbers = (currentPage, pageCount) => {
//console.log(currentPage);
let delta;
if (pageCount <= 10) {
// delta === 7: [1 2 3 4 5 6 7]
delta = 10;
} else {
// delta === 2: [1 ... 4 5 6 ... 10]
// delta === 4: [1 2 3 4 5 ... 10]
delta = currentPage > 4 && currentPage < pageCount - 3 ? 4 : 6;
}
const range = {
start: Math.round(currentPage - delta / 2),
end: Math.round(currentPage + delta / 2),
};
if (range.start - 1 === 1 || range.end + 1 === pageCount) {
range.start += 1;
range.end += 1;
}
let pages =
currentPage > delta
? getRange(
Math.min(range.start, pageCount - delta),
Math.min(range.end, pageCount)
)
: getRange(1, Math.min(pageCount, delta + 1));
const withDots = (value, pair) =>
pages.length + 1 !== pageCount ? pair : [value];
if (pages[0] !== 1) {
pages = withDots(1, [1, "..."]).concat(pages);
}
if (pages[pages.length - 1] < pageCount) {
pages = pages.concat(withDots(pageCount, ["...", pageCount]));
}
//console.log(pages);
return pages;
};
const paginationArray = paginationNumbers(currentPage, pagesCount);
return (
<>
{pagesCount > 1 ? (
<div className="govuk-!-margin-bottom-7 ">
<div className="govuk-grid-row paginationWrapper">
<div className="govuk-grid-column-one-quarter paginationPrevious">
{currentPage != 1 ? (
<span
className="govuk-body govuk-link govuk-!-font-weight-bold govuk-link--no-underline activePaginationItem leftTextButton"
onClick={() => {
spinnerState(),
getDocumentResults(currentPage - 1);
}}
>
{t("common:previous-link-button")}
</span>
) : (
<span className="govuk-body leftTextButton govuk-!-font-weight-bold">
{t("common:previous-link-button")}
</span>
)}
</div>
<div className="govuk-grid-column-one-half paginationContainer">
{paginationArray.map((e, i) =>
currentPage == i + 1 ? (
<span
key={i}
className=" govuk-body govuk-!-padding-2 govuk-!-font-weight-bold "
>
{e}
</span>
) : e == "..." ? (
<span
key={i}
className=" govuk-body govuk-!-padding-2 govuk-!-font-weight-bold govuk-link--no-underline activePaginationItem"
>
{e}
</span>
) : (
<span
className="govuk-body govuk-link govuk-!-padding-2 govuk-!-font-weight-bold govuk-link--no-underline activePaginationItem"
key={i}
onClick={() => {
spinnerState();
console.log(i + 1);
getDocumentResults(i + 1);
}}
>
{e}
</span>
)
)}
</div>
<div className="govuk-grid-column-one-quarter paginationNext">
{currentPage != pagesCount ? (
<span
className="govuk-body govuk-link govuk-!-font-weight-bold govuk-link--no-underline activePaginationItem rightTextButton"
onClick={() => {
spinnerState(),
getDocumentResults(currentPage + 1);
}}
>
{t("common:next-link-button")}
</span>
) : (
<span className="govuk-body rightTextButton govuk-!-font-weight-bold">
{" "}
{t("common:next-link-button")}
</span>
)}
</div>
</div>
<div className="govuk-body-s mobilePageCount">
{t("common:pages-label")} {currentPage}{" "}
{t("common:of-label")} {pagesCount}
</div>
</div>
) : (
""
)}
</>
);
};
export default PaginationControl;
+1 -1
View File
@@ -93,7 +93,7 @@ let MakeRepresentation = (props) => {
? setRepresentationCapacity(false)
: setRepresentationCapacity(
formObj["representationForm"].values.representationCapacity
.replace(/[\s\-\+\(\)\,\/]/g, "")
.replace(/(\band|[\s\-\+\(\)\,\&])/g, "")
.toLowerCase()
);
+3 -3
View File
@@ -107,7 +107,7 @@ let MakeRepresentation = (props) => {
)
? false
: formObj["representationForm"].values.representationCapacity
.replace(/[\s\-\+\(\)\,\/]/g, "")
.replace(/(\band|[\s\-\+\(\)\,\&])/g, "")
.toLowerCase();
};
@@ -215,14 +215,14 @@ let MakeRepresentation = (props) => {
// console.log(_.isEmpty(currentView.representationCapacity));
// console.log(
// values.representationCapacity
// .replace(/[\s\-\+\(\)\,\/]/g, "")
// .replace(/(\band|[\s\-\+\(\)\,\&])/g, "")
// .toLowerCase() == currentView.representationCapacity
// );
_.isEmpty(currentView.representationCapacity)
? setRepresentationCapacity(
values.representationCapacity
.replace(/[\s\-\+\(\)\,\/]/g, "")
.replace(/(\band|[\s\-\+\(\)\,\&])/g, "")
.toLowerCase()
)
: setRepresentationSubmit(true);
+621 -292
View File
@@ -1,8 +1,46 @@
import Link from "next/link";
import { useRouter } from "next/router";
import { useState, useEffect, useRef } from "react";
import { useDispatch, useSelector, shallowEqual, connect } from "react-redux";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../data/lookuptranslations.json";
import LoadingOverlay from "react-loading-overlay";
import { getLinkedCases } from "../../actions";
import {
setCurrentLinkedCases,
setCurrentReference,
} from "../../store/currentView/action";
import { getFormCollectionByID } from "../utils";
import Pinswg_advertsid from "./summaryTypes/pinswg_advertsid";
import Pinswg_callinss77id from "./summaryTypes/pinswg_callinss77id";
import Pinswg_commonlandid from "./summaryTypes/pinswg_commonlandid";
import Pinswg_communityinfrastructurelevyid from "./summaryTypes/pinswg_communityinfrastructurelevyid";
import Pinswg_compulsorypurchaseordersid from "./summaryTypes/pinswg_compulsorypurchaseordersid";
import Pinswg_dnsid from "./summaryTypes/pinswg_dnsid";
import Pinswg_electricityactid from "./summaryTypes/pinswg_electricityactid";
import Pinswg_enforcementlistedbuildingconseid from "./summaryTypes/pinswg_enforcementlistedbuildingconseid";
import Pinswg_enforcementnoticeappeals174id from "./summaryTypes/pinswg_enforcementnoticeappeals174id";
import Pinswg_environmentalpermittingid from "./summaryTypes/pinswg_environmentalpermittingid";
import Pinswg_harbourrevisionorderid from "./summaryTypes/pinswg_harbourrevisionorderid";
import Pinswg_hedgeshedgerowstreepreservatioid from "./summaryTypes/pinswg_hedgeshedgerowstreepreservatioid";
import Pinswg_householderappealhasid from "./summaryTypes/pinswg_householderappealhasid";
import Pinswg_lawfuldevelopmentcertificatappid from "./summaryTypes/pinswg_lawfuldevelopmentcertificatappid";
import Pinswg_ldpid from "./summaryTypes/pinswg_ldpid";
import Pinswg_listedbuildingandconservationrid from "./summaryTypes/pinswg_listedbuildingandconservationrid";
import Pinswg_maintenanceoflands217id from "./summaryTypes/pinswg_maintenanceoflands217id";
import Pinswg_miscellaneouscasewordid from "./summaryTypes/pinswg_miscellaneouscasewordid";
import Pinswg_nonvalidationid from "./summaryTypes/pinswg_nonvalidationid";
import Pinswg_planningappeals78id from "./summaryTypes/pinswg_planningappeals78id";
import Pinswg_planningconditionss73s79id from "./summaryTypes/pinswg_planningconditionss73s79id";
import Pinswg_planningobligationappeals106id from "./summaryTypes/pinswg_planningobligationappeals106id";
import Pinswg_rowid from "./summaryTypes/pinswg_rowid";
import Pinswg_transportandworkactid from "./summaryTypes/pinswg_transportandworkactid";
import Pinswg_wayleaveid from "./summaryTypes/pinswg_wayleaveid";
const CaseSummary = (props) => {
let { t } = useTranslation();
@@ -10,21 +48,31 @@ const CaseSummary = (props) => {
const router = useRouter();
const { locale } = router;
const {
appealTypeID,
incidentid,
caseReference,
myCases,
myRepresentations,
watchedCases,
awaitingSubmission,
searchResultsObj,
searchDetailsObj,
currentType,
setCurrentLinkedCases,
linkedCasesReference,
setCurrentReference,
} = props;
const noRepresentationLink = ["/case", "/dnsdetails"];
let setCaseQueryObj = props[currentType];
let setCaseDetailsObj = props[currentType + "Details"];
var casesObj = {};
currentType == "searchResultsObj"
? (casesObj = jsonpath.query(
setCaseQueryObj,
searchResultsObj,
'$..[?(@.title=="' + caseReference + '")]'
))
: (casesObj = jsonpath.query(
@@ -34,298 +82,579 @@ const CaseSummary = (props) => {
casesObj = Object.assign({}, ...casesObj);
var detailsObj = {};
currentType == "searchResultsObj"
? (detailsObj = jsonpath.query(
searchDetailsObj,
'$..[?(@.pinswg_name=="' + caseReference + '")]'
))
: (detailsObj = jsonpath.query(
setCaseDetailsObj,
'$..[?(@.pinswg_name=="' + caseReference + '")]'
));
detailsObj = detailsObj[0];
let showDetails = typeof detailsObj != "undefined" ? true : false;
let showDetailsBlock =
showDetails == true ? (
<div>
<div className="govuk-grid-row">
<div className="govuk-grid-column-full">
<h1 className="govuk-heading-xl govuk-!-margin-bottom-7">
{t("case:summary-reference-label")}:{" "}
{currentType == "searchResultsObj"
? detailsObj.pinswg_name
: casesObj.reference}
</h1>
<dl className="govuk-summary-list govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-applicant-label")}
</dt>
<dd className="govuk-summary-list__value">
{detailsObj[
"_pinswg_appellant_value@OData.Community.Display.V1.FormattedValue"
] || "not entered"}
</dd>
</div>
{_.has(detailsObj, "pinswg_agentcontactname") ? (
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-agent-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_agentcontactname"
)
? detailsObj.pinswg_agentcontactname
: ""}
</dd>
</div>
) : (
""
)}
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-site-address-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_siteaddressline1"
)
? detailsObj.pinswg_siteaddressline1
: ""}
{_.has(
detailsObj,
"pinswg_siteaddressline1"
) &&
detailsObj.pinswg_siteaddressline1 !=
null && <br />}
{_.has(
detailsObj,
"pinswg_siteaddressline2"
)
? detailsObj.pinswg_siteaddressline2
: ""}
{_.has(
detailsObj,
"pinswg_siteaddressline2"
) &&
detailsObj.pinswg_siteaddressline2 !=
null && <br />}
{_.has(detailsObj, "pinswg_siteaddresstown")
? detailsObj.pinswg_siteaddresstown
: ""}
{_.has(
detailsObj,
"pinswg_siteaddresstown"
) &&
detailsObj.pinswg_siteaddresstown !=
null && <br />}
{_.has(
detailsObj,
"pinswg_siteaddresscounty"
)
? detailsObj.pinswg_siteaddresscounty
: ""}
{_.has(
detailsObj,
"pinswg_siteaddresscounty"
) &&
detailsObj.pinswg_siteaddresscounty !=
null && <br />}
{_.has(
detailsObj,
"pinswg_siteaddresspostcode"
)
? detailsObj.pinswg_siteaddresspostcode
: ""}
</dd>
</div>
</dl>
</div>
</div>
{/* <div className="govuk-grid-row">
<div className="govuk-grid-column-full">
<div className="govuk-button-group">
{noRepresentationLink.includes(router.pathname) ==
true ? (
""
) : (
<Link href="/representation">
<a className="govuk-button">
{t(
"case:summary-make-representation-label"
)}
</a>
</Link>
)}
<a
onClick={() => {
spinnerState();
router.back();
}}
className="govuk-button govuk-button--secondary"
>
{t("case:summary-back-button-label")}
</a>
</div>
</div>
</div> */}
{showSummary(casesObj, detailsObj)}
</div>
) : (
<>
<div>
<div className="govuk-grid-row">
<div className="govuk-grid-column-full">
<h1>Not details currently held</h1>
</div>
</div>
</div>
<div className="govuk-grid-row">
<div className="govuk-grid-column-full">
<div className="govuk-button-group">
{noRepresentationLink.includes(router.pathname) ==
true ? (
""
) : (
<Link href="/representation">
<a className="govuk-button">
{t(
"case:summary-make-representation-label"
)}
</a>
</Link>
)}
<a
onClick={() => {
spinnerState();
router.back();
}}
className="govuk-button govuk-button--secondary"
>
{t("case:summary-back-button-label")}
</a>
</div>
</div>
</div>
</>
);
function showSummary(casesObj, detailsObj) {
let appealIDObj =
getFormCollectionByID(appealTypeID).PrimaryIdAttribute;
switch (appealIDObj) {
case "pinswg_advertsid":
return (
<Pinswg_advertsid
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
case "pinswg_callinss77id":
return (
<Pinswg_callinss77id
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
case "pinswg_commonlandid":
return (
<Pinswg_commonlandid
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
case "pinswg_communityinfrastructurelevyid":
return (
<Pinswg_communityinfrastructurelevyid
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
case "pinswg_compulsorypurchaseordersid":
return (
<Pinswg_compulsorypurchaseordersid
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
case "pinswg_dnsid":
return (
<Pinswg_dnsid
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
case "pinswg_electricityactid":
return (
<Pinswg_electricityactid
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
case "pinswg_enforcementlistedbuildingconseid":
return (
<Pinswg_enforcementlistedbuildingconseid
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
case "pinswg_enforcementnoticeappeals174id":
return (
<Pinswg_enforcementnoticeappeals174id
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
case "pinswg_environmentalpermittingid":
return (
<Pinswg_environmentalpermittingid
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
case "pinswg_harbourrevisionorderid":
return (
<Pinswg_harbourrevisionorderid
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
case "pinswg_hedgeshedgerowstreepreservatioid":
return (
<Pinswg_hedgeshedgerowstreepreservatioid
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
case "pinswg_householderappealhasid":
return (
<Pinswg_householderappealhasid
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
case "pinswg_lawfuldevelopmentcertificatappid":
return (
<Pinswg_lawfuldevelopmentcertificatappid
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
case "pinswg_ldpid":
return (
<Pinswg_ldpid
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
case "pinswg_listedbuildingandconservationrid":
return (
<Pinswg_listedbuildingandconservationrid
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
case "pinswg_maintenanceoflands217id":
return (
<Pinswg_maintenanceoflands217id
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
case "pinswg_miscellaneouscasewordid":
return (
<Pinswg_miscellaneouscasewordid
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
case "pinswg_nonvalidationid":
return (
<Pinswg_nonvalidationid
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
case "pinswg_planningappeals78id":
return (
<Pinswg_planningappeals78id
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
case "pinswg_planningconditionss73s79id":
return (
<Pinswg_planningconditionss73s79id
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
case "pinswg_planningobligationappeals106id":
return (
<Pinswg_planningobligationappeals106id
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
case "pinswg_rowid":
return (
<Pinswg_rowid
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
case "pinswg_transportandworkactid":
return (
<Pinswg_transportandworkactid
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
case "pinswg_wayleaveid":
return (
<Pinswg_wayleaveid
casesObj={casesObj}
detailsObj={detailsObj}
formatDates={formatDates}
linkedCasesList={linkedCasesList}
currentView={props.currentView}
/>
);
break;
}
}
useEffect(() => {
const linkCaseObj = async () => {
let docObj = await getLinkedCases(incidentid).then((data) => {
//console.log(data);
setCurrentLinkedCases(data);
return data;
});
return linkCaseObj;
};
const linkedCases = linkCaseObj();
}, [incidentid, setCurrentLinkedCases]);
const [showSpinnerState, setShowSpinnerState] = useState(false);
let spinnerState = () => {
showSpinnerState == true
? setShowSpinnerState(false)
: setShowSpinnerState(true);
};
function formatDates(dateObj) {
var dateObj = new Date(dateObj);
var dd = String(dateObj.getDate()).padStart(2, "0");
var mm = String(dateObj.getMonth() + 1).padStart(2, "0"); //January is 0!
var yyyy = dateObj.getFullYear();
return dd + "/" + mm + "/" + yyyy;
}
function linkedCasesList(linkedCasesReference) {
//console.log(linkedCasesReference);
linkedCasesReference = linkedCasesReference.value || [];
return (
<>
<ul className="govuk-list govuk-!-font-size-14">
{linkedCasesReference.map((item, key) => {
return (
<li key={key}>
<Link
href={
router.locale == "cy"
? "/achos"
: "/case"
}
>
<a
onClick={() => {
setCurrentReference({
"currentReference": item.title,
"currentType":
"searchResultsObj",
"incidentid": item.incidentid,
});
}}
className=""
>
{item.title}
</a>
</Link>
</li>
);
// console.log(item.incidentid, item.title);
})}
</ul>
</>
);
}
return (
<div>
<div className="govuk-grid-row">
<div className="govuk-grid-column-full">
<h1 className="govuk-heading-xl govuk-!-margin-bottom-7">
Reference:{" "}
{currentType == "searchResultsObj"
? casesObj.title
: casesObj.reference}
</h1>
<dl className="govuk-summary-list govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-applicant-label")}
</dt>
<dd className="govuk-summary-list__value">
{casesObj.appellantApplicant || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-agent-label")}
</dt>
<dd className="govuk-summary-list__value">
Mr A Agent
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-site-address-label")}
</dt>
<dd className="govuk-summary-list__value">
{casesObj.address1 || ""}
<br />
{casesObj.town || ""}
<br />
{casesObj.postcode || ""}
</dd>
</div>
</dl>
</div>
</div>
<div className="govuk-grid-row">
<div className="govuk-grid-column-full">
<div className="govuk-button-group">
<Link href="/representation">
<a className="govuk-button">
{t("case:summary-make-representation-label")}
</a>
</Link>
<a
onClick={() => router.back()}
className="govuk-button govuk-button--secondary"
>
{t("case:summary-back-button-label")}
</a>
</div>
</div>
</div>
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] || "N/A"}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-lpa-label")}
</dt>
<dd className="govuk-summary-list__value">
{casesObj.lpaname || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-summary-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{casesObj.caseDetails.caseSummary ||
""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-officer-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{casesObj.caseDetails.caseOfficer ||
""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{casesObj.caseDetails.procedure ||
""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{casesObj.caseDetails.decision ||
""}
<br />
<Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link>
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-link-status-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{casesObj.caseDetails
.caseLinkStatus || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-linked-cases-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{casesObj.caseDetails.linkedCases ||
""}
</dd>
</div>
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-start-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{casesObj.caseDates.start_date ||
"N/A"}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-questionnaire-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{casesObj.caseDates
.questionnaireDue || "N/A"}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-statement-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{casesObj.caseDates.statementsDue ||
"N/A"}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-interested-party-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{casesObj.caseDates
.interestedPartyCommentsdue ||
"N/A"}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-applicant-final-comments-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{casesObj.caseDates
.appellantLPAFinalCommentsdue ||
"N/A"}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-inquiry-evidence-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{casesObj.caseDates
.inquiryEvidenceDue || "N/A"}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{casesObj.caseDates.eventDate ||
"N/A"}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-decision-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{casesObj.caseDates.decisionDate ||
"N/A"}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
{/* <div className="govuk-grid-row">
<div className="govuk-grid-column-full">
<div className="govuk-button-group">
<Link href="/advancedsearch">
<a className="govuk-button">
{t("case:summary-documents-button-label")}
</a>
</Link>
</div>
</div>
</div> */}
</div>
<>
{showDetailsBlock}
<LoadingOverlay
active={showSpinnerState}
spinner
text={t("common:spinner-searching")}
/>{" "}
</>
);
};
export default CaseSummary;
const mapStateToProps = (state) => {
return {
...state,
};
};
const mapDispatchToProps = (dispatch) => {
return {
setCurrentLinkedCases: (parentIncidentid) => {
dispatch(setCurrentLinkedCases(parentIncidentid));
},
setCurrentReference: (currentReference) => {
dispatch(setCurrentReference(currentReference));
},
};
};
export default connect(mapStateToProps, mapDispatchToProps)(CaseSummary);
@@ -0,0 +1,357 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_advertsid = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-lpa-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-officer-label")}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{/* {casesObj.caseDetails.caseOfficer ||
""} */}
{_.has(casesObj, "_ownerid_value")
? casesObj[
"_ownerid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
<br />
{/* <Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link> */}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-link-status-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(casesObj, [
"numberofchildincidents",
])
? casesObj.numberofchildincidents >
0
? t(
"case:summary-case-link-status-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)}
</dd>
</div>
{casesObj.numberofchildincidents > 0 ? (
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-linked-cases-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{linkedCasesList(
props.currentView
.linkedCaseReferences
)}
</dd>
</div>
) : (
""
)}
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-start-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(detailsObj, "pinswg_startdate")
? !_.isEmpty(
detailsObj.pinswg_startdate
)
? formatDates(
detailsObj.pinswg_startdate
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_startdates"
)
? !_.isEmpty(
detailsObj.pinswg_startdates
)
? formatDates(
detailsObj.pinswg_startdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-questionnaire-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_questionnaireduedate"
)
? !_.isEmpty(
detailsObj.pinswg_questionnaireduedate
)
? formatDates(
detailsObj.pinswg_questionnaireduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-interested-party-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_otherpartiesstatement"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatement
)
? formatDates(
detailsObj.pinswg_otherpartiesstatement
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_otherpartiesstatements"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatements
)
? formatDates(
detailsObj.pinswg_otherpartiesstatements
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateeventrequested"
)
? !_.isEmpty(
detailsObj.pinswg_dateeventrequested
)
? formatDates(
detailsObj.pinswg_dateeventrequested
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
);
};
export default Pinswg_advertsid;
@@ -0,0 +1,433 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_callinss77id = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-lpa-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-officer-label")}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{/* {casesObj.caseDetails.caseOfficer ||
""} */}
{_.has(casesObj, "_ownerid_value")
? casesObj[
"_ownerid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
<br />
{/* <Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link> */}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-link-status-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(casesObj, [
"numberofchildincidents",
])
? casesObj.numberofchildincidents >
0
? t(
"case:summary-case-link-status-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)}
</dd>
</div>
{casesObj.numberofchildincidents > 0 ? (
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-linked-cases-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{linkedCasesList(
props.currentView
.linkedCaseReferences
)}
</dd>
</div>
) : (
""
)}
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-start-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(detailsObj, "pinswg_startdate")
? !_.isEmpty(
detailsObj.pinswg_startdate
)
? formatDates(
detailsObj.pinswg_startdate
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_startdates"
)
? !_.isEmpty(
detailsObj.pinswg_startdates
)
? formatDates(
detailsObj.pinswg_startdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-questionnaire-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_questionnaireduedate"
)
? !_.isEmpty(
detailsObj.pinswg_questionnaireduedate
)
? formatDates(
detailsObj.pinswg_questionnaireduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-statement-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_statementduedate"
)
? !_.isEmpty(
detailsObj.pinswg_statementduedate
)
? formatDates(
detailsObj.pinswg_statementduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-interested-party-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_otherpartiesstatement"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatement
)
? formatDates(
detailsObj.pinswg_otherpartiesstatement
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_otherpartiesstatements"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatements
)
? formatDates(
detailsObj.pinswg_otherpartiesstatements
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-applicant-final-comments-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_finalcommentsduedate"
)
? !_.isEmpty(
detailsObj.pinswg_finalcommentsduedate
)
? formatDates(
detailsObj.pinswg_finalcommentsduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-inquiry-evidence-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_proofsofevidencewrittenstatementsofeviden"
)
? !_.isEmpty(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
? formatDates(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateeventrequested"
)
? !_.isEmpty(
detailsObj.pinswg_dateeventrequested
)
? formatDates(
detailsObj.pinswg_dateeventrequested
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
);
};
export default Pinswg_callinss77id;
@@ -0,0 +1,453 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_commonlandid = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-lpa-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-officer-label")}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{/* {casesObj.caseDetails.caseOfficer ||
""} */}
{_.has(casesObj, "_ownerid_value")
? casesObj[
"_ownerid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
<br />
{/* <Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link> */}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-link-status-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(casesObj, [
"numberofchildincidents",
])
? casesObj.numberofchildincidents >
0
? t(
"case:summary-case-link-status-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)}
</dd>
</div>
{casesObj.numberofchildincidents > 0 ? (
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-linked-cases-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{linkedCasesList(
props.currentView
.linkedCaseReferences
)}
</dd>
</div>
) : (
""
)}
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-relevant-authoritylabel"
)}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj.pinswg_relevantauthorityname +
'")].value_cy'
)
: detailsObj.pinswg_relevantauthorityname ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-start-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(detailsObj, "pinswg_startdate")
? !_.isEmpty(
detailsObj.pinswg_startdate
)
? formatDates(
detailsObj.pinswg_startdate
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_startdates"
)
? !_.isEmpty(
detailsObj.pinswg_startdates
)
? formatDates(
detailsObj.pinswg_startdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-questionnaire-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_questionnaireduedate"
)
? !_.isEmpty(
detailsObj.pinswg_questionnaireduedate
)
? formatDates(
detailsObj.pinswg_questionnaireduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-statement-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_statementduedate"
)
? !_.isEmpty(
detailsObj.pinswg_statementduedate
)
? formatDates(
detailsObj.pinswg_statementduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-interested-party-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_otherpartiesstatement"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatement
)
? formatDates(
detailsObj.pinswg_otherpartiesstatement
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_otherpartiesstatements"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatements
)
? formatDates(
detailsObj.pinswg_otherpartiesstatements
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-applicant-final-comments-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_finalcommentsduedate"
)
? !_.isEmpty(
detailsObj.pinswg_finalcommentsduedate
)
? formatDates(
detailsObj.pinswg_finalcommentsduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-inquiry-evidence-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_proofsofevidencewrittenstatementsofeviden"
)
? !_.isEmpty(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
? formatDates(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateeventrequested"
)
? !_.isEmpty(
detailsObj.pinswg_dateeventrequested
)
? formatDates(
detailsObj.pinswg_dateeventrequested
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
);
};
export default Pinswg_commonlandid;
@@ -0,0 +1,356 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_communityinfrastructurelevyid = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-lpa-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-officer-label")}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{/* {casesObj.caseDetails.caseOfficer ||
""} */}
{_.has(casesObj, "_ownerid_value")
? casesObj[
"_ownerid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
<br />
{/* <Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link> */}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-link-status-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(casesObj, [
"numberofchildincidents",
])
? casesObj.numberofchildincidents >
0
? t(
"case:summary-case-link-status-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)}
</dd>
</div>
{casesObj.numberofchildincidents > 0 ? (
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-linked-cases-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{linkedCasesList(
props.currentView
.linkedCaseReferences
)}
</dd>
</div>
) : (
""
)}
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-start-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(detailsObj, "pinswg_startdate")
? !_.isEmpty(
detailsObj.pinswg_startdate
)
? formatDates(
detailsObj.pinswg_startdate
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_startdates"
)
? !_.isEmpty(
detailsObj.pinswg_startdates
)
? formatDates(
detailsObj.pinswg_startdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-interested-party-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_otherpartiesstatement"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatement
)
? formatDates(
detailsObj.pinswg_otherpartiesstatement
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_otherpartiesstatements"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatements
)
? formatDates(
detailsObj.pinswg_otherpartiesstatements
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-applicant-final-comments-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_finalcommentsduedate"
)
? !_.isEmpty(
detailsObj.pinswg_finalcommentsduedate
)
? formatDates(
detailsObj.pinswg_finalcommentsduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateeventrequested"
)
? !_.isEmpty(
detailsObj.pinswg_dateeventrequested
)
? formatDates(
detailsObj.pinswg_dateeventrequested
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
);
};
export default Pinswg_communityinfrastructurelevyid;
@@ -0,0 +1,435 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_compulsorypurchaseordersid = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-officer-label")}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{/* {casesObj.caseDetails.caseOfficer ||
""} */}
{_.has(casesObj, "_ownerid_value")
? casesObj[
"_ownerid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
<br />
{/* <Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link> */}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-link-status-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(casesObj, [
"numberofchildincidents",
])
? casesObj.numberofchildincidents >
0
? t(
"case:summary-case-link-status-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)}
</dd>
</div>
{casesObj.numberofchildincidents > 0 ? (
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-linked-cases-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{linkedCasesList(
props.currentView
.linkedCaseReferences
)}
</dd>
</div>
) : (
""
)}
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-relevant-authoritylabel"
)}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj.pinswg_relevantauthorityname +
'")].value_cy'
)
: detailsObj.pinswg_relevantauthorityname ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-start-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(detailsObj, "pinswg_startdate")
? !_.isEmpty(
detailsObj.pinswg_startdate
)
? formatDates(
detailsObj.pinswg_startdate
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_startdates"
)
? !_.isEmpty(
detailsObj.pinswg_startdates
)
? formatDates(
detailsObj.pinswg_startdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-questionnaire-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_questionnaireduedate"
)
? !_.isEmpty(
detailsObj.pinswg_questionnaireduedate
)
? formatDates(
detailsObj.pinswg_questionnaireduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-statement-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_statementduedate"
)
? !_.isEmpty(
detailsObj.pinswg_statementduedate
)
? formatDates(
detailsObj.pinswg_statementduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-interested-party-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_otherpartiesstatement"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatement
)
? formatDates(
detailsObj.pinswg_otherpartiesstatement
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_otherpartiesstatements"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatements
)
? formatDates(
detailsObj.pinswg_otherpartiesstatements
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-applicant-final-comments-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_finalcommentsduedate"
)
? !_.isEmpty(
detailsObj.pinswg_finalcommentsduedate
)
? formatDates(
detailsObj.pinswg_finalcommentsduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-inquiry-evidence-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_proofsofevidencewrittenstatementsofeviden"
)
? !_.isEmpty(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
? formatDates(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateeventrequested"
)
? !_.isEmpty(
detailsObj.pinswg_dateeventrequested
)
? formatDates(
detailsObj.pinswg_dateeventrequested
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
);
};
export default Pinswg_compulsorypurchaseordersid;
@@ -0,0 +1,811 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_dnsid = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<>
{detailsObj.pinswg_projectdescription != null ||
detailsObj.pinswg_projectlocation != null ? (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-project-details-label")}
</h2>
<p className="govuk-body">
{detailsObj.pinswg_projectdescription != null
? router.locale == "cy"
? detailsObj.pinswg_projectdescription.split(
";"
)[1]
: detailsObj.pinswg_projectdescription.split(
";"
)[0]
: ""}
</p>
<p className="govuk-body">
{detailsObj.pinswg_projectlocation != null
? router.locale == "cy"
? detailsObj.pinswg_projectlocation.split(
";"
)[1]
: detailsObj.pinswg_projectlocation.split(
";"
)[0]
: ""}
</p>
</div>
</div>
</div>
) : (
""
)}
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-lpa-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-officer-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{/* {casesObj.caseDetails.caseOfficer ||
""} */}
{_.has(casesObj, "_ownerid_value")
? casesObj[
"_ownerid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
<br />
{/* <Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link> */}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-link-status-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(casesObj, [
"numberofchildincidents",
])
? casesObj.numberofchildincidents >
0
? t(
"case:summary-case-link-status-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)}
</dd>
</div>
{casesObj.numberofchildincidents > 0 ? (
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-linked-cases-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{linkedCasesList(
props.currentView
.linkedCaseReferences
)}
</dd>
</div>
) : (
""
)}
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-recommendation-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj.pinswg_recommendation +
'")].value_cy'
)
: detailsObj.pinswg_recommendation ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-website-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj.pinswg_webaddress +
'")].value_cy'
)
: detailsObj.pinswg_webaddress ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateeventrequested"
)
? !_.isEmpty(
detailsObj.pinswg_dateeventrequested
)
? formatDates(
detailsObj.pinswg_dateeventrequested
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-decision-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-application-accepted-as-valid"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_applicationacceptedasvalid"
)
? !_.isEmpty(
detailsObj.pinswg_applicationacceptedasvalid
)
? formatDates(
detailsObj.pinswg_applicationacceptedasvalid
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-application-rejected-as-invalid"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_applicationrejectedasinvalid"
)
? !_.isEmpty(
detailsObj.pinswg_applicationrejectedasinvalid
)
? formatDates(
detailsObj.pinswg_applicationrejectedasinvalid
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-confirm-request-to-vary-application"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_confirmrequesttovaryapplication"
)
? !_.isEmpty(
detailsObj.pinswg_confirmrequesttovaryapplication
)
? formatDates(
detailsObj.pinswg_confirmrequesttovaryapplication
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-date-of-decisions"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateofdecision"
)
? !_.isEmpty(
detailsObj.pinswg_dateofdecision
)
? formatDates(
detailsObj.pinswg_dateofdecision
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-date-of-request-to-vary"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateofrequesttovarytheapplication"
)
? !_.isEmpty(
detailsObj.pinswg_dateofrequesttovarytheapplication
)
? formatDates(
detailsObj.pinswg_dateofrequesttovarytheapplication
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-date-of-submission-of-application"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateofsubmissionofapplication"
)
? !_.isEmpty(
detailsObj.pinswg_dateofsubmissionofapplication
)
? formatDates(
detailsObj.pinswg_dateofsubmissionofapplication
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-date-project-published-to-website"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateprojectpublishedonwebsite"
)
? !_.isEmpty(
detailsObj.pinswg_dateprojectpublishedonwebsite
)
? formatDates(
detailsObj.pinswg_dateprojectpublishedonwebsite
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-deadline-for-submission-of-application"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_deadlineforsubmissionofapplication"
)
? !_.isEmpty(
detailsObj.pinswg_deadlineforsubmissionofapplication
)
? formatDates(
detailsObj.pinswg_deadlineforsubmissionofapplication
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-end-of-representation-period"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_endofrepresentationperiod"
)
? !_.isEmpty(
detailsObj.pinswg_endofrepresentationperiod
)
? formatDates(
detailsObj.pinswg_endofrepresentationperiod
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-inspector-report-submission-to-welsh-government"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_inspectorreportsubmittedtowelshgovernment"
)
? !_.isEmpty(
detailsObj.pinswg_inspectorreportsubmittedtowelshgovernment
)
? formatDates(
detailsObj.pinswg_inspectorreportsubmittedtowelshgovernment
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-procedure-confirmed"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_procedureconfirmed"
)
? !_.isEmpty(
detailsObj.pinswg_procedureconfirmed
)
? formatDates(
detailsObj.pinswg_procedureconfirmed
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-reject-request-to-vary-application"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_rejectrequesttovaryapplication"
)
? !_.isEmpty(
detailsObj.pinswg_rejectrequesttovaryapplication
)
? formatDates(
detailsObj.pinswg_rejectrequesttovaryapplication
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-report-due-by")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_reportdueby"
)
? !_.isEmpty(
detailsObj.pinswg_reportdueby
)
? formatDates(
detailsObj.pinswg_reportdueby
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-suspension-dates")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_suspensiondates"
)
? !_.isEmpty(
detailsObj.pinswg_suspensiondates
)
? formatDates(
detailsObj.pinswg_suspensiondates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-suspension-end-dates"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_suspensionenddates"
)
? !_.isEmpty(
detailsObj.pinswg_suspensionenddates
)
? formatDates(
detailsObj.pinswg_suspensionenddates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-suspension-start-dates"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_suspensionstartdates"
)
? !_.isEmpty(
detailsObj.pinswg_suspensionstartdates
)
? formatDates(
detailsObj.pinswg_suspensionstartdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-valid-notice-of-intention-to-submit-an-application"
)}
</dt>{" "}
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_validnoticeofintentiontosubmitanapplicati"
)
? !_.isEmpty(
detailsObj.pinswg_validnoticeofintentiontosubmitanapplicati
)
? formatDates(
detailsObj.pinswg_validnoticeofintentiontosubmitanapplicati
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-withdrawn-date")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_withdrawndate"
)
? !_.isEmpty(
detailsObj.pinswg_withdrawndate
)
? formatDates(
detailsObj.pinswg_withdrawndate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-written-acceptance-of-notice"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_writtenacceptanceofnotification"
)
? !_.isEmpty(
detailsObj.pinswg_writtenacceptanceofnotification
)
? formatDates(
detailsObj.pinswg_writtenacceptanceofnotification
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
</>
);
};
export default Pinswg_dnsid;
@@ -0,0 +1,810 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_electricityactid = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<>
{detailsObj.pinswg_projectdescription != null ||
detailsObj.pinswg_projectlocation != null ? (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-project-details-label")}
</h2>
<p className="govuk-body">
{detailsObj.pinswg_projectdescription != null
? router.locale == "cy"
? detailsObj.pinswg_projectdescription.split(
";"
)[1]
: detailsObj.pinswg_projectdescription.split(
";"
)[0]
: ""}
</p>
<p className="govuk-body">
{detailsObj.pinswg_projectlocation != null
? router.locale == "cy"
? detailsObj.pinswg_projectlocation.split(
";"
)[1]
: detailsObj.pinswg_projectlocation.split(
";"
)[0]
: ""}
</p>
</div>
</div>
</div>
) : (
""
)}
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-lpa-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-officer-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{/* {casesObj.caseDetails.caseOfficer ||
""} */}
{_.has(casesObj, "_ownerid_value")
? casesObj[
"_ownerid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
<br />
{/* <Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link> */}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-link-status-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(casesObj, [
"numberofchildincidents",
])
? casesObj.numberofchildincidents >
0
? t(
"case:summary-case-link-status-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)}
</dd>
</div>
{casesObj.numberofchildincidents > 0 ? (
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-linked-cases-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{linkedCasesList(
props.currentView
.linkedCaseReferences
)}
</dd>
</div>
) : (
""
)}
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-recommendation-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj.pinswg_recommendation +
'")].value_cy'
)
: detailsObj.pinswg_recommendation ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-website-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj.pinswg_webaddress +
'")].value_cy'
)
: detailsObj.pinswg_webaddress ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateeventrequested"
)
? !_.isEmpty(
detailsObj.pinswg_dateeventrequested
)
? formatDates(
detailsObj.pinswg_dateeventrequested
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-decision-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-application-accepted-as-valid"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_applicationacceptedasvalid"
)
? !_.isEmpty(
detailsObj.pinswg_applicationacceptedasvalid
)
? formatDates(
detailsObj.pinswg_applicationacceptedasvalid
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-application-rejected-as-invalid"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_applicationrejectedasinvalid"
)
? !_.isEmpty(
detailsObj.pinswg_applicationrejectedasinvalid
)
? formatDates(
detailsObj.pinswg_applicationrejectedasinvalid
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-confirm-request-to-vary-application"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_confirmrequesttovaryapplication"
)
? !_.isEmpty(
detailsObj.pinswg_confirmrequesttovaryapplication
)
? formatDates(
detailsObj.pinswg_confirmrequesttovaryapplication
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-date-of-decisions"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateofdecision"
)
? !_.isEmpty(
detailsObj.pinswg_dateofdecision
)
? formatDates(
detailsObj.pinswg_dateofdecision
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-date-of-request-to-vary"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateofrequesttovarytheapplication"
)
? !_.isEmpty(
detailsObj.pinswg_dateofrequesttovarytheapplication
)
? formatDates(
detailsObj.pinswg_dateofrequesttovarytheapplication
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-date-of-submission-of-application"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateofsubmissionofapplication"
)
? !_.isEmpty(
detailsObj.pinswg_dateofsubmissionofapplication
)
? formatDates(
detailsObj.pinswg_dateofsubmissionofapplication
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-date-project-published-to-website"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateprojectpublishedonwebsite"
)
? !_.isEmpty(
detailsObj.pinswg_dateprojectpublishedonwebsite
)
? formatDates(
detailsObj.pinswg_dateprojectpublishedonwebsite
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-deadline-for-submission-of-application"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_deadlineforsubmissionofapplication"
)
? !_.isEmpty(
detailsObj.pinswg_deadlineforsubmissionofapplication
)
? formatDates(
detailsObj.pinswg_deadlineforsubmissionofapplication
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-end-of-representation-period"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_endofrepresentationperiod"
)
? !_.isEmpty(
detailsObj.pinswg_endofrepresentationperiod
)
? formatDates(
detailsObj.pinswg_endofrepresentationperiod
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-inspector-report-submission-to-welsh-government"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_inspectorreportsubmittedtowelshgovernment"
)
? !_.isEmpty(
detailsObj.pinswg_inspectorreportsubmittedtowelshgovernment
)
? formatDates(
detailsObj.pinswg_inspectorreportsubmittedtowelshgovernment
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-procedure-confirmed"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_procedureconfirmed"
)
? !_.isEmpty(
detailsObj.pinswg_procedureconfirmed
)
? formatDates(
detailsObj.pinswg_procedureconfirmed
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-reject-request-to-vary-application"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_rejectrequesttovaryapplication"
)
? !_.isEmpty(
detailsObj.pinswg_rejectrequesttovaryapplication
)
? formatDates(
detailsObj.pinswg_rejectrequesttovaryapplication
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-report-due-by")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_reportdueby"
)
? !_.isEmpty(
detailsObj.pinswg_reportdueby
)
? formatDates(
detailsObj.pinswg_reportdueby
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-suspension-dates")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_suspensiondates"
)
? !_.isEmpty(
detailsObj.pinswg_suspensiondates
)
? formatDates(
detailsObj.pinswg_suspensiondates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-suspension-end-dates"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_suspensionenddates"
)
? !_.isEmpty(
detailsObj.pinswg_suspensionenddates
)
? formatDates(
detailsObj.pinswg_suspensionenddates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-suspension-start-dates"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_suspensionstartdates"
)
? !_.isEmpty(
detailsObj.pinswg_suspensionstartdates
)
? formatDates(
detailsObj.pinswg_suspensionstartdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-valid-notice-of-intention-to-submit-an-application"
)}
</dt>{" "}
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_validnoticeofintentiontosubmitanapplicati"
)
? !_.isEmpty(
detailsObj.pinswg_validnoticeofintentiontosubmitanapplicati
)
? formatDates(
detailsObj.pinswg_validnoticeofintentiontosubmitanapplicati
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-withdrawn-date")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_withdrawndate"
)
? !_.isEmpty(
detailsObj.pinswg_withdrawndate
)
? formatDates(
detailsObj.pinswg_withdrawndate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-written-acceptance-of-notice"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_writtenacceptanceofnotification"
)
? !_.isEmpty(
detailsObj.pinswg_writtenacceptanceofnotification
)
? formatDates(
detailsObj.pinswg_writtenacceptanceofnotification
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
</>
);
};
export default Pinswg_electricityactid;
@@ -0,0 +1,433 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_enforcementlistedbuildingconseid = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-lpa-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-officer-label")}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{/* {casesObj.caseDetails.caseOfficer ||
""} */}
{_.has(casesObj, "_ownerid_value")
? casesObj[
"_ownerid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
<br />
{/* <Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link> */}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-link-status-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(casesObj, [
"numberofchildincidents",
])
? casesObj.numberofchildincidents >
0
? t(
"case:summary-case-link-status-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)}
</dd>
</div>
{casesObj.numberofchildincidents > 0 ? (
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-linked-cases-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{linkedCasesList(
props.currentView
.linkedCaseReferences
)}
</dd>
</div>
) : (
""
)}
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-start-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(detailsObj, "pinswg_startdate")
? !_.isEmpty(
detailsObj.pinswg_startdate
)
? formatDates(
detailsObj.pinswg_startdate
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_startdates"
)
? !_.isEmpty(
detailsObj.pinswg_startdates
)
? formatDates(
detailsObj.pinswg_startdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-questionnaire-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_questionnaireduedate"
)
? !_.isEmpty(
detailsObj.pinswg_questionnaireduedate
)
? formatDates(
detailsObj.pinswg_questionnaireduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-statement-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_statementduedate"
)
? !_.isEmpty(
detailsObj.pinswg_statementduedate
)
? formatDates(
detailsObj.pinswg_statementduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-interested-party-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_otherpartiesstatement"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatement
)
? formatDates(
detailsObj.pinswg_otherpartiesstatement
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_otherpartiesstatements"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatements
)
? formatDates(
detailsObj.pinswg_otherpartiesstatements
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-applicant-final-comments-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_finalcommentsduedate"
)
? !_.isEmpty(
detailsObj.pinswg_finalcommentsduedate
)
? formatDates(
detailsObj.pinswg_finalcommentsduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-inquiry-evidence-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_proofsofevidencewrittenstatementsofeviden"
)
? !_.isEmpty(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
? formatDates(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateeventrequested"
)
? !_.isEmpty(
detailsObj.pinswg_dateeventrequested
)
? formatDates(
detailsObj.pinswg_dateeventrequested
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
);
};
export default Pinswg_enforcementlistedbuildingconseid;
@@ -0,0 +1,433 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_enforcementnoticeappeals174id = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-lpa-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-officer-label")}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{/* {casesObj.caseDetails.caseOfficer ||
""} */}
{_.has(casesObj, "_ownerid_value")
? casesObj[
"_ownerid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
<br />
{/* <Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link> */}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-link-status-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(casesObj, [
"numberofchildincidents",
])
? casesObj.numberofchildincidents >
0
? t(
"case:summary-case-link-status-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)}
</dd>
</div>
{casesObj.numberofchildincidents > 0 ? (
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-linked-cases-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{linkedCasesList(
props.currentView
.linkedCaseReferences
)}
</dd>
</div>
) : (
""
)}
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-start-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(detailsObj, "pinswg_startdate")
? !_.isEmpty(
detailsObj.pinswg_startdate
)
? formatDates(
detailsObj.pinswg_startdate
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_startdates"
)
? !_.isEmpty(
detailsObj.pinswg_startdates
)
? formatDates(
detailsObj.pinswg_startdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-questionnaire-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_questionnaireduedate"
)
? !_.isEmpty(
detailsObj.pinswg_questionnaireduedate
)
? formatDates(
detailsObj.pinswg_questionnaireduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-statement-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_statementduedate"
)
? !_.isEmpty(
detailsObj.pinswg_statementduedate
)
? formatDates(
detailsObj.pinswg_statementduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-interested-party-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_otherpartiesstatement"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatement
)
? formatDates(
detailsObj.pinswg_otherpartiesstatement
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_otherpartiesstatements"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatements
)
? formatDates(
detailsObj.pinswg_otherpartiesstatements
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-applicant-final-comments-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_finalcommentsduedate"
)
? !_.isEmpty(
detailsObj.pinswg_finalcommentsduedate
)
? formatDates(
detailsObj.pinswg_finalcommentsduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-inquiry-evidence-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_proofsofevidencewrittenstatementsofeviden"
)
? !_.isEmpty(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
? formatDates(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateeventrequested"
)
? !_.isEmpty(
detailsObj.pinswg_dateeventrequested
)
? formatDates(
detailsObj.pinswg_dateeventrequested
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
);
};
export default Pinswg_enforcementnoticeappeals174id;
@@ -0,0 +1,453 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_environmentalpermittingid = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-lpa-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-officer-label")}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{/* {casesObj.caseDetails.caseOfficer ||
""} */}
{_.has(casesObj, "_ownerid_value")
? casesObj[
"_ownerid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
<br />
{/* <Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link> */}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-link-status-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(casesObj, [
"numberofchildincidents",
])
? casesObj.numberofchildincidents >
0
? t(
"case:summary-case-link-status-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)}
</dd>
</div>
{casesObj.numberofchildincidents > 0 ? (
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-linked-cases-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{linkedCasesList(
props.currentView
.linkedCaseReferences
)}
</dd>
</div>
) : (
""
)}
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-relevant-authoritylabel"
)}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj.pinswg_relevantauthorityname +
'")].value_cy'
)
: detailsObj.pinswg_relevantauthorityname ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-start-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(detailsObj, "pinswg_startdate")
? !_.isEmpty(
detailsObj.pinswg_startdate
)
? formatDates(
detailsObj.pinswg_startdate
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_startdates"
)
? !_.isEmpty(
detailsObj.pinswg_startdates
)
? formatDates(
detailsObj.pinswg_startdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-questionnaire-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_questionnaireduedate"
)
? !_.isEmpty(
detailsObj.pinswg_questionnaireduedate
)
? formatDates(
detailsObj.pinswg_questionnaireduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-statement-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_statementduedate"
)
? !_.isEmpty(
detailsObj.pinswg_statementduedate
)
? formatDates(
detailsObj.pinswg_statementduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-interested-party-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_otherpartiesstatement"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatement
)
? formatDates(
detailsObj.pinswg_otherpartiesstatement
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_otherpartiesstatements"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatements
)
? formatDates(
detailsObj.pinswg_otherpartiesstatements
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-applicant-final-comments-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_finalcommentsduedate"
)
? !_.isEmpty(
detailsObj.pinswg_finalcommentsduedate
)
? formatDates(
detailsObj.pinswg_finalcommentsduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-inquiry-evidence-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_proofsofevidencewrittenstatementsofeviden"
)
? !_.isEmpty(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
? formatDates(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateeventrequested"
)
? !_.isEmpty(
detailsObj.pinswg_dateeventrequested
)
? formatDates(
detailsObj.pinswg_dateeventrequested
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
);
};
export default Pinswg_environmentalpermittingid;
@@ -0,0 +1,810 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_harbourrevisionorderid = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<>
{detailsObj.pinswg_projectdescription != null ||
detailsObj.pinswg_projectlocation != null ? (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-project-details-label")}
</h2>
<p className="govuk-body">
{detailsObj.pinswg_projectdescription != null
? router.locale == "cy"
? detailsObj.pinswg_projectdescription.split(
";"
)[1]
: detailsObj.pinswg_projectdescription.split(
";"
)[0]
: ""}
</p>
<p className="govuk-body">
{detailsObj.pinswg_projectlocation != null
? router.locale == "cy"
? detailsObj.pinswg_projectlocation.split(
";"
)[1]
: detailsObj.pinswg_projectlocation.split(
";"
)[0]
: ""}
</p>
</div>
</div>
</div>
) : (
""
)}
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-lpa-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-officer-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{/* {casesObj.caseDetails.caseOfficer ||
""} */}
{_.has(casesObj, "_ownerid_value")
? casesObj[
"_ownerid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
<br />
{/* <Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link> */}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-link-status-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(casesObj, [
"numberofchildincidents",
])
? casesObj.numberofchildincidents >
0
? t(
"case:summary-case-link-status-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)}
</dd>
</div>
{casesObj.numberofchildincidents > 0 ? (
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-linked-cases-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{linkedCasesList(
props.currentView
.linkedCaseReferences
)}
</dd>
</div>
) : (
""
)}
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-recommendation-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj.pinswg_recommendation +
'")].value_cy'
)
: detailsObj.pinswg_recommendation ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-website-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj.pinswg_webaddress +
'")].value_cy'
)
: detailsObj.pinswg_webaddress ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateeventrequested"
)
? !_.isEmpty(
detailsObj.pinswg_dateeventrequested
)
? formatDates(
detailsObj.pinswg_dateeventrequested
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-decision-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-application-accepted-as-valid"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_applicationacceptedasvalid"
)
? !_.isEmpty(
detailsObj.pinswg_applicationacceptedasvalid
)
? formatDates(
detailsObj.pinswg_applicationacceptedasvalid
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-application-rejected-as-invalid"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_applicationrejectedasinvalid"
)
? !_.isEmpty(
detailsObj.pinswg_applicationrejectedasinvalid
)
? formatDates(
detailsObj.pinswg_applicationrejectedasinvalid
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-confirm-request-to-vary-application"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_confirmrequesttovaryapplication"
)
? !_.isEmpty(
detailsObj.pinswg_confirmrequesttovaryapplication
)
? formatDates(
detailsObj.pinswg_confirmrequesttovaryapplication
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-date-of-decisions"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateofdecision"
)
? !_.isEmpty(
detailsObj.pinswg_dateofdecision
)
? formatDates(
detailsObj.pinswg_dateofdecision
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-date-of-request-to-vary"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateofrequesttovarytheapplication"
)
? !_.isEmpty(
detailsObj.pinswg_dateofrequesttovarytheapplication
)
? formatDates(
detailsObj.pinswg_dateofrequesttovarytheapplication
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-date-of-submission-of-application"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateofsubmissionofapplication"
)
? !_.isEmpty(
detailsObj.pinswg_dateofsubmissionofapplication
)
? formatDates(
detailsObj.pinswg_dateofsubmissionofapplication
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-date-project-published-to-website"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateprojectpublishedonwebsite"
)
? !_.isEmpty(
detailsObj.pinswg_dateprojectpublishedonwebsite
)
? formatDates(
detailsObj.pinswg_dateprojectpublishedonwebsite
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-deadline-for-submission-of-application"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_deadlineforsubmissionofapplication"
)
? !_.isEmpty(
detailsObj.pinswg_deadlineforsubmissionofapplication
)
? formatDates(
detailsObj.pinswg_deadlineforsubmissionofapplication
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-end-of-representation-period"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_endofrepresentationperiod"
)
? !_.isEmpty(
detailsObj.pinswg_endofrepresentationperiod
)
? formatDates(
detailsObj.pinswg_endofrepresentationperiod
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-inspector-report-submission-to-welsh-government"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_inspectorreportsubmittedtowelshgovernment"
)
? !_.isEmpty(
detailsObj.pinswg_inspectorreportsubmittedtowelshgovernment
)
? formatDates(
detailsObj.pinswg_inspectorreportsubmittedtowelshgovernment
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-procedure-confirmed"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_procedureconfirmed"
)
? !_.isEmpty(
detailsObj.pinswg_procedureconfirmed
)
? formatDates(
detailsObj.pinswg_procedureconfirmed
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-reject-request-to-vary-application"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_rejectrequesttovaryapplication"
)
? !_.isEmpty(
detailsObj.pinswg_rejectrequesttovaryapplication
)
? formatDates(
detailsObj.pinswg_rejectrequesttovaryapplication
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-report-due-by")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_reportdueby"
)
? !_.isEmpty(
detailsObj.pinswg_reportdueby
)
? formatDates(
detailsObj.pinswg_reportdueby
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-suspension-dates")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_suspensiondates"
)
? !_.isEmpty(
detailsObj.pinswg_suspensiondates
)
? formatDates(
detailsObj.pinswg_suspensiondates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-suspension-end-dates"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_suspensionenddates"
)
? !_.isEmpty(
detailsObj.pinswg_suspensionenddates
)
? formatDates(
detailsObj.pinswg_suspensionenddates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-suspension-start-dates"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_suspensionstartdates"
)
? !_.isEmpty(
detailsObj.pinswg_suspensionstartdates
)
? formatDates(
detailsObj.pinswg_suspensionstartdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-valid-notice-of-intention-to-submit-an-application"
)}
</dt>{" "}
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_validnoticeofintentiontosubmitanapplicati"
)
? !_.isEmpty(
detailsObj.pinswg_validnoticeofintentiontosubmitanapplicati
)
? formatDates(
detailsObj.pinswg_validnoticeofintentiontosubmitanapplicati
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-withdrawn-date")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_withdrawndate"
)
? !_.isEmpty(
detailsObj.pinswg_withdrawndate
)
? formatDates(
detailsObj.pinswg_withdrawndate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-written-acceptance-of-notice"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_writtenacceptanceofnotification"
)
? !_.isEmpty(
detailsObj.pinswg_writtenacceptanceofnotification
)
? formatDates(
detailsObj.pinswg_writtenacceptanceofnotification
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
</>
);
};
export default Pinswg_harbourrevisionorderid;
@@ -0,0 +1,453 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_hedgeshedgerowstreepreservatioid = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-lpa-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-officer-label")}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{/* {casesObj.caseDetails.caseOfficer ||
""} */}
{_.has(casesObj, "_ownerid_value")
? casesObj[
"_ownerid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
<br />
{/* <Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link> */}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-link-status-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(casesObj, [
"numberofchildincidents",
])
? casesObj.numberofchildincidents >
0
? t(
"case:summary-case-link-status-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)}
</dd>
</div>
{casesObj.numberofchildincidents > 0 ? (
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-linked-cases-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{linkedCasesList(
props.currentView
.linkedCaseReferences
)}
</dd>
</div>
) : (
""
)}
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-relevant-authoritylabel"
)}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj.pinswg_relevantauthorityname +
'")].value_cy'
)
: detailsObj.pinswg_relevantauthorityname ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-start-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(detailsObj, "pinswg_startdate")
? !_.isEmpty(
detailsObj.pinswg_startdate
)
? formatDates(
detailsObj.pinswg_startdate
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_startdates"
)
? !_.isEmpty(
detailsObj.pinswg_startdates
)
? formatDates(
detailsObj.pinswg_startdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-questionnaire-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_questionnaireduedate"
)
? !_.isEmpty(
detailsObj.pinswg_questionnaireduedate
)
? formatDates(
detailsObj.pinswg_questionnaireduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-statement-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_statementduedate"
)
? !_.isEmpty(
detailsObj.pinswg_statementduedate
)
? formatDates(
detailsObj.pinswg_statementduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-interested-party-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_otherpartiesstatement"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatement
)
? formatDates(
detailsObj.pinswg_otherpartiesstatement
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_otherpartiesstatements"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatements
)
? formatDates(
detailsObj.pinswg_otherpartiesstatements
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-applicant-final-comments-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_finalcommentsduedate"
)
? !_.isEmpty(
detailsObj.pinswg_finalcommentsduedate
)
? formatDates(
detailsObj.pinswg_finalcommentsduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-inquiry-evidence-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_proofsofevidencewrittenstatementsofeviden"
)
? !_.isEmpty(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
? formatDates(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateeventrequested"
)
? !_.isEmpty(
detailsObj.pinswg_dateeventrequested
)
? formatDates(
detailsObj.pinswg_dateeventrequested
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
);
};
export default Pinswg_hedgeshedgerowstreepreservatioid;
@@ -0,0 +1,382 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_householderappealhasid = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-lpa-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-officer-label")}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{/* {casesObj.caseDetails.caseOfficer ||
""} */}
{_.has(casesObj, "_ownerid_value")
? casesObj[
"_ownerid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
<br />
{/* <Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link> */}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-link-status-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(casesObj, [
"numberofchildincidents",
])
? casesObj.numberofchildincidents >
0
? t(
"case:summary-case-link-status-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)}
</dd>
</div>
{casesObj.numberofchildincidents > 0 ? (
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-linked-cases-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{linkedCasesList(
props.currentView
.linkedCaseReferences
)}
</dd>
</div>
) : (
""
)}
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-start-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(detailsObj, "pinswg_startdate")
? !_.isEmpty(
detailsObj.pinswg_startdate
)
? formatDates(
detailsObj.pinswg_startdate
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_startdates"
)
? !_.isEmpty(
detailsObj.pinswg_startdates
)
? formatDates(
detailsObj.pinswg_startdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-questionnaire-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_questionnaireduedate"
)
? !_.isEmpty(
detailsObj.pinswg_questionnaireduedate
)
? formatDates(
detailsObj.pinswg_questionnaireduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-statement-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_statementduedate"
)
? !_.isEmpty(
detailsObj.pinswg_statementduedate
)
? formatDates(
detailsObj.pinswg_statementduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-interested-party-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_otherpartiesstatement"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatement
)
? formatDates(
detailsObj.pinswg_otherpartiesstatement
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_otherpartiesstatements"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatements
)
? formatDates(
detailsObj.pinswg_otherpartiesstatements
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateeventrequested"
)
? !_.isEmpty(
detailsObj.pinswg_dateeventrequested
)
? formatDates(
detailsObj.pinswg_dateeventrequested
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
);
};
export default Pinswg_householderappealhasid;
@@ -0,0 +1,433 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_lawfuldevelopmentcertificatappid = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-lpa-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-officer-label")}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{/* {casesObj.caseDetails.caseOfficer ||
""} */}
{_.has(casesObj, "_ownerid_value")
? casesObj[
"_ownerid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
<br />
{/* <Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link> */}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-link-status-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(casesObj, [
"numberofchildincidents",
])
? casesObj.numberofchildincidents >
0
? t(
"case:summary-case-link-status-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)}
</dd>
</div>
{casesObj.numberofchildincidents > 0 ? (
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-linked-cases-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{linkedCasesList(
props.currentView
.linkedCaseReferences
)}
</dd>
</div>
) : (
""
)}
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-start-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(detailsObj, "pinswg_startdate")
? !_.isEmpty(
detailsObj.pinswg_startdate
)
? formatDates(
detailsObj.pinswg_startdate
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_startdates"
)
? !_.isEmpty(
detailsObj.pinswg_startdates
)
? formatDates(
detailsObj.pinswg_startdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-questionnaire-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_questionnaireduedate"
)
? !_.isEmpty(
detailsObj.pinswg_questionnaireduedate
)
? formatDates(
detailsObj.pinswg_questionnaireduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-statement-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_statementduedate"
)
? !_.isEmpty(
detailsObj.pinswg_statementduedate
)
? formatDates(
detailsObj.pinswg_statementduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-interested-party-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_otherpartiesstatement"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatement
)
? formatDates(
detailsObj.pinswg_otherpartiesstatement
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_otherpartiesstatements"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatements
)
? formatDates(
detailsObj.pinswg_otherpartiesstatements
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-applicant-final-comments-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_finalcommentsduedate"
)
? !_.isEmpty(
detailsObj.pinswg_finalcommentsduedate
)
? formatDates(
detailsObj.pinswg_finalcommentsduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-inquiry-evidence-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_proofsofevidencewrittenstatementsofeviden"
)
? !_.isEmpty(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
? formatDates(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateeventrequested"
)
? !_.isEmpty(
detailsObj.pinswg_dateeventrequested
)
? formatDates(
detailsObj.pinswg_dateeventrequested
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
);
};
export default Pinswg_lawfuldevelopmentcertificatappid;
@@ -0,0 +1,433 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_ldpid = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-lpa-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-officer-label")}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{/* {casesObj.caseDetails.caseOfficer ||
""} */}
{_.has(casesObj, "_ownerid_value")
? casesObj[
"_ownerid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
<br />
{/* <Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link> */}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-link-status-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(casesObj, [
"numberofchildincidents",
])
? casesObj.numberofchildincidents >
0
? t(
"case:summary-case-link-status-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)}
</dd>
</div>
{casesObj.numberofchildincidents > 0 ? (
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-linked-cases-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{linkedCasesList(
props.currentView
.linkedCaseReferences
)}
</dd>
</div>
) : (
""
)}
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-start-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(detailsObj, "pinswg_startdate")
? !_.isEmpty(
detailsObj.pinswg_startdate
)
? formatDates(
detailsObj.pinswg_startdate
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_startdates"
)
? !_.isEmpty(
detailsObj.pinswg_startdates
)
? formatDates(
detailsObj.pinswg_startdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-questionnaire-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_questionnaireduedate"
)
? !_.isEmpty(
detailsObj.pinswg_questionnaireduedate
)
? formatDates(
detailsObj.pinswg_questionnaireduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-statement-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_statementduedate"
)
? !_.isEmpty(
detailsObj.pinswg_statementduedate
)
? formatDates(
detailsObj.pinswg_statementduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-interested-party-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_otherpartiesstatement"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatement
)
? formatDates(
detailsObj.pinswg_otherpartiesstatement
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_otherpartiesstatements"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatements
)
? formatDates(
detailsObj.pinswg_otherpartiesstatements
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-applicant-final-comments-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_finalcommentsduedate"
)
? !_.isEmpty(
detailsObj.pinswg_finalcommentsduedate
)
? formatDates(
detailsObj.pinswg_finalcommentsduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-inquiry-evidence-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_proofsofevidencewrittenstatementsofeviden"
)
? !_.isEmpty(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
? formatDates(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateeventrequested"
)
? !_.isEmpty(
detailsObj.pinswg_dateeventrequested
)
? formatDates(
detailsObj.pinswg_dateeventrequested
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
);
};
export default Pinswg_ldpid;
@@ -0,0 +1,433 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_listedbuildingandconservationrid = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-lpa-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-officer-label")}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{/* {casesObj.caseDetails.caseOfficer ||
""} */}
{_.has(casesObj, "_ownerid_value")
? casesObj[
"_ownerid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
<br />
{/* <Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link> */}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-link-status-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(casesObj, [
"numberofchildincidents",
])
? casesObj.numberofchildincidents >
0
? t(
"case:summary-case-link-status-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)}
</dd>
</div>
{casesObj.numberofchildincidents > 0 ? (
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-linked-cases-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{linkedCasesList(
props.currentView
.linkedCaseReferences
)}
</dd>
</div>
) : (
""
)}
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-start-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(detailsObj, "pinswg_startdate")
? !_.isEmpty(
detailsObj.pinswg_startdate
)
? formatDates(
detailsObj.pinswg_startdate
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_startdates"
)
? !_.isEmpty(
detailsObj.pinswg_startdates
)
? formatDates(
detailsObj.pinswg_startdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-questionnaire-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_questionnaireduedate"
)
? !_.isEmpty(
detailsObj.pinswg_questionnaireduedate
)
? formatDates(
detailsObj.pinswg_questionnaireduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-statement-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_statementduedate"
)
? !_.isEmpty(
detailsObj.pinswg_statementduedate
)
? formatDates(
detailsObj.pinswg_statementduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-interested-party-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_otherpartiesstatement"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatement
)
? formatDates(
detailsObj.pinswg_otherpartiesstatement
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_otherpartiesstatements"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatements
)
? formatDates(
detailsObj.pinswg_otherpartiesstatements
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-applicant-final-comments-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_finalcommentsduedate"
)
? !_.isEmpty(
detailsObj.pinswg_finalcommentsduedate
)
? formatDates(
detailsObj.pinswg_finalcommentsduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-inquiry-evidence-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_proofsofevidencewrittenstatementsofeviden"
)
? !_.isEmpty(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
? formatDates(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateeventrequested"
)
? !_.isEmpty(
detailsObj.pinswg_dateeventrequested
)
? formatDates(
detailsObj.pinswg_dateeventrequested
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
);
};
export default Pinswg_listedbuildingandconservationrid;
@@ -0,0 +1,433 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_maintenanceoflands217id = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-lpa-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-officer-label")}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{/* {casesObj.caseDetails.caseOfficer ||
""} */}
{_.has(casesObj, "_ownerid_value")
? casesObj[
"_ownerid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
<br />
{/* <Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link> */}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-link-status-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(casesObj, [
"numberofchildincidents",
])
? casesObj.numberofchildincidents >
0
? t(
"case:summary-case-link-status-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)}
</dd>
</div>
{casesObj.numberofchildincidents > 0 ? (
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-linked-cases-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{linkedCasesList(
props.currentView
.linkedCaseReferences
)}
</dd>
</div>
) : (
""
)}
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-start-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(detailsObj, "pinswg_startdate")
? !_.isEmpty(
detailsObj.pinswg_startdate
)
? formatDates(
detailsObj.pinswg_startdate
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_startdates"
)
? !_.isEmpty(
detailsObj.pinswg_startdates
)
? formatDates(
detailsObj.pinswg_startdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-questionnaire-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_questionnaireduedate"
)
? !_.isEmpty(
detailsObj.pinswg_questionnaireduedate
)
? formatDates(
detailsObj.pinswg_questionnaireduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-statement-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_statementduedate"
)
? !_.isEmpty(
detailsObj.pinswg_statementduedate
)
? formatDates(
detailsObj.pinswg_statementduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-interested-party-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_otherpartiesstatement"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatement
)
? formatDates(
detailsObj.pinswg_otherpartiesstatement
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_otherpartiesstatements"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatements
)
? formatDates(
detailsObj.pinswg_otherpartiesstatements
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-applicant-final-comments-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_finalcommentsduedate"
)
? !_.isEmpty(
detailsObj.pinswg_finalcommentsduedate
)
? formatDates(
detailsObj.pinswg_finalcommentsduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-inquiry-evidence-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_proofsofevidencewrittenstatementsofeviden"
)
? !_.isEmpty(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
? formatDates(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateeventrequested"
)
? !_.isEmpty(
detailsObj.pinswg_dateeventrequested
)
? formatDates(
detailsObj.pinswg_dateeventrequested
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
);
};
export default Pinswg_maintenanceoflands217id;
@@ -0,0 +1,453 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_miscellaneouscasewordid = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-lpa-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-officer-label")}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{/* {casesObj.caseDetails.caseOfficer ||
""} */}
{_.has(casesObj, "_ownerid_value")
? casesObj[
"_ownerid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
<br />
{/* <Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link> */}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-link-status-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(casesObj, [
"numberofchildincidents",
])
? casesObj.numberofchildincidents >
0
? t(
"case:summary-case-link-status-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)}
</dd>
</div>
{casesObj.numberofchildincidents > 0 ? (
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-linked-cases-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{linkedCasesList(
props.currentView
.linkedCaseReferences
)}
</dd>
</div>
) : (
""
)}
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-relevant-authoritylabel"
)}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj.pinswg_relevantauthorityname +
'")].value_cy'
)
: detailsObj.pinswg_relevantauthorityname ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-start-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(detailsObj, "pinswg_startdate")
? !_.isEmpty(
detailsObj.pinswg_startdate
)
? formatDates(
detailsObj.pinswg_startdate
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_startdates"
)
? !_.isEmpty(
detailsObj.pinswg_startdates
)
? formatDates(
detailsObj.pinswg_startdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-questionnaire-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_questionnaireduedate"
)
? !_.isEmpty(
detailsObj.pinswg_questionnaireduedate
)
? formatDates(
detailsObj.pinswg_questionnaireduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-statement-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_statementduedate"
)
? !_.isEmpty(
detailsObj.pinswg_statementduedate
)
? formatDates(
detailsObj.pinswg_statementduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-interested-party-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_otherpartiesstatement"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatement
)
? formatDates(
detailsObj.pinswg_otherpartiesstatement
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_otherpartiesstatements"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatements
)
? formatDates(
detailsObj.pinswg_otherpartiesstatements
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-applicant-final-comments-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_finalcommentsduedate"
)
? !_.isEmpty(
detailsObj.pinswg_finalcommentsduedate
)
? formatDates(
detailsObj.pinswg_finalcommentsduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-inquiry-evidence-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_proofsofevidencewrittenstatementsofeviden"
)
? !_.isEmpty(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
? formatDates(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateeventrequested"
)
? !_.isEmpty(
detailsObj.pinswg_dateeventrequested
)
? formatDates(
detailsObj.pinswg_dateeventrequested
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
);
};
export default Pinswg_miscellaneouscasewordid;
@@ -0,0 +1,228 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_nonvalidationid = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-lpa-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-officer-label")}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{/* {casesObj.caseDetails.caseOfficer ||
""} */}
{_.has(casesObj, "_ownerid_value")
? casesObj[
"_ownerid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
<br />
{/* <Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link> */}
</dd>
</div>
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-start-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(detailsObj, "pinswg_startdate")
? !_.isEmpty(
detailsObj.pinswg_startdate
)
? formatDates(
detailsObj.pinswg_startdate
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_startdates"
)
? !_.isEmpty(
detailsObj.pinswg_startdates
)
? formatDates(
detailsObj.pinswg_startdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
);
};
export default Pinswg_nonvalidationid;
@@ -0,0 +1,433 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_planningappeals78id = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-lpa-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-officer-label")}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{/* {casesObj.caseDetails.caseOfficer ||
""} */}
{_.has(casesObj, "_ownerid_value")
? casesObj[
"_ownerid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
<br />
{/* <Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link> */}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-link-status-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(casesObj, [
"numberofchildincidents",
])
? casesObj.numberofchildincidents >
0
? t(
"case:summary-case-link-status-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)}
</dd>
</div>
{casesObj.numberofchildincidents > 0 ? (
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-linked-cases-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{linkedCasesList(
props.currentView
.linkedCaseReferences
)}
</dd>
</div>
) : (
""
)}
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-start-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(detailsObj, "pinswg_startdate")
? !_.isEmpty(
detailsObj.pinswg_startdate
)
? formatDates(
detailsObj.pinswg_startdate
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_startdates"
)
? !_.isEmpty(
detailsObj.pinswg_startdates
)
? formatDates(
detailsObj.pinswg_startdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-questionnaire-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_questionnaireduedate"
)
? !_.isEmpty(
detailsObj.pinswg_questionnaireduedate
)
? formatDates(
detailsObj.pinswg_questionnaireduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-statement-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_statementduedate"
)
? !_.isEmpty(
detailsObj.pinswg_statementduedate
)
? formatDates(
detailsObj.pinswg_statementduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-interested-party-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_otherpartiesstatement"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatement
)
? formatDates(
detailsObj.pinswg_otherpartiesstatement
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_otherpartiesstatements"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatements
)
? formatDates(
detailsObj.pinswg_otherpartiesstatements
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-applicant-final-comments-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_finalcommentsduedate"
)
? !_.isEmpty(
detailsObj.pinswg_finalcommentsduedate
)
? formatDates(
detailsObj.pinswg_finalcommentsduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-inquiry-evidence-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_proofsofevidencewrittenstatementsofeviden"
)
? !_.isEmpty(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
? formatDates(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateeventrequested"
)
? !_.isEmpty(
detailsObj.pinswg_dateeventrequested
)
? formatDates(
detailsObj.pinswg_dateeventrequested
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
);
};
export default Pinswg_planningappeals78id;
@@ -0,0 +1,433 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_planningconditionss73s79id = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-lpa-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-officer-label")}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{/* {casesObj.caseDetails.caseOfficer ||
""} */}
{_.has(casesObj, "_ownerid_value")
? casesObj[
"_ownerid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
<br />
{/* <Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link> */}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-link-status-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(casesObj, [
"numberofchildincidents",
])
? casesObj.numberofchildincidents >
0
? t(
"case:summary-case-link-status-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)}
</dd>
</div>
{casesObj.numberofchildincidents > 0 ? (
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-linked-cases-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{linkedCasesList(
props.currentView
.linkedCaseReferences
)}
</dd>
</div>
) : (
""
)}
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-start-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(detailsObj, "pinswg_startdate")
? !_.isEmpty(
detailsObj.pinswg_startdate
)
? formatDates(
detailsObj.pinswg_startdate
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_startdates"
)
? !_.isEmpty(
detailsObj.pinswg_startdates
)
? formatDates(
detailsObj.pinswg_startdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-questionnaire-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_questionnaireduedate"
)
? !_.isEmpty(
detailsObj.pinswg_questionnaireduedate
)
? formatDates(
detailsObj.pinswg_questionnaireduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-statement-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_statementduedate"
)
? !_.isEmpty(
detailsObj.pinswg_statementduedate
)
? formatDates(
detailsObj.pinswg_statementduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-interested-party-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_otherpartiesstatement"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatement
)
? formatDates(
detailsObj.pinswg_otherpartiesstatement
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_otherpartiesstatements"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatements
)
? formatDates(
detailsObj.pinswg_otherpartiesstatements
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-applicant-final-comments-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_finalcommentsduedate"
)
? !_.isEmpty(
detailsObj.pinswg_finalcommentsduedate
)
? formatDates(
detailsObj.pinswg_finalcommentsduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-inquiry-evidence-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_proofsofevidencewrittenstatementsofeviden"
)
? !_.isEmpty(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
? formatDates(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateeventrequested"
)
? !_.isEmpty(
detailsObj.pinswg_dateeventrequested
)
? formatDates(
detailsObj.pinswg_dateeventrequested
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
);
};
export default Pinswg_planningconditionss73s79id;
@@ -0,0 +1,433 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_planningobligationappeals106id = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-lpa-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-officer-label")}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{/* {casesObj.caseDetails.caseOfficer ||
""} */}
{_.has(casesObj, "_ownerid_value")
? casesObj[
"_ownerid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
<br />
{/* <Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link> */}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-link-status-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(casesObj, [
"numberofchildincidents",
])
? casesObj.numberofchildincidents >
0
? t(
"case:summary-case-link-status-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)}
</dd>
</div>
{casesObj.numberofchildincidents > 0 ? (
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-linked-cases-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{linkedCasesList(
props.currentView
.linkedCaseReferences
)}
</dd>
</div>
) : (
""
)}
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-start-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(detailsObj, "pinswg_startdate")
? !_.isEmpty(
detailsObj.pinswg_startdate
)
? formatDates(
detailsObj.pinswg_startdate
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_startdates"
)
? !_.isEmpty(
detailsObj.pinswg_startdates
)
? formatDates(
detailsObj.pinswg_startdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-questionnaire-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_questionnaireduedate"
)
? !_.isEmpty(
detailsObj.pinswg_questionnaireduedate
)
? formatDates(
detailsObj.pinswg_questionnaireduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-statement-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_statementduedate"
)
? !_.isEmpty(
detailsObj.pinswg_statementduedate
)
? formatDates(
detailsObj.pinswg_statementduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-interested-party-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_otherpartiesstatement"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatement
)
? formatDates(
detailsObj.pinswg_otherpartiesstatement
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_otherpartiesstatements"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatements
)
? formatDates(
detailsObj.pinswg_otherpartiesstatements
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-applicant-final-comments-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_finalcommentsduedate"
)
? !_.isEmpty(
detailsObj.pinswg_finalcommentsduedate
)
? formatDates(
detailsObj.pinswg_finalcommentsduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-inquiry-evidence-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_proofsofevidencewrittenstatementsofeviden"
)
? !_.isEmpty(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
? formatDates(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateeventrequested"
)
? !_.isEmpty(
detailsObj.pinswg_dateeventrequested
)
? formatDates(
detailsObj.pinswg_dateeventrequested
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
);
};
export default Pinswg_planningobligationappeals106id;
@@ -0,0 +1,453 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_rowid = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-lpa-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-officer-label")}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{/* {casesObj.caseDetails.caseOfficer ||
""} */}
{_.has(casesObj, "_ownerid_value")
? casesObj[
"_ownerid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
<br />
{/* <Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link> */}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-link-status-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(casesObj, [
"numberofchildincidents",
])
? casesObj.numberofchildincidents >
0
? t(
"case:summary-case-link-status-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)}
</dd>
</div>
{casesObj.numberofchildincidents > 0 ? (
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-linked-cases-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{linkedCasesList(
props.currentView
.linkedCaseReferences
)}
</dd>
</div>
) : (
""
)}
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-relevant-authoritylabel"
)}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj.pinswg_relevantauthorityname +
'")].value_cy'
)
: detailsObj.pinswg_relevantauthorityname ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-start-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(detailsObj, "pinswg_startdate")
? !_.isEmpty(
detailsObj.pinswg_startdate
)
? formatDates(
detailsObj.pinswg_startdate
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_startdates"
)
? !_.isEmpty(
detailsObj.pinswg_startdates
)
? formatDates(
detailsObj.pinswg_startdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-questionnaire-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_questionnaireduedate"
)
? !_.isEmpty(
detailsObj.pinswg_questionnaireduedate
)
? formatDates(
detailsObj.pinswg_questionnaireduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-statement-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_statementduedate"
)
? !_.isEmpty(
detailsObj.pinswg_statementduedate
)
? formatDates(
detailsObj.pinswg_statementduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-interested-party-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_otherpartiesstatement"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatement
)
? formatDates(
detailsObj.pinswg_otherpartiesstatement
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_otherpartiesstatements"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatements
)
? formatDates(
detailsObj.pinswg_otherpartiesstatements
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-applicant-final-comments-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_finalcommentsduedate"
)
? !_.isEmpty(
detailsObj.pinswg_finalcommentsduedate
)
? formatDates(
detailsObj.pinswg_finalcommentsduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-inquiry-evidence-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_proofsofevidencewrittenstatementsofeviden"
)
? !_.isEmpty(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
? formatDates(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateeventrequested"
)
? !_.isEmpty(
detailsObj.pinswg_dateeventrequested
)
? formatDates(
detailsObj.pinswg_dateeventrequested
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
);
};
export default Pinswg_rowid;
@@ -0,0 +1,664 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_transportandworkactid = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<>
{detailsObj.pinswg_projectdescription != null ||
detailsObj.pinswg_projectlocation != null ? (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-project-details-label")}
</h2>
<p className="govuk-body">
{detailsObj.pinswg_projectdescription != null
? router.locale == "cy"
? detailsObj.pinswg_projectdescription.split(
";"
)[1]
: detailsObj.pinswg_projectdescription.split(
";"
)[0]
: ""}
</p>
<p className="govuk-body">
{detailsObj.pinswg_projectlocation != null
? router.locale == "cy"
? detailsObj.pinswg_projectlocation.split(
";"
)[1]
: detailsObj.pinswg_projectlocation.split(
";"
)[0]
: ""}
</p>
</div>
</div>
</div>
) : (
""
)}
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-recommendation-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj.pinswg_recommendation +
'")].value_cy'
)
: detailsObj.pinswg_recommendation ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-website-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj.pinswg_webaddress +
'")].value_cy'
)
: detailsObj.pinswg_webaddress ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateeventrequested"
)
? !_.isEmpty(
detailsObj.pinswg_dateeventrequested
)
? formatDates(
detailsObj.pinswg_dateeventrequested
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-decision-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-application-accepted-as-valid"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_applicationacceptedasvalid"
)
? !_.isEmpty(
detailsObj.pinswg_applicationacceptedasvalid
)
? formatDates(
detailsObj.pinswg_applicationacceptedasvalid
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-application-rejected-as-invalid"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_applicationrejectedasinvalid"
)
? !_.isEmpty(
detailsObj.pinswg_applicationrejectedasinvalid
)
? formatDates(
detailsObj.pinswg_applicationrejectedasinvalid
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-confirm-request-to-vary-application"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_confirmrequesttovaryapplication"
)
? !_.isEmpty(
detailsObj.pinswg_confirmrequesttovaryapplication
)
? formatDates(
detailsObj.pinswg_confirmrequesttovaryapplication
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-date-of-decisions"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateofdecision"
)
? !_.isEmpty(
detailsObj.pinswg_dateofdecision
)
? formatDates(
detailsObj.pinswg_dateofdecision
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-date-of-request-to-vary"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateofrequesttovarytheapplication"
)
? !_.isEmpty(
detailsObj.pinswg_dateofrequesttovarytheapplication
)
? formatDates(
detailsObj.pinswg_dateofrequesttovarytheapplication
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-date-of-submission-of-application"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateofsubmissionofapplication"
)
? !_.isEmpty(
detailsObj.pinswg_dateofsubmissionofapplication
)
? formatDates(
detailsObj.pinswg_dateofsubmissionofapplication
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-date-project-published-to-website"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateprojectpublishedonwebsite"
)
? !_.isEmpty(
detailsObj.pinswg_dateprojectpublishedonwebsite
)
? formatDates(
detailsObj.pinswg_dateprojectpublishedonwebsite
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-deadline-for-submission-of-application"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_deadlineforsubmissionofapplication"
)
? !_.isEmpty(
detailsObj.pinswg_deadlineforsubmissionofapplication
)
? formatDates(
detailsObj.pinswg_deadlineforsubmissionofapplication
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-end-of-representation-period"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_endofrepresentationperiod"
)
? !_.isEmpty(
detailsObj.pinswg_endofrepresentationperiod
)
? formatDates(
detailsObj.pinswg_endofrepresentationperiod
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-inspector-report-submission-to-welsh-government"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_inspectorreportsubmittedtowelshgovernment"
)
? !_.isEmpty(
detailsObj.pinswg_inspectorreportsubmittedtowelshgovernment
)
? formatDates(
detailsObj.pinswg_inspectorreportsubmittedtowelshgovernment
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-procedure-confirmed"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_procedureconfirmed"
)
? !_.isEmpty(
detailsObj.pinswg_procedureconfirmed
)
? formatDates(
detailsObj.pinswg_procedureconfirmed
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-reject-request-to-vary-application"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_rejectrequesttovaryapplication"
)
? !_.isEmpty(
detailsObj.pinswg_rejectrequesttovaryapplication
)
? formatDates(
detailsObj.pinswg_rejectrequesttovaryapplication
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-report-due-by")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_reportdueby"
)
? !_.isEmpty(
detailsObj.pinswg_reportdueby
)
? formatDates(
detailsObj.pinswg_reportdueby
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-suspension-dates")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_suspensiondates"
)
? !_.isEmpty(
detailsObj.pinswg_suspensiondates
)
? formatDates(
detailsObj.pinswg_suspensiondates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-suspension-end-dates"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_suspensionenddates"
)
? !_.isEmpty(
detailsObj.pinswg_suspensionenddates
)
? formatDates(
detailsObj.pinswg_suspensionenddates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-suspension-start-dates"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_suspensionstartdates"
)
? !_.isEmpty(
detailsObj.pinswg_suspensionstartdates
)
? formatDates(
detailsObj.pinswg_suspensionstartdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-valid-notice-of-intention-to-submit-an-application"
)}
</dt>{" "}
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_validnoticeofintentiontosubmitanapplicati"
)
? !_.isEmpty(
detailsObj.pinswg_validnoticeofintentiontosubmitanapplicati
)
? formatDates(
detailsObj.pinswg_validnoticeofintentiontosubmitanapplicati
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-withdrawn-date")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_withdrawndate"
)
? !_.isEmpty(
detailsObj.pinswg_withdrawndate
)
? formatDates(
detailsObj.pinswg_withdrawndate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-written-acceptance-of-notice"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_writtenacceptanceofnotification"
)
? !_.isEmpty(
detailsObj.pinswg_writtenacceptanceofnotification
)
? formatDates(
detailsObj.pinswg_writtenacceptanceofnotification
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
</>
);
};
export default Pinswg_transportandworkactid;
@@ -0,0 +1,453 @@
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../../data/lookuptranslations.json";
const Pinswg_wayleaveid = (props) => {
let { t } = useTranslation();
const { casesObj, detailsObj, formatDates, linkedCasesList } = props;
const router = useRouter();
const { locale } = router;
return (
<div className="govuk-grid-row">
<div className="flex-container grid-row govuk-body case">
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h2 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-case-details-label")}
</h2>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-type-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-lpa-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-case-officer-label")}
</dt>
<dd className="govuk-summary-list__value">
{" "}
{/* {casesObj.caseDetails.caseOfficer ||
""} */}
{_.has(casesObj, "_ownerid_value")
? casesObj[
"_ownerid_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-procedure-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_procedure@OData.Community.Display.V1.FormattedValue"
] || ""}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-status-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: casesObj[
"statuscode@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-label")}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"pinswg_decision@OData.Community.Display.V1.FormattedValue"
] ||
t(
"case:summary-no-date-entered-label"
)}
<br />
{/* <Link href="/">
<a>
{casesObj.caseDetails
.outcome_document || ""}
</a>
</Link> */}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-link-status-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(casesObj, [
"numberofchildincidents",
])
? casesObj.numberofchildincidents >
0
? t(
"case:summary-case-link-status-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)
: t(
"case:summary-case-link-status-not-linked"
)}
</dd>
</div>
{casesObj.numberofchildincidents > 0 ? (
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-linked-cases-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{linkedCasesList(
props.currentView
.linkedCaseReferences
)}
</dd>
</div>
) : (
""
)}
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-case-relevant-authoritylabel"
)}
</dt>
<dd className="govuk-summary-list__value">
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj.pinswg_relevantauthorityname +
'")].value_cy'
)
: detailsObj.pinswg_relevantauthorityname ||
t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
<div className="card" id="casescomment-card">
<div className="card-body">
<div className="govuk-grid-column-full">
<h3 className="govuk-heading-m govuk-!-margin-bottom-7">
{t("case:summary-dates-label")}
</h3>
<dl className="govuk-summary-list govuk-!-font-size-14 govuk-!-margin-bottom-9">
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-start-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(detailsObj, "pinswg_startdate")
? !_.isEmpty(
detailsObj.pinswg_startdate
)
? formatDates(
detailsObj.pinswg_startdate
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_startdates"
)
? !_.isEmpty(
detailsObj.pinswg_startdates
)
? formatDates(
detailsObj.pinswg_startdates
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-questionnaire-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_questionnaireduedate"
)
? !_.isEmpty(
detailsObj.pinswg_questionnaireduedate
)
? formatDates(
detailsObj.pinswg_questionnaireduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-statement-due-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_statementduedate"
)
? !_.isEmpty(
detailsObj.pinswg_statementduedate
)
? formatDates(
detailsObj.pinswg_statementduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-interested-party-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_otherpartiesstatement"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatement
)
? formatDates(
detailsObj.pinswg_otherpartiesstatement
)
: t(
"case:summary-no-date-entered-label"
)
: _.has(
detailsObj,
"pinswg_otherpartiesstatements"
)
? !_.isEmpty(
detailsObj.pinswg_otherpartiesstatements
)
? formatDates(
detailsObj.pinswg_otherpartiesstatements
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-applicant-final-comments-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_finalcommentsduedate"
)
? !_.isEmpty(
detailsObj.pinswg_finalcommentsduedate
)
? formatDates(
detailsObj.pinswg_finalcommentsduedate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t(
"case:summary-inquiry-evidence-date-label"
)}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_proofsofevidencewrittenstatementsofeviden"
)
? !_.isEmpty(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
? formatDates(
detailsObj.pinswg_proofsofevidencewrittenstatementsofeviden
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-event-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_dateeventrequested"
)
? !_.isEmpty(
detailsObj.pinswg_dateeventrequested
)
? formatDates(
detailsObj.pinswg_dateeventrequested
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dt className="govuk-summary-list__key">
{t("case:summary-decision-date-label")}
</dt>
<dd className="govuk-summary-list__value">
{_.has(
detailsObj,
"pinswg_casedecisiondate"
)
? !_.isEmpty(
detailsObj.pinswg_casedecisiondate
)
? formatDates(
detailsObj.pinswg_casedecisiondate
)
: t(
"case:summary-no-date-entered-label"
)
: t(
"case:summary-no-date-entered-label"
)}
</dd>
</div>
</dl>
</div>
</div>
</div>
</div>
</div>
);
};
export default Pinswg_wayleaveid;
+114 -44
View File
@@ -1,57 +1,127 @@
import CookieConsent from "react-cookie-consent";
import Link from "next/link";
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import cookie from "cookie-cutter";
import { useState, useEffect } from "react";
const CookieBanner = () => {
let { t, lang } = useTranslation();
const router = useRouter();
const { locale } = router;
const [bannerVisible, setBannerVisible] = useState(true);
const accept = () => {
let now = new Date();
let expDate = new Date(now);
expDate.setDate(now.getDate() + 365);
console.log(expDate);
cookie.set("planning_casework", true, {
expires: expDate,
});
setBannerVisible(false);
};
return (
<CookieConsent
style={{
position: "inherit",
background: "#f3f2f1",
display: "block",
}}
containerClasses="app-cookie-banner"
buttonClasses="govuk-button"
buttonWrapperClasses="govuk-width-container consentBanner"
declineButtonClasses="govuk-button"
buttonText="Accept all cookies"
disableStyles={true}
enableDeclineButton={true}
flipButtons={true}
hideOnAccept={true}
cookieName="planning_casework"
>
<div className="app-cookie-banner">
<div
id="global-cookie-message"
className="govuk-clearfix"
data-module="cookie-banner"
role="region"
aria-label="cookie banner"
data-nosnippet=""
<>
{bannerVisible ? (
<CookieConsent
style={{
position: "inherit",
background: "#eeeeee",
display: "block",
}}
containerClasses="app-cookie-banner"
buttonClasses="cookies-banner__button"
buttonWrapperClasses="govuk-width-container consentBanner hidden"
declineButtonClasses="cookies-banner__button"
buttonText={t("common:cookie-banner-accept")}
declineButtonText={t("common:cookie-banner-decline")}
disableStyles={true}
enableDeclineButton={true}
flipButtons={true}
hideOnAccept={true}
cookieName="planning_casework"
>
<div className="govuk-width-container">
<div className="govuk-grid-row">
<div className="govuk-grid-column-two-thirds">
<div className="">
<h2 className="govuk-heading-m">
Tell us whether you accept cookies
</h2>
<p className="govuk-body">
GOV.UK uses cookies which are essential
for the site to work. We also use
non-essential cookies to help us improve
government digital services. Any data
collected is anonymised. By continuing
to use this site, you agree to our use
of cookies.
</p>
<div className="app-cookie-banner">
<div
id="global-cookie-message"
className="govuk-clearfix"
data-module="cookie-banner"
role="region"
aria-label="cookie banner"
data-nosnippet=""
>
<div className="govuk-width-container">
<div className="govuk-grid-row">
<div className="govuk-grid-column-two-thirds">
<div className="">
<p className="cookies-banner__description">
{t(
"common:cookie-banner-line-1"
)}
</p>
<ul className="cookies-banner__description">
<li>
{" "}
{t(
"common:cookie-banner-list-item-1"
)}
</li>
</ul>
<p className="cookies-banner__description">
{t(
"common:cookie-banner-line-2"
)}
</p>
<ul className="cookies-banner__description">
<li>
{t(
"common:cookie-banner-list-item-2"
)}
</li>
<li>
{t(
"common:cookie-banner-list-item-3"
)}
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div className="govuk-width-container consentBannerShow">
<button
className="cookies-banner__button"
id="rcc-confirm-button"
aria-label="Accept cookies"
onClick={() => {
accept();
}}
>
{t("common:cookie-banner-accept")}
</button>
<Link href="/help/cookies">
<a
className="cookies-banner__button govuk-link--no-underline"
id="rcc-decline-button"
aria-label="Decline cookies"
>
{t("common:cookie-banner-change-settings")}
</a>
</Link>
</div>
</div>
</div>
</div>
</CookieConsent>
</CookieConsent>
) : (
""
)}
</>
);
};
+455
View File
@@ -0,0 +1,455 @@
import Link from "next/link";
import { useRouter } from "next/router";
import { useContext, useEffect, useState } from "react";
import useTranslation from "next-translate/useTranslation";
import { Field, reduxForm } from "redux-form";
import { parseCookies, setCookie, destroyCookie } from "nookies";
import { connect } from "react-redux";
import cookie from "cookie-cutter";
const CookieManagementMain = (props) => {
let { t } = useTranslation();
const router = useRouter();
const { locale } = router;
const { handleSubmit } = props;
const onHandleSubmit = (values) => {
Object.assign(values, {
"essential": "accepted",
"usage": usageState,
"communications": communicationsState,
"settings": settingsState,
});
let now = new Date();
let expDate = new Date(now);
expDate.setDate(now.getDate() + 365);
cookie.set("pinsCookiePolicy", JSON.stringify(values).toString(), {
expires: expDate,
});
cookie.set("planning_casework", true, {
expires: expDate,
});
};
let cookieCheck = parseCookies();
let cookieObj =
typeof cookieCheck.pinsCookiePolicy == "undefined"
? {}
: JSON.parse(cookieCheck.pinsCookiePolicy);
const [usageState, setUsageState] = useState(
typeof cookieCheck.pinsCookiePolicy == "undefined"
? null
: cookieObj.usage
);
const [communicationsState, setCommunicationsState] = useState(
typeof cookieCheck.pinsCookiePolicy == "undefined"
? null
: cookieObj.communications
);
const [settingsState, setSettingsState] = useState(
typeof cookieCheck.pinsCookiePolicy == "undefined"
? null
: cookieObj.settings
);
let updateObj = (key, value) => {
switch (key) {
case "usage":
setUsageState(value);
break;
case "communications":
setCommunicationsState(value);
break;
case "settings":
setSettingsState(value);
break;
default:
// code block
}
};
const CookieForm = () => {
return (
<main
className="govuk-main-wrapper govuk-!-padding-top-4 govuk-main-wrapper--auto-spacing"
id="main-content"
role="main"
>
<div className="govuk-grid-row">
<div className="govuk-grid-column-full">
<h1 className="govuk-heading-xl govuk-!-margin-bottom-5">
{t("cookies:cookie-title-heading")}
</h1>
<hr className="govuk-section-break govuk-section-break--visible" />
{typeof cookieCheck.pinsCookiePolicy == "undefined" ? (
<>
<div className="govuk-inset-text paragraph--type--call-out-message">
<h2 className="govuk-heading-l">
{t("cookies:cookie-not-saved-heading")}
</h2>
<p className="govuk-body">
{t(
"cookies:cookie-not-saved-paragraph"
)}
</p>
</div>
</>
) : (
""
)}
<div
className={
typeof cookieCheck.pinsCookiePolicy !=
"undefined"
? "govuk-body govuk-!-margin-top-5"
: "govuk-body"
}
>
<p className="govuk-body">
{t("cookies:cookie-intro-paragraph-1")}
</p>
<p className="govuk-body">
{t("cookies:cookie-intro-paragraph-2")}
</p>
<p className="govuk-body">
{t("cookies:cookie-intro-paragraph-3")}
</p>
</div>
<div id="cookies-js">
<form onSubmit={handleSubmit(onHandleSubmit)}>
<div>
<h3 className="govuk-heading-l">
{t("cookies:cookie-settings-heading")}
</h3>
</div>
<fieldset className="govuk-fieldset">
<legend className="govuk-fieldset__legend">
<h4 className="govuk-!-font-size-27">
{t(
"cookies:cookie-settings-usage-heading"
)}
</h4>
<p className="govuk-body">
{t(
"cookies:cookie-settings-usage-paragraph-1"
)}
</p>
<ul className="govuk-list govuk-list--bullet">
<li>
{t(
"cookies:cookie-settings-usage-list-item-1"
)}
</li>
<li>
{t(
"cookies:cookie-settings-usage-list-item-2"
)}
</li>
<li>
{t(
"cookies:cookie-settings-usage-list-item-3"
)}
</li>
</ul>
<p className="govuk-body">
{t(
"cookies:cookie-settings-usage-list-item-4"
)}
</p>
<div className="govuk-radios govuk-radios--small">
<div className="govuk-radios__item">
<input
name="usage"
className="govuk-radios__input"
id="usage-1"
component="input"
type="radio"
value="revoked"
checked={
usageState === "revoked"
}
onChange={() => {
updateObj(
"usage",
"revoked"
);
}}
/>
<label
className="govuk-label govuk-radios__label"
htmlFor="usage-1"
>
{t(
"cookies:cookie-settings-usage-radio-1-label"
)}
</label>
</div>
<div className="govuk-radios__item">
<input
className="govuk-radios__input"
id="usage-2"
name="usage"
type="radio"
value="accepted"
component="input"
checked={
usageState ===
"accepted"
}
onChange={() => {
updateObj(
"usage",
"accepted"
);
}}
/>
<label
className="govuk-label govuk-radios__label"
htmlFor="usage-2"
>
{t(
"cookies:cookie-settings-usage-radio-2-label"
)}
</label>
</div>
</div>
</legend>
</fieldset>
<fieldset className="govuk-fieldset">
<legend className="govuk-fieldset__legend">
<h4 className="govuk-!-font-size-27">
{t(
"cookies:cookie-settings-communications-heading"
)}
</h4>
<p className="govuk-body">
{t(
"cookies:cookie-settings-communications-paragraph-1"
)}
</p>
</legend>
<div className="govuk-radios govuk-radios--small">
<div className="govuk-radios__item">
<input
className="govuk-radios__input"
id="communications-1"
name="communications"
type="radio"
value="revoked"
component="input"
checked={
communicationsState ===
"revoked"
}
onChange={() => {
updateObj(
"communications",
"revoked"
);
}}
/>
<label
className="govuk-label govuk-radios__label"
htmlFor="communications-1"
>
{t(
"cookies:cookie-settings-communications-radio-1-label"
)}
</label>
</div>
<div className="govuk-radios__item">
<input
className="govuk-radios__input"
id="communications-2"
name="communications"
type="radio"
value="accepted"
component="input"
checked={
communicationsState ===
"accepted"
}
onChange={() => {
updateObj(
"communications",
"accepted"
);
}}
/>
<label
className="govuk-label govuk-radios__label"
htmlFor="communications-2"
>
{t(
"cookies:cookie-settings-communications-radio-2-label"
)}
</label>
</div>
</div>
</fieldset>
<fieldset className="govuk-fieldset">
<legend className="govuk-fieldset__legend">
<h4 className="govuk-!-font-size-27">
{t(
"cookies:cookie-settings-settings-heading"
)}
</h4>
<p className="govuk-body">
{t(
"cookies:cookie-settings-settings-paragraph-1"
)}
</p>
</legend>
<div className="govuk-radios govuk-radios--small">
<div className="govuk-radios__item">
<input
className="govuk-radios__input"
id="settings-1"
name="settings"
type="radio"
value="revoked"
component="input"
checked={
settingsState === "revoked"
}
onChange={() => {
updateObj(
"settings",
"revoked"
);
}}
/>
<label
className="govuk-label govuk-radios__label"
htmlFor="settings-1"
>
{t(
"cookies:cookie-settings-settings-radio-1-label"
)}
</label>
</div>
<div className="govuk-radios__item">
<input
className="govuk-radios__input"
id="settings-2"
name="settings"
type="radio"
value="accepted"
component="input"
checked={
settingsState === "accepted"
}
onChange={() => {
updateObj(
"settings",
"accepted"
);
}}
/>
<label
className="govuk-label govuk-radios__label"
htmlFor="settings-2"
>
{t(
"cookies:cookie-settings-settings-radio-2-label"
)}
</label>
</div>
</div>
</fieldset>
<fieldset className="govuk-fieldset">
<legend className="govuk-fieldset__legend">
<h4 className="govuk-!-font-size-27">
{t(
"cookies:cookie-settings-essential-heading"
)}
</h4>
<p className="govuk-body">
{t(
"cookies:cookie-settings-essential-paragraph-1"
)}
</p>
<ul className="govuk-list govuk-list--bullet">
<li>
{t(
"cookies:cookie-settings-essential-list-item-1"
)}
</li>
<li>
{t(
"cookies:cookie-settings-essential-list-item-2"
)}
</li>
</ul>
<p className="govuk-body">
{t(
"cookies:cookie-settings-essential-paragraph-2"
)}
</p>
<p className="govuk-body">
<a
className="govuk-link govuk-link--no-underline govuk-!-font-weight-bold"
href={t(
"cookies:cookie-settings-essential-link"
)}
>
{t(
"cookies:cookie-settings-essential-link-label"
)}
</a>
</p>
</legend>
</fieldset>
<div>
<button
type="submit"
className="govuk-button "
>
{t(
"cookies:cookie-settings-save-button-label"
)}
</button>
</div>
</form>
</div>
</div>
</div>
</main>
);
};
return (
<>
<CookieForm />
</>
);
};
const mapStateToProps = (state) => {
return {
initialValues: {
usage: state.accountDetails.cookieObj.usage,
communications: state.accountDetails.cookieObj.communications,
settings: state.accountDetails.cookieObj.settings,
},
};
};
export default connect(mapStateToProps)(
reduxForm({
form: "CookieManagementForm",
enableReinitialize: true,
})(CookieManagementMain)
);
+35
View File
@@ -0,0 +1,35 @@
import Link from "next/link";
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import { DiagConsoleLogger } from "@opentelemetry/api";
const CRMError = (props) => {
let { t } = useTranslation();
const { whichError } = props;
const router = useRouter();
const { locale } = router;
const errorSwitch = _.has(props, "whichError")
? "LPAData"
: "searchResultsObj";
//console.log(errorSwitch);
return (
<div className="govuk-grid-row">
<div className="govuk-grid-column-full">
<h1 className="govuk-heading-xl govuk-!-margin-bottom-7">
Something has happened....
</h1>
<p>
{props.props[errorSwitch][errorSwitch].errorCode} -{" "}
{props.props[errorSwitch][errorSwitch].errorMsg}
</p>
</div>
</div>
);
};
export default CRMError;
+45 -45
View File
@@ -46,34 +46,34 @@ const ApplicationList = (props) => {
<div className="govuk-grid-column-full">
<dl className="govuk-summary-list govuk-!-margin-bottom-0 results">
<div className="govuk-summary-list__row results-headings">
<dd className="govuk-summary-list__key govuk-!-font-size-14 results_wider ">
<dd className="govuk-summary-list__key govuk-!-font-size-16 results_wider ">
{t(
"dnsApplications:result-list-heading-label-reference"
)}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t(
"dnsApplications:result-list-heading-label-application"
)}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t(
"dnsApplications:result-list-heading-label-developer"
)}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t(
"dnsApplications:result-list-heading-label-type"
)}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t(
"dnsApplications:result-list-heading-label-status"
)}
</dd>
</div>
<div className="govuk-summary-list__row">
<dd className="govuk-summary-list__value govuk-!-font-size-14 ">
<dd className="govuk-summary-list__value govuk-!-font-size-16 ">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-reference"
@@ -82,7 +82,7 @@ const ApplicationList = (props) => {
</span>
CAS-00009-W8N6W4
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<Link href="/dns/application-view">
<a>
<span className="results-visually-hidden">
@@ -95,7 +95,7 @@ const ApplicationList = (props) => {
</a>
</Link>
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-developer"
@@ -104,7 +104,7 @@ const ApplicationList = (props) => {
</span>
Menter Mon
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-type"
@@ -113,7 +113,7 @@ const ApplicationList = (props) => {
</span>
Energy
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-status"
@@ -124,7 +124,7 @@ const ApplicationList = (props) => {
</dd>
</div>
<div className="govuk-summary-list__row">
<dd className="govuk-summary-list__value govuk-!-font-size-14 ">
<dd className="govuk-summary-list__value govuk-!-font-size-16 ">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-reference"
@@ -133,7 +133,7 @@ const ApplicationList = (props) => {
</span>
CAS-00009-W8N6W4
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<Link href="/dns/application-view">
<a>
<span className="results-visually-hidden">
@@ -146,7 +146,7 @@ const ApplicationList = (props) => {
</a>
</Link>
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-developer"
@@ -155,7 +155,7 @@ const ApplicationList = (props) => {
</span>
Menter Mon
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-type"
@@ -164,7 +164,7 @@ const ApplicationList = (props) => {
</span>
Energy
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-status"
@@ -175,7 +175,7 @@ const ApplicationList = (props) => {
</dd>
</div>
<div className="govuk-summary-list__row">
<dd className="govuk-summary-list__value govuk-!-font-size-14 ">
<dd className="govuk-summary-list__value govuk-!-font-size-16 ">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-reference"
@@ -184,7 +184,7 @@ const ApplicationList = (props) => {
</span>
CAS-00009-W8N6W4
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<Link href="/dns/application-view">
<a>
<span className="results-visually-hidden">
@@ -197,7 +197,7 @@ const ApplicationList = (props) => {
</a>
</Link>
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-developer"
@@ -206,7 +206,7 @@ const ApplicationList = (props) => {
</span>
Menter Mon
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-type"
@@ -215,7 +215,7 @@ const ApplicationList = (props) => {
</span>
Energy
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-status"
@@ -226,7 +226,7 @@ const ApplicationList = (props) => {
</dd>
</div>
<div className="govuk-summary-list__row">
<dd className="govuk-summary-list__value govuk-!-font-size-14 ">
<dd className="govuk-summary-list__value govuk-!-font-size-16 ">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-reference"
@@ -235,7 +235,7 @@ const ApplicationList = (props) => {
</span>
CAS-00009-W8N6W4
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<Link href="/dns/application-view">
<a>
<span className="results-visually-hidden">
@@ -248,7 +248,7 @@ const ApplicationList = (props) => {
</a>
</Link>
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-developer"
@@ -257,7 +257,7 @@ const ApplicationList = (props) => {
</span>
Menter Mon
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-type"
@@ -266,7 +266,7 @@ const ApplicationList = (props) => {
</span>
Energy
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-status"
@@ -277,7 +277,7 @@ const ApplicationList = (props) => {
</dd>
</div>
<div className="govuk-summary-list__row">
<dd className="govuk-summary-list__value govuk-!-font-size-14 ">
<dd className="govuk-summary-list__value govuk-!-font-size-16 ">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-reference"
@@ -286,7 +286,7 @@ const ApplicationList = (props) => {
</span>
CAS-00009-W8N6W4
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<Link href="/dns/application-view">
<a>
<span className="results-visually-hidden">
@@ -299,7 +299,7 @@ const ApplicationList = (props) => {
</a>
</Link>
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-developer"
@@ -308,7 +308,7 @@ const ApplicationList = (props) => {
</span>
Menter Mon
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-type"
@@ -317,7 +317,7 @@ const ApplicationList = (props) => {
</span>
Energy
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-status"
@@ -328,7 +328,7 @@ const ApplicationList = (props) => {
</dd>
</div>
<div className="govuk-summary-list__row">
<dd className="govuk-summary-list__value govuk-!-font-size-14 ">
<dd className="govuk-summary-list__value govuk-!-font-size-16 ">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-reference"
@@ -337,7 +337,7 @@ const ApplicationList = (props) => {
</span>
CAS-00009-W8N6W4
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<Link href="/dns/application-view">
<a>
<span className="results-visually-hidden">
@@ -350,7 +350,7 @@ const ApplicationList = (props) => {
</a>
</Link>
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-developer"
@@ -359,7 +359,7 @@ const ApplicationList = (props) => {
</span>
Menter Mon
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-type"
@@ -368,7 +368,7 @@ const ApplicationList = (props) => {
</span>
Energy
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-status"
@@ -379,7 +379,7 @@ const ApplicationList = (props) => {
</dd>
</div>
<div className="govuk-summary-list__row">
<dd className="govuk-summary-list__value govuk-!-font-size-14 ">
<dd className="govuk-summary-list__value govuk-!-font-size-16 ">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-reference"
@@ -388,7 +388,7 @@ const ApplicationList = (props) => {
</span>
CAS-00009-W8N6W4
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<Link href="/dns/application-view">
<a>
<span className="results-visually-hidden">
@@ -401,7 +401,7 @@ const ApplicationList = (props) => {
</a>
</Link>
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-developer"
@@ -410,7 +410,7 @@ const ApplicationList = (props) => {
</span>
Menter Mon
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-type"
@@ -419,7 +419,7 @@ const ApplicationList = (props) => {
</span>
Energy
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-status"
@@ -430,7 +430,7 @@ const ApplicationList = (props) => {
</dd>
</div>
<div className="govuk-summary-list__row">
<dd className="govuk-summary-list__value govuk-!-font-size-14 ">
<dd className="govuk-summary-list__value govuk-!-font-size-16 ">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-reference"
@@ -439,7 +439,7 @@ const ApplicationList = (props) => {
</span>
CAS-00009-W8N6W4
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<Link href="/dns/application-view">
<a>
<span className="results-visually-hidden">
@@ -452,7 +452,7 @@ const ApplicationList = (props) => {
</a>
</Link>
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-developer"
@@ -461,7 +461,7 @@ const ApplicationList = (props) => {
</span>
Menter Mon
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-type"
@@ -470,7 +470,7 @@ const ApplicationList = (props) => {
</span>
Energy
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"dnsApplications:result-list-heading-label-status"
+49
View File
@@ -0,0 +1,49 @@
import Link from "next/link";
import { useRouter } from "next/router";
import { useContext } from "react";
import useTranslation from "next-translate/useTranslation";
import SearchForCase from "./search/searchforcase";
import DNSSearchResults from "./search/dnssearchresults";
import CRMError from "./crmError";
export default function Search(props) {
const { searchString, searchResultsObj } = props;
let { t } = useTranslation();
const router = useRouter();
const { locale } = router;
var hasError = _.has(searchResultsObj.searchResultsObj, "errorCode")
? true
: false;
//console.log("has an error", hasError);
return (
<main
className="govuk-main-wrapper govuk-main-wrapper--auto-spacing"
id="main-content"
role="main"
>
{hasError ? (
<CRMError props={props} />
) : (
<>
<div className="govuk-grid-row">
<div className="govuk-grid-column-full">
<DNSSearchResults
searchString={searchString}
searchResultsObj={
searchResultsObj.searchResultsObj
}
searchDetailsObj={
searchResultsObj.searchDetailsObj
}
/>
</div>
</div>
</>
)}
</main>
);
}
+108 -64
View File
@@ -1,10 +1,15 @@
import useSWR from "swr";
import { Field, reduxForm } from "redux-form";
import router from "next/router";
import DatePicker from "react-datepicker";
import { useRouter } from "next/router";
import DatePicker, { registerLocale, setDefaultLocale } from "react-datepicker";
import cy from "date-fns/locale/cy";
import React, { useState } from "react";
import "react-datepicker/dist/react-datepicker.css";
import moment from "moment";
import jsonpath from "jsonpath";
import fieldLookup from "../../data/crmfieldlookuptranslations.json";
import pickListLookup from "../../data/picklistLookups.json";
import useTranslation from "next-translate/useTranslation";
const RenderTextfield = ({
id,
@@ -28,7 +33,7 @@ const RenderTextfield = ({
}
>
<label className="govuk-label " htmlFor={id} id={id + "_label"}>
{label}
{FieldsTranslations(label)}
</label>
{touched && error && (
<span id={id + "-error"} className="govuk-error-message">
@@ -43,21 +48,39 @@ const RenderTextfield = ({
};
export function Textfield(props) {
const { name, label, validate } = props;
const { name, label, validate, ticketnumber } = props;
const required = (value) => (value ? undefined : "Required");
return (
<Field
name={props.name}
id={props.name}
component={RenderTextfield}
type="text"
className="govuk-input govuk-input--width-20"
//validate={[required]}
label={props.label}
errorMsg="Is required"
/>
);
if (name == "pinswg_name") {
return (
<div className="govuk-form-group">
<label className="govuk-label " htmlFor={props.name}>
{label}
</label>
<input
type="text"
name={name}
id={props.name}
component={RenderCaseID}
value={ticketnumber}
className="govuk-input govuk-input--width-20"
disabled
/>
</div>
);
} else {
return (
<Field
name={props.name}
id={props.name}
component={RenderTextfield}
type="text"
className="govuk-input govuk-input--width-20"
//validate={[required]}
label={props.label}
errorMsg="Is required"
/>
);
}
}
const RenderMultiline = ({
@@ -84,7 +107,7 @@ export function MultiLinefield(props) {
<div className="govuk-form-group">
<h1 className="govuk-label-wrapper">
<label className="govuk-label" htmlFor={props.name}>
{props.label}
{FieldsTranslations(props.label)}
</label>
</h1>
<div
@@ -118,6 +141,8 @@ const RenderDatePicker = ({
meta: { touched, error },
...custom
}) => {
const router = useRouter();
registerLocale("cy", cy);
return (
<>
<div
@@ -137,7 +162,7 @@ const RenderDatePicker = ({
className="govuk-fieldset__heading"
id={id + "_label"}
>
{label}
{FieldsTranslations(label)}
</label>
</legend>
{touched && error && (
@@ -153,6 +178,7 @@ const RenderDatePicker = ({
)}
<DatePicker
{...custom}
locale={router.locale}
autoOk={true}
dateFormat="dd/MM/yyyy"
onChange={onChange}
@@ -190,14 +216,14 @@ export function DateField(props) {
<fieldset
className="govuk-fieldset"
role="group"
aria-describedby="dob-hint"
aria-describedby={name + "-hint"}
>
<legend className="govuk-fieldset__legend govuk-fieldset__legend--s govuk-!-font-weight-regular">
<label className="govuk-fieldset__heading">
{props.label}
{FieldsTranslations(props.label)}
</label>
</legend>
<div className="govuk-date-input" id="dob">
<div className="govuk-date-input" id={name}>
<div className="govuk-date-input__item">
<div className="govuk-form-group">
<label
@@ -290,7 +316,7 @@ const RenderYesNo = ({
className="govuk-fieldset__heading govuk-body-m"
id={id + "_label"}
>
{label}
{FieldsTranslations(label)}
</label>
</legend>
{touched && error && (
@@ -335,8 +361,10 @@ const RenderYesNo = ({
};
export function YesNofield(props) {
const router = useRouter();
const { name, label } = props;
const yesNo = ["Yes", "No"];
const yesNo = router.locale == "cy" ? ["Ydw", "Na"] : ["Yes", "No"];
const required = (value) => (value ? undefined : "Required");
return (
@@ -348,7 +376,7 @@ export function YesNofield(props) {
id={props.name}
className="govuk-radios__input"
//validate={[required]}
errorMsg="Select and option"
errorMsg="Select an option"
component={RenderYesNo}
/>
);
@@ -356,49 +384,29 @@ export function YesNofield(props) {
const RenderPickList = ({
datafieldname,
picklistData,
name,
label,
input,
meta: { touched, errorStr },
}) => {
const fetcher = (url) => fetch(url).then((res) => res.json());
const { data, error } = useSWR("/api/lookups/" + datafieldname, fetcher);
if (error)
return (
<div className="govuk-form-group">
<label className="govuk-label govuk-body-m" htmlFor={name}>
{label}
</label>
<select className="govuk-select" id={name} name={name}>
<option value="">empty</option>
</select>
</div>
);
if (!data)
return (
<div>
<div className="govuk-form-group">{label} loading...</div>
</div>
);
//console.log(JSON.stringify(data.GlobalOptionSet.Options));
const dropdownObj = data.GlobalOptionSet.Options;
let { t } = useTranslation();
var dropdownObj = jsonpath.query(
picklistData,
"$..value[?(@.LogicalName=='" + datafieldname + "')]..Options"
);
dropdownObj = dropdownObj[0];
return (
<div>
<select {...input} className="govuk-select " id={name} name={name}>
<option>Select...</option>
<option>{t("newappeal:select-default")}</option>
{Object.keys(dropdownObj).map((key, index) => {
return (
<option
key={key}
value={
dropdownObj[key].Label.LocalizedLabels[0].value
}
// value={dropdownObj[key].Label.LocalizedLabels[0].MetadataId}
>
{dropdownObj[key].Label.LocalizedLabels[0].Label}
<option key={key} value={dropdownObj[key].Value}>
{PickListTranslations(
dropdownObj[key].Label.LocalizedLabels[0].Label
)}
</option>
);
})}
@@ -415,12 +423,13 @@ export function PickList(props) {
return (
<div className="govuk-form-group">
<label className="govuk-label govuk-body-m" htmlFor={props.name}>
{props.label}
{FieldsTranslations(label)}
</label>
<Field
name={props.name}
component={RenderPickList}
datafieldname={datafieldname}
picklistData={props.picklistData}
/>
</div>
);
@@ -432,18 +441,19 @@ export function NumericField(props) {
return (
<div className="govuk-form-group">
<label className="govuk-label" htmlFor={props.name}>
{props.label}
{FieldsTranslations(props.label)}
</label>
<Field
name={props.name}
id={props.name}
component="input"
type="text"
type="number"
className="govuk-input govuk-input--width-20"
spellCheck="false"
//aria-describedby="account-number-hint"
pattern="[0-9]*"
inputMode="numeric"
parse={Number}
/>
</div>
);
@@ -455,18 +465,19 @@ export function DecimalField(props) {
return (
<div className="govuk-form-group">
<label className="govuk-label" htmlFor={props.name}>
{props.label}
{FieldsTranslations(props.label)}
</label>
<Field
name={props.name}
id={props.name}
component="input"
type="text"
className="govuk-input govuk-input--width-10"
type="number"
className="govuk-input govuk-input--width-10"
spellCheck="false"
//aria-describedby="account-number-hint"
pattern="[0-9]*"
inputMode="numeric"
parse={Number}
/>
</div>
);
@@ -480,7 +491,7 @@ export function ReadOnlyfield(props) {
return (
<div className="govuk-form-group">
<label className="govuk-label " htmlFor={props.name}>
{props.label}
{FieldsTranslations(props.label)}
</label>
<input
type="text"
@@ -494,3 +505,36 @@ export function ReadOnlyfield(props) {
</div>
);
}
const FieldsTranslations = (label) => {
const router = useRouter();
const { locale } = router;
const { appealtypes } = router.query;
let formObj = jsonpath.query(fieldLookup, "$['" + appealtypes + "']");
let labelTrans =
router.locale == "cy"
? jsonpath.query(
formObj,
"$..[?(@.value=='" + label + "')].value_cy"
)
: label;
return labelTrans;
};
const PickListTranslations = (optionValue) => {
const router = useRouter();
const { locale } = router;
const { appealtypes } = router.query;
//console.log(optionValue);
let optionTrans =
router.locale == "cy"
? jsonpath.query(
pickListLookup,
'$..[?(@.value=="' + optionValue + '")].value_cy'
)
: optionValue;
//console.log(optionTrans, optionValue);
return optionTrans;
};
+128 -53
View File
@@ -27,6 +27,13 @@ export default function Footer(props) {
: setShowShareState(true);
};
//console.log(router.asPath);
const shareBodyStr = t("common:gov-wales-link") + router.asPath;
const shareSubjectStr =
t("common:social-shared-from") +
" " +
t("common:gov-wales-label").toLowerCase();
return (
<>
<div className="sharebar" id="sharebar">
@@ -60,7 +67,10 @@ export default function Footer(props) {
>
<li>
<a
href="https://twitter.com/intent/tweet?url=https%3A//gov.wales/"
href={
"https://twitter.com/intent/tweet?url=" +
shareBodyStr
}
className="twitter"
>
<span className="vo_hidden">
@@ -73,7 +83,10 @@ export default function Footer(props) {
</li>
<li>
<a
href="https://www.facebook.com/sharer/sharer.php?u=https%3A//gov.wales/"
href={
"https://www.facebook.com/sharer/sharer.php?u=" +
shareBodyStr
}
className="facebook"
>
<span className="vo_hidden">
@@ -84,7 +97,12 @@ export default function Footer(props) {
</li>
<li>
<a
href="mailto:?body=https%3A//gov.wales/&amp;subject=Shared%20from%20gov.wales"
href={
"mailto:?body=" +
shareBodyStr +
"&subject=" +
shareSubjectStr
} //</li>https%3A//gov.wales/&amp;subject=Shared%20from%20gov.wales"
className="email"
>
<span className="vo_hidden">
@@ -117,68 +135,125 @@ export default function Footer(props) {
role="navigation"
aria-labelledby="footer_links"
>
<ul className="govuk-footer__inline-list">
<li className="govuk-footer__inline-list-item govuk-!-font-weight-bold govuk-!-margin-right-7">
<a
href={t(
"common:footer-guidance-link"
)}
className="nav-link"
>
{t(
"common:footer-guidance-link-label"
)}
</a>
</li>
<li className="govuk-footer__inline-list-item govuk-!-font-weight-bold">
<a
href={t(
"common:footer-contact-us-link"
)}
className="govuk-footer__link"
id="aAccess"
>
{t(
"common:footer-contact-us-link-label"
)}
</a>
</li>
</ul>
<ul
className="govuk-footer__inline-list"
id="footer_links"
>
<li className="govuk-footer__inline-list-item">
<a
href="http://www.gov.uk/government/publications/appeals-casework-portal-documentation"
href={t(
"common:footer-accessibility-link"
)}
className="govuk-footer__link"
id="aAccess"
>
{t(
"common:footer-accessibility-link-label"
)}
</a>
</li>
<li className="govuk-footer__inline-list-item">
<Link
href={
router.locale == "cy"
? "/help/cwcis"
: "/help/cookies"
}
>
<a
id="aCookies"
className="govuk-footer__link"
>
{t(
"common:footer-cookies-link"
)}
</a>
</Link>
</li>
<li className="govuk-footer__inline-list-item">
<a
href={t(
"common:footer-copyright-link"
)}
className="govuk-footer__link"
id="aAccess"
>
{t(
"common:footer-copyright-link-label"
)}
</a>
</li>
<li className="govuk-footer__inline-list-item">
<a
href={t(
"common:footer-privacy-link"
)}
id="aPrivacy"
className="govuk-footer__link"
>
{t(
"common:footer-privacy-link-label"
)}
</a>
</li>
<li className="govuk-footer__inline-list-item">
<a
href={t(
"common:footer-terms-conditions-link"
)}
id="aTermsConds"
className="govuk-footer__link"
>
{t(
"common:footer-terms-conditions-link-label"
)}
</a>
</li>
{/* <li className="govuk-footer__inline-list-item">
<a
href={t(
"common:footer-alternative-languages-link"
)}
id="aTermsConds"
className="govuk-footer__link"
target="_blank"
rel="noreferrer"
>
{t(
"common:footer-terms-conditions-link"
"common:footer-alternative-languages-link-label"
)}
</a>
</li>
<li className="govuk-footer__inline-list-item">
<a
href="https://www.gov.uk/government/publications/planning-inspectorate-privacy-notices"
id="aPrivacy"
className="govuk-footer__link"
target="_blank"
rel="noreferrer"
>
{t("common:footer-privacy-link")}
</a>
</li>
<li className="govuk-footer__inline-list-item">
<a
href="https://www.gov.uk/guidance/appeals-casework-portal-privacy-cookies"
id="aCookies"
className="govuk-footer__link"
target="_blank"
rel="noreferrer"
>
{t("common:footer-cookies-link")}
</a>
</li>
<li className="govuk-footer__inline-list-item">
<a
href="http://www.gov.uk/government/publications/appeals-casework-portal-documentation"
className="govuk-footer__link"
id="aAccess"
target="_blank"
rel="noreferrer"
>
{t(
"common:footer-accessibility-link"
)}
</a>
</li>
<li className="govuk-footer__inline-list-item">
<a
href="http://www.gov.uk/guidance/feedback"
id="feedback"
target="_blank"
rel="noreferrer"
>
{t("common:footer-feedback-link")}
</a>
</li>
</li> */}
</ul>
</nav>
<div
@@ -186,12 +261,12 @@ export default function Footer(props) {
id="footer_logo"
>
<a
href="https://gov.wales/"
href={t("common:gov-wales-link")}
className="footer__logo"
id="footerlogo"
>
<span className="visually-hidden">
Home
{t("common:gov-wales-label")}
</span>
</a>
</div>
+88 -57
View File
File diff suppressed because one or more lines are too long
+24 -14
View File
@@ -3,19 +3,29 @@ import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
export default function CaseComment() {
let { t } = useTranslation();
let { t } = useTranslation();
const router = useRouter();
const { locale } = router;
return (
<div className="card" id="casescomment-card">
<div className="card-body">
<h3 className="heading-small card-heading">
{t("home:casescomment-card-title")}
</h3>
<p className="govuk-body-s">{t("home:casescomment-card-paragraph-one")}</p>
<p className="govuk-body-s">{t("home:casescomment-card-paragraph-two")}</p>
</div>
</div>
);
const router = useRouter();
const { locale } = router;
return (
<div className="card" id="casescomment-card">
<div className="card-body">
<h3 className="heading-small card-heading">
{t("home:casescomment-card-title")}
</h3>
<p className="govuk-body-s">
{t("home:casescomment-card-paragraph-one")}{" "}
<a
href={"mailto:" + t("home:login-contact-email")}
className="govuk-link--no-underline"
>
{t("home:login-contact-email")}
</a>
</p>
<p className="govuk-body-s">
{t("home:casescomment-card-paragraph-two")}
</p>
</div>
</div>
);
}
+165 -69
View File
@@ -2,91 +2,187 @@ import Link from "next/link";
import { useState } from "react";
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import { connect } from "react-redux";
import { Field, reduxForm } from "redux-form";
import LoadingOverlay from "react-loading-overlay";
export default function CaseSearch() {
const required = (errorMsg) => (value) =>
value || typeof value === "number" ? undefined : errorMsg;
export const minLength = (errorMsg) => (value) =>
value && value.length < 4
? errorMsg //`Must be ${min} characters or more`
: undefined;
const RenderTextfield = ({
id,
className,
rows,
datafieldname,
name,
label,
input,
hint1,
hint2,
hint3,
meta: { touched, error },
...custom
}) => {
return (
<>
<div className="govuk-form-group">
<div id="basicSearch-hint" className="govuk-hint ">
<span className="govuk-body-s">{hint1}</span>
<ul className="govuk-body-s govuk-!-margin-top-3">
<li>{hint2} </li>
<li>{hint3}</li>
</ul>
</div>
<label className="govuk-label " htmlFor={id} id={id + "_label"}>
{label}
</label>
<div>
<input
{...input}
className={className}
name={name}
id={id}
/>
{touched && error && (
<span
id={id + "-error"}
className="govuk-error-message govuk-form-group--error"
>
<span className="govuk-visually-hidden">
Error:
</span>{" "}
{error}
</span>
)}
</div>
</div>
</>
);
};
let CaseSearch = (props) => {
let { t } = useTranslation();
const { handleSubmit, pristine, reset, submitting } = props;
const router = useRouter();
const { locale } = router;
const [query, setQuery] = useState("");
const [validationError, setValidationError] = useState("");
const handleParam = (setValue) => (e) => setValue(e.target.value);
const basicSearch = (event) => {
event.preventDefault();
const [showSpinnerState, setShowSpinnerState] = useState(false);
if (query == "" || query == null) {
setValidationError(true);
} else {
setValidationError(false);
console.log(query);
// /searchresults
let spinnerState = () => {
showSpinnerState == true
? setShowSpinnerState(false)
: setShowSpinnerState(true);
};
router.push({
pathname: "/searchresults",
query: { q: query },
});
}
const onHandleSubmit = (values) => {
spinnerState();
router.replace({
pathname:
router.locale == "cy"
? "/canlyniadauchwilio"
: "/searchresults",
query: { q: values.basicSearch },
shallow: true,
});
};
return (
<div className="card" id="casesearch-card">
<form onSubmit={basicSearch}>
<div className="card-body">
<h3 className="heading-small card-heading">
{t("home:casesearch-card-title")}
</h3>
<div
className={
validationError
? "govuk-form-group govuk-form-group--error"
: "govuk-form-group "
}
>
<div id="basicSearch-hint" className="govuk-hint ">
{t("home:casesearch-card-search-hint")}:
<br />
<span className="govuk-body-s">
{" "}
<span className="govuk-!-font-weight-bold">
{t(
"home:casesearch-card-search-example-label"
)}
:
</span>{" "}
CAS-00009-W8N6W4
</span>
</div>
{validationError && (
<span
id="basicSearch-error"
className="govuk-error-message"
>
<span className="govuk-visually-hidden">
Error:
</span>{" "}
Case reference is required
</span>
)}
<input
<>
<div className="card" id="casesearch-card">
<form onSubmit={handleSubmit(onHandleSubmit)}>
<div className="card-body">
<h3 className="heading-small card-heading">
{t("home:casesearch-card-title")}
</h3>
<Field
validate={[
required(
t(
"home:casesearch-search-validation-required"
)
),
minLength(
t(
"home:casesearch-search-validation-minlength"
)
),
]}
className="govuk-input"
component={RenderTextfield}
id="basicSearch"
name="basicSearch"
type="text"
aria-describedby="basicSearch-hint"
onChange={handleParam(setQuery)}
hint1={t("home:casesearch-card-search-hint")}
hint2={t(
"home:casesearch-card-search-example-label-1"
)}
hint3={t(
"home:casesearch-card-search-example-label-2"
)}
/>
<div className="govuk-form-group">
<button type="submit" className="govuk-button">
{t("home:casesearch-card-button")}
</button>
</div>
<Link
href={
router.locale == "cy"
? "/chwiliouwch"
: "/advancedsearch"
}
>
<a className="govuk-link--no-underline">
{t("home:casesearch-card-advanced-link")}
</a>
</Link>
</div>
<div className="govuk-form-group">
<button type="submit" className="govuk-button">
{t("home:casesearch-card-button")}
</button>
</div>
<Link href="/advancedsearch">
<a>{t("home:casesearch-card-advanced-link")}</a>
</Link>
</div>
</form>
</div>
</form>
<LoadingOverlay
active={showSpinnerState}
spinner
text={t("common:spinner-searching")}
/>
</div>
</>
);
}
};
const mapStateToProps = (state) => {
return {
currentView: state.currentView,
search: state.search,
searchResultsObj: state.searchResultsObj,
formData: state.formData,
appealType: state.appealType,
//form: state.form,
myCases: state.myCases,
watchedCases: state.watchedCases,
myRepresentations: state.myRepresentations,
awaitingSubmission: state.awaitingSubmission,
};
};
const mapDispatchToProps = (dispatch) => {
return {};
};
export default connect(
mapStateToProps,
mapDispatchToProps
)(
reduxForm({
form: "basicSearchForm",
destroyOnUnmount: false,
})(CaseSearch)
);
+56
View File
@@ -0,0 +1,56 @@
import Link from "next/link";
import { useState } from "react";
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import LoadingOverlay from "react-loading-overlay";
export default function Dns() {
let { t } = useTranslation();
const [showSpinnerState, setShowSpinnerState] = useState(false);
const router = useRouter();
const { locale } = router;
let spinnerState = () => {
showSpinnerState == true
? setShowSpinnerState(false)
: setShowSpinnerState(true);
};
return (
<div className="card" id="casesearch-card">
<div className="card-body">
<h3 className="heading-small card-heading">
{t("home:dns-card-title")}
</h3>
<div className="govuk-form-group">
<p className="govuk-body-s">
{t("home:dns-card-paragraph")}
</p>
</div>
<div className="govuk-form-group">
<Link
href={
router.locale == "cy"
? "/ceisiadaudns"
: "/dnsapplications"
}
>
<a
className="govuk-button withChevron govuk-button-cta"
onClick={() => {
spinnerState();
}}
>
{t("home:dns-card-button")}
</a>
</Link>
</div>
</div>
<LoadingOverlay
active={showSpinnerState}
spinner
text={t("common:spinner-loading")}
/>
</div>
);
}
+1 -1
View File
@@ -12,7 +12,7 @@ export default function Inspectorate() {
<div className="card clear" id="inspectorate-card">
<div className="card-body">
<Image
alt="Planning Inspectorate"
alt={t("home:inspectorate-card-alt-text")}
src="/assets/images/PINS_dual_logo_400.png"
width="380px"
height="58px"
+252 -68
View File
@@ -1,87 +1,271 @@
import Link from "next/link";
import { useState } from "react";
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import { connect } from "react-redux";
import { Field, reduxForm } from "redux-form";
import LoadingOverlay from "react-loading-overlay";
import { getLogin } from "../../actions";
import { setLoggedInUserId } from "../../store/accountDetails/action";
export default function Login() {
const required = (errorMsg) => (value) =>
value || typeof value === "number" ? undefined : errorMsg;
export const minLength = (errorMsg) => (value) =>
value && value.length < 4
? errorMsg //`Must be ${min} characters or more`
: undefined;
const RenderTextfield = ({
id,
className,
rows,
datafieldname,
name,
label,
input,
hint1,
hint2,
meta: { touched, error },
...custom
}) => {
return (
<>
<div
className={
touched && error
? "govuk-form-group govuk-form-group--error"
: "govuk-form-group "
}
>
<div id="basicSearch-hint" className="govuk-hint ">
<span className="govuk-body-m">{hint1}</span>
<br />
<span className="govuk-body-s">{hint2}</span>
</div>
<label className="govuk-label " htmlFor={id} id={id + "_label"}>
{label}
</label>
{touched && error && (
<span id={id + "-error"} className="govuk-error-message">
<span className="govuk-visually-hidden">Error:</span>{" "}
{error}
</span>
)}
<input {...input} className={className} name={name} id={id} />
</div>
</>
);
};
const RenderPasswordfield = ({
id,
className,
rows,
datafieldname,
name,
label,
input,
hint1,
hint2,
meta: { touched, error },
...custom
}) => {
return (
<>
<div
className={
touched && error
? "govuk-form-group govuk-form-group--error"
: "govuk-form-group "
}
>
<div id="basicSearch-hint" className="govuk-hint ">
<span className="govuk-body-m">{hint1}</span>
</div>
<label className="govuk-label " htmlFor={id} id={id + "_label"}>
{label}
</label>
{touched && error && (
<span id={id + "-error"} className="govuk-error-message">
<span className="govuk-visually-hidden">Error:</span>{" "}
{error}
</span>
)}
<input
{...input}
type="password"
className={className}
name={name}
id={id}
/>
</div>
</>
);
};
let Login = (props) => {
let { t } = useTranslation();
const { handleSubmit, pristine, reset, submitting, setLoggedInUserId } =
props;
const router = useRouter();
const { locale } = router;
const [showSpinnerState, setShowSpinnerState] = useState(false);
const [validLoginID, setValidLoginID] = useState(null);
let spinnerState = () => {
showSpinnerState == true
? setShowSpinnerState(false)
: setShowSpinnerState(true);
};
const onHandleSubmit = (values) => {
spinnerState();
getLogin(values.loginUserID, values.loginUserPassword).then((data) => {
data.value.length != 0
? (setValidLoginID(true),
setLoggedInUserId(data.value[0].contactid),
spinnerState(),
router.replace({
pathname:
router.locale == "cy" ? "/fymhorth" : "/myportal",
query: { q: data.value[0].contactid },
shallow: true,
}))
: (setShowSpinnerState(false), setValidLoginID(false));
});
};
return (
<div className="card" id="login-card">
<div className="card-body active">
<h3 className="heading-small card-heading">
{t("home:login-card-title")}
</h3>
<form action="/myportal" method="POST" id="loginForm">
<div className="govuk-form-group">
{" "}
<label
htmlFor="user_id"
className="govuk-label"
aria-describedby="user_id-hint"
>
{t("home:login-card-id-label")}
</label>
<div className="govuk-hint" id="user_id-hint">
{t("home:login-card-id-hint")}
<form onSubmit={handleSubmit(onHandleSubmit)}>
<div className="card-body active">
<h3 className="heading-small card-heading">
{t("home:login-card-title")}
</h3>
{validLoginID == false && (
<div className="govuk-error-message govuk-form-group--error">
Incorrect username or password
</div>
<input
type="text"
name="user_id"
id="user_id"
className="govuk-input govuk-!-width-one-half"
maxLength="22"
aria-describedby="user_id-hint"
autoComplete="username"
/>
</div>
)}
<Field
// validate={[
// required(
// t("home:casesearch-search-validation-required")
// ),
// minLength(
// t("home:casesearch-search-validation-minlength")
// ),
// ]}
className="govuk-input"
component={RenderTextfield}
id="loginUserID"
name="loginUserID"
type="text"
aria-describedby="basicSearch-hint"
hint1={t("home:login-card-id-label")}
hint2={t("home:login-card-id-hint")}
/>
<Field
// validate={[
// required(
// t("home:casesearch-search-validation-required")
// ),
// minLength(
// t("home:casesearch-search-validation-minlength")
// ),
// ]}
className="govuk-input"
component={RenderPasswordfield}
id="loginUserPassword"
name="loginUserPassword"
type="password"
label="Password"
/>
<div className="govuk-form-group">
{" "}
<label htmlFor="password" className="govuk-label">
{t("home:login-card-password-label")}
</label>
<input
type="password"
name="password"
id="password"
className="govuk-input govuk-!-width-three-quarters"
autoComplete="current-password"
/>
</div>
<div className="govuk-form-group">
{/* <button
type="submit"
className="govuk-button"
data-module="govuk-button"
id="continue"
formnovalidate=""
>
{t("home:login-card-button")}
</button> */}
<Link href="/myportal">
{/* <Link
href={
router.locale == "cy"
? "/fymhorth"
: "/myportal"
}
>
<a className="govuk-button">
{t("home:login-card-button")}
</a>
</Link>
</Link> */}
<button type="submit" className="govuk-button">
{t("home:login-card-button")}
</button>
</div>
<div className="govuk-form-group govuk-!-margin-top-4">
<p className="govuk-body-s">
{t("home:login-card-register-label")}{" "}
<Link
href={
router.locale == "cy"
? "/cyfrif/cofrestr"
: "/account/register"
}
>
<a className="govuk-link--no-underline">
{t("home:login-card-register-link")}
</a>
</Link>
</p>
<p className="govuk-body-s">
<Link href="/">
<a className="govuk-link--no-underline">
{t("home:login-card-forgotten-label")}{" "}
</a>
</Link>
</p>
</div>
</form>
<div className="govuk-form-group govuk-!-margin-top-4">
<p className="govuk-body-s">
{t("home:login-card-register-label")}{" "}
<Link href="/account/register">
<a>{t("home:login-card-register-link")}</a>
</Link>
</p>
<p className="govuk-body-s">
{t("home:login-card-forgotten-label")}{" "}
<Link href="/">
<a>{t("home:login-card-forgotten-link")}</a>
</Link>
</p>
</div>
</div>
</form>
<LoadingOverlay
active={showSpinnerState}
spinner
text="Logging in"
/>
</div>
);
}
};
const mapStateToProps = (state) => {
return {
currentView: state.currentView,
search: state.search,
searchResultsObj: state.searchResultsObj,
formData: state.formData,
appealType: state.appealType,
//form: state.form,
myCases: state.myCases,
watchedCases: state.watchedCases,
myRepresentations: state.myRepresentations,
awaitingSubmission: state.awaitingSubmission,
};
};
const mapDispatchToProps = (dispatch) => {
return {
setLoggedInUserId: (userID) => {
dispatch(setLoggedInUserId(userID));
},
};
};
export default connect(
mapStateToProps,
mapDispatchToProps
)(
reduxForm({
form: "loginForm",
destroyOnUnmount: false,
})(Login)
);
+84
View File
@@ -0,0 +1,84 @@
import Link from "next/link";
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
export default function LoginSoon() {
let { t } = useTranslation();
const router = useRouter();
const { locale } = router;
return (
<div className="card" id="login-card">
<div className="card-body active">
<h3 className="heading-small card-heading">
{t("home:login-card-title-temp")}
</h3>
<div className="govuk-form-group govuk-!-margin-top-4">
<p className="govuk-body-s">
{t("home:login-comingsoon-temp-1")}{" "}
</p>
<p className="govuk-body-s">
{t("home:login-comingsoon-temp-2")}
</p>
<ul>
<li>
<a
className="govuk-link--no-underline"
target="_blank"
href={t("home:login-comingsoon-forms-link-1")}
rel="noreferrer"
>
{t("home:login-comingsoon-forms-label-1")}
</a>
</li>
<li>
{" "}
<a
className="govuk-link--no-underline"
target="_blank"
href={t("home:login-comingsoon-forms-link-2")}
rel="noreferrer"
>
{t("home:login-comingsoon-forms-label-2")}
</a>
</li>
<li>
{" "}
<a
className="govuk-link--no-underline"
target="_blank"
href={t("home:login-comingsoon-forms-link-3")}
rel="noreferrer"
>
{t("home:login-comingsoon-forms-label-3")}
</a>
</li>
<li>
{" "}
<a
className="govuk-link--no-underline"
target="_blank"
href={t("home:login-comingsoon-forms-link-4")}
rel="noreferrer"
>
{t("home:login-comingsoon-forms-label-4")}
</a>
</li>
</ul>
<br />
<p className="govuk-body-s">
{t("home:login-comingsoon-email-link-label")}{" "}
<a
href={"mailto:" + t("home:login-contact-email")}
className="govuk-link--no-underline"
>
{t("home:login-contact-email")}
</a>
</p>
</div>
</div>
</div>
);
}
+8 -5
View File
@@ -1,19 +1,20 @@
import Head from "next/head";
import Banner from "../components/banner";
import Footer from "../components/footer";
import Header from "../components/header";
import useTranslation from "next-translate/useTranslation";
export default function SkipLink(props) {
let { t } = useTranslation();
return (
<div>
<Head>
<title>Appeals Casework Portal</title>
<title>{t("common:service-name")}</title>
</Head>
<div className="">
<Header courseName="Planning Casework Portal" />
<div className="govuk-width-container">
<Banner />
<main
className="govuk-main-wrapper govuk-main-wrapper--auto-spacing"
id="main-content"
@@ -23,10 +24,12 @@ export default function SkipLink(props) {
<div className="govuk-grid-column-two-thirds">
<noscript>
<h1 className="govuk-heading-l">
Please enable javascript
{t("common:enable-js-label")}
</h1>
</noscript>
<h1 className="govuk-heading-m">Loading...</h1>
<h1 className="govuk-heading-m">
{t("common:loading-label")}...
</h1>
</div>
</div>
</main>
+29 -27
View File
@@ -2,35 +2,37 @@ import Link from "next/link";
import { useRouter } from "next/router";
import { useContext } from "react";
import useTranslation from "next-translate/useTranslation";
import Login from "./homepage/login";
import CaseSearch from "./homepage/casesearch";
import Inspectorate from "./homepage/inspectorate";
import CaseComment from "./homepage/casecomment";
import Login from "./homepage/login";
import LoginSoon from "./homepage/loginSoon";
import CaseSearch from "./homepage/casesearch";
import Inspectorate from "./homepage/inspectorate";
import CaseComment from "./homepage/casecomment";
import Dns from "./homepage/dns";
export default function Home({ children, pages }) {
let { t } = useTranslation();
let { t } = useTranslation();
const router = useRouter();
const { locale } = router;
const router = useRouter();
const { locale } = router;
return (
<main
className="govuk-main-wrapper govuk-main-wrapper--auto-spacing"
id="main-content"
role="main"
>
<div className="govuk-grid-row">
<div className="govuk-grid-column-full">
<div className="flex-container grid-row govuk-body ">
<Login />
<CaseSearch/>
<CaseComment/>
<Inspectorate/>
</div>
</div>
</div>
</main>
);
return (
<main
className="govuk-main-wrapper govuk-main-wrapper--auto-spacing"
id="main-content"
role="main"
>
<div className="govuk-grid-row">
<div className="govuk-grid-column-full">
<div className="flex-container grid-row govuk-body ">
<LoginSoon />
<CaseSearch />
<CaseComment />
<Dns />
<Login />
{/* <Inspectorate /> */}
</div>
</div>
</div>
</main>
);
}
+5 -1
View File
@@ -20,7 +20,11 @@ export default function MakeNewAppeal() {
{t("myportal:makenewappeal-card-paragraph-two")}
</p>
<div>
<Link href="/newappeal">
<Link
href={
router.locale == "cy" ? "/apelnewydd" : "/newappeal"
}
>
<a className="govuk-button">
{t("myportal:makenewappeal-card-button-label")}
</a>
+17 -15
View File
@@ -20,24 +20,26 @@ const MyCases = (props) => {
<div className="cardModuleContainer">
<TopThree
showTopThree={props.myCases.myCases}
showDetails={props.myCases.myCasesDetails}
topThreeType={"myCases"}
/>
</div>
<div className="cardVieAll">
<Link href="/myportal/viewall" shallow>
<a
onClick={() => {
setCurrentView({
"viewName": "My Cases",
"viewKey": "myCases",
});
}}
>
{t("myportal:viewall-link")}
</a>
</Link>
</div>
{props.myCases.myCases["@odata.count"] != 0 && (
<div className="cardVieAll">
<Link href="/myportal/viewall" shallow>
<a
onClick={() => {
setCurrentView({
"viewName": "My Cases",
"viewKey": "myCases",
});
}}
>
{t("myportal:viewall-link")}
</a>
</Link>
</div>
)}
</div>
</div>
);
+17 -14
View File
@@ -25,20 +25,23 @@ const MyRepresentations = (props) => {
/>
</div>
<div className="cardVieAll">
<Link href="/myportal/viewall">
<a
onClick={() => {
setCurrentView({
"viewName": "My Representations",
"viewKey": "myRepresentations",
});
}}
>
{t("myportal:viewall-link")}
</a>
</Link>
</div>
{props.myRepresentations.myRepresentations["@odata.count"] !=
0 && (
<div className="cardVieAll">
<Link href="/myportal/viewall" shallow>
<a
onClick={() => {
setCurrentView({
"viewName": "My Representations",
"viewKey": "myRepresentations",
});
}}
>
{t("myportal:viewall-link")}
</a>
</Link>
</div>
)}
</div>
</div>
);
+157 -75
View File
@@ -2,95 +2,177 @@ import Link from "next/link";
import { useState } from "react";
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import { connect } from "react-redux";
import { Field, reduxForm } from "redux-form";
import LoadingOverlay from "react-loading-overlay";
export default function SearchCases() {
const required = (errorMsg) => (value) =>
value || typeof value === "number" ? undefined : errorMsg;
export const minLength = (errorMsg) => (value) =>
value && value.length < 4
? errorMsg //`Must be ${min} characters or more`
: undefined;
const RenderTextfield = ({
id,
className,
rows,
datafieldname,
name,
label,
input,
hint1,
hint2,
meta: { touched, error },
...custom
}) => {
return (
<>
<div
className={
touched && error
? "govuk-form-group govuk-form-group--error"
: "govuk-form-group "
}
>
<div id="basicSearch-hint" className="govuk-hint ">
<span className="govuk-body-m">{hint1}</span>
<br />
<span className="govuk-body-s">
{hint2} CAS-00009-W8N6W4
</span>
</div>
<label className="govuk-label " htmlFor={id} id={id + "_label"}>
{label}
</label>
{touched && error && (
<span id={id + "-error"} className="govuk-error-message">
<span className="govuk-visually-hidden">Error:</span>{" "}
{error}
</span>
)}
<input {...input} className={className} name={name} id={id} />
</div>
</>
);
};
let CaseSearch = (props) => {
let { t } = useTranslation();
const { handleSubmit, pristine, reset, submitting } = props;
const router = useRouter();
const { locale } = router;
const [query, setQuery] = useState("");
const [validationError, setValidationError] = useState("");
const handleParam = (setValue) => (e) => setValue(e.target.value);
const basicSearch = (event) => {
event.preventDefault();
const [showSpinnerState, setShowSpinnerState] = useState(false);
if (query == "" || query == null) {
setValidationError(true);
} else {
setValidationError(false);
console.log(query);
// /searchresults
let spinnerState = () => {
showSpinnerState == true
? setShowSpinnerState(false)
: setShowSpinnerState(true);
};
router.push({
pathname: "/searchresults",
query: { q: query },
});
}
const onHandleSubmit = (values) => {
spinnerState();
router.replace({
pathname:
router.locale == "cy"
? "/fymhorth/canlyniadauchwilio"
: "/myportal/searchresults",
query: { q: values.basicSearch },
shallow: true,
});
};
return (
<div className="card card-3" id="casescomment-card">
<form onSubmit={basicSearch}>
<div className="card-body">
<h3 className="heading-small card-heading">
{t("myportal:searchcases-card-title")}
</h3>
<div
className={
validationError
? "govuk-form-group govuk-form-group--error"
: "govuk-form-group "
}
>
<div id="event-name-hint" className="govuk-hint ">
{t("myportal:searchcases-card-search-hint")}:
<br />
<span className="govuk-body-s">
{" "}
<span className="govuk-!-font-weight-bold">
{t(
"myportal:searchcases-card-search-example-label"
)}
:
</span>{" "}
CAS-00009-W8N6W4
</span>
</div>
{validationError && (
<span
id="basicSearch-error"
className="govuk-error-message"
>
<span className="govuk-visually-hidden">
Error:
</span>{" "}
Case reference is required
</span>
)}
<input
<>
<div className="card card-3" id="casesearch-card">
<form onSubmit={handleSubmit(onHandleSubmit)}>
<div className="card-body">
<h3 className="heading-small card-heading">
{t("myportal:searchcases-card-title")}
</h3>
<Field
validate={[
required(
t(
"myportal:searchcases-validation-required"
)
),
minLength(
t(
"myportal:searchcases-validation-minlength"
)
),
]}
className="govuk-input"
id="event-name"
name="event-name"
component={RenderTextfield}
id="basicSearch"
name="basicSearch"
type="text"
aria-describedby="event-name-hint"
onChange={handleParam(setQuery)}
aria-describedby="basicSearch-hint"
hint1={t("myportal:searchcases-card-search-hint")}
hint2={t(
"myportal:searchcases-card-search-example-label"
)}
/>
</div>
<div className="govuk-form-group">
<button
type="submit"
name="search"
className="govuk-button"
<div className="govuk-form-group">
<button type="submit" className="govuk-button">
{t("myportal:searchcases-card-button")}
</button>
</div>
<Link
href={
router.locale == "cy"
? "/fymhorth/chwiliouwch"
: "/myportal/advancedsearch"
}
>
{t("myportal:searchcases-card-button")}
</button>
<a>
{t("myportal:searchcases-card-advanced-link")}
</a>
</Link>
</div>
<Link href="/advancedsearch">
<a>{t("myportal:searchcases-card-advanced-link")}</a>
</Link>
</div>
</form>
</div>
</form>
<LoadingOverlay
active={showSpinnerState}
spinner
text={t("common:spinner-searching")}
/>
</div>
</>
);
}
};
const mapStateToProps = (state) => {
return {
currentView: state.currentView,
search: state.search,
searchResultsObj: state.searchResultsObj,
formData: state.formData,
appealType: state.appealType,
//form: state.form,
myCases: state.myCases,
watchedCases: state.watchedCases,
myRepresentations: state.myRepresentations,
awaitingSubmission: state.awaitingSubmission,
};
};
const mapDispatchToProps = (dispatch) => {
return {};
};
export default connect(
mapStateToProps,
mapDispatchToProps
)(
reduxForm({
form: "basicSearchForm",
destroyOnUnmount: false,
})(CaseSearch)
);
+149 -52
View File
@@ -1,4 +1,5 @@
import Link from "next/link";
import _ from "lodash";
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import { setCurrentReference } from "../../store/currentView/action";
@@ -6,67 +7,163 @@ import { connect } from "react-redux";
const TopThree = (props) => {
let { t } = useTranslation();
const { showTopThree, setCurrentReference, topThreeType } = props;
const { showTopThree, showDetails, setCurrentReference, topThreeType } =
props;
const router = useRouter();
const { locale } = router;
let topthreeRow = [];
for (var i = 0; i < 3; i++) {
(function (i) {
topthreeRow.push(
<div className="cardModuleItem" key={i}>
<div className="cardModuleDetails">
<div className="cardModuleReference">
<b>Case reference:</b>{" "}
<Link
href={
topThreeType == "awaitingSubmission"
? "/representation"
: "/case"
}
// for (var i = 0; i < 3; i++) {
// (function (i) {
// topthreeRow.push(
// <div className="cardModuleItem" key={i}>
// <div className="cardModuleDetails">
// <div className="cardModuleReference">
// <b>Case reference:</b>{" "}
// <Link
// href={
// topThreeType == "awaitingSubmission"
// ? "/representation"
// : "/case"
// }
// >
// <a
// data-id={i}
// onClick={() => {
// setCurrentReference({
// "currentReference":
// showTopThree.value[i]
// .ticketnumber,
// "currentType": topThreeType,
// });
// }}
// >
// {showTopThree.value[i].ticketnumber}
// </a>
// </Link>
// </div>
// {topThreeType != "awaitingSubmission" ? (
// <div className="carModuleAddress">
// <b>Addressaa: </b>
// {showDetails[i].value[0]
// .pinswg_siteaddressline1 == null
// ? "not entered"
// : showDetails[i].value[0]
// .pinswg_siteaddressline1}
// </div>
// ) : (
// ""
// )}
// {topThreeType == "awaitingSubmission" ? (
// <div className="carModuleAddress">
// Make Representation on Case Incomplete, not
// submitted
// </div>
// ) : (
// ""
// )}
// </div>
// <div className="cardModuleRemoveCase"> &mdash;</div>
// </div>
// );
// })(i);
// }
let showTopThreeArr = showTopThree.value;
Object.keys(showTopThreeArr).map((key, index) => {
topthreeRow.push(
<div className="cardModuleItem" key={index}>
<div className="cardModuleDetails">
<div className="cardModuleReference">
<b>{t("myportal:case-reference")}:</b>{" "}
<Link
href={
topThreeType == "awaitingSubmission"
? router.locale == "cy"
? "/fymhorth/cynrychiolaeth"
: "/myportal/representation"
: router.locale == "cy"
? "/fymhorth/achos"
: "/myportal/case"
}
>
<a
data-id={index}
onClick={() => {
setCurrentReference({
"currentReference":
showTopThreeArr[key].ticketnumber,
"currentType": topThreeType,
});
}}
>
<a
data-id={i}
onClick={() => {
setCurrentReference({
"currentReference":
showTopThree.value[i]
.ticketnumber,
"currentType": topThreeType,
});
}}
>
{showTopThree.value[i].ticketnumber}
</a>
</Link>
</div>
{topThreeType != "awaitingSubmission" ? (
<div className="carModuleAddress">
<b>Address: </b>
{showTopThree.value[i].address1}
</div>
) : (
""
)}
{topThreeType == "awaitingSubmission" ? (
<div className="carModuleAddress">
Make Representation on Case Incomplete, not
submitted
</div>
) : (
""
)}
{showTopThreeArr[key].ticketnumber}
</a>
</Link>
</div>
<div className="cardModuleRemoveCase"> &mdash;</div>
</div>
);
})(i);
}
{topThreeType != "awaitingSubmission" ? (
<div className="carModuleAddress">
<b>{t("myportal:case-address")}:</b>{" "}
{_.isEmpty(showDetails)
? t("myportal:case-address-not-entered")
: _.isEmpty(showDetails[index])
? t("myportal:case-address-not-entered")
: _.isEmpty(showDetails[index].value[0])
? t("myportal:case-address-not-entered")
: _.isEmpty(
showDetails[index].value[0]
.pinswg_siteaddressline1
)
? t("myportal:case-address-not-entered")
: showDetails[index].value[0]
.pinswg_siteaddressline1}
</div>
) : (
""
)}
return <>{topthreeRow}</>;
{topThreeType == "awaitingSubmission" ? (
<div className="carModuleAddress">
Make Representation on Case Incomplete, not
submitted
</div>
) : (
""
)}
</div>
<div className="cardModuleRemoveCase"> &mdash;</div>
</div>
);
});
let noRecordsLabel = "";
switch (topThreeType) {
case "watchedCases":
noRecordsLabel = "You are not watching any cases";
break;
case "myRepresentations":
noRecordsLabel = "You have no representations";
break;
case "myCases":
noRecordsLabel = "You have no cases";
break;
case "awaitingSubmission":
noRecordsLabel = "You have no awaiting submissions";
break;
}
return (
<>
{topthreeRow.length == 0 ? (
<div>{noRecordsLabel}</div>
) : (
topthreeRow
)}
</>
);
};
const mapDispatchToProps = (dispatch) => {
+20 -16
View File
@@ -20,8 +20,8 @@ const ViewAllResults = (props) => {
Object.keys(resultsArr).map((key, index) => {
resultsRowArr.push(
<div className="govuk-summary-list__row" key={key}>
<dd className="govuk-summary-list__value govuk-!-font-size-14 govuk-!-padding-left-2">
<Link href="/case">
<dd className="govuk-summary-list__value govuk-!-font-size-16 govuk-!-padding-left-2">
<Link href={router.locale == "cy" ? "/achos" : "/case"}>
<a
onClick={() => {
setCurrentReference({
@@ -34,11 +34,11 @@ const ViewAllResults = (props) => {
<span className="results-visually-hidden">
Case Reference:
</span>
{resultsArr[index].reference}
{resultsArr[index].ticketnumber}
</a>
</Link>
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
Site Address:{" "}
</span>
@@ -47,17 +47,21 @@ const ViewAllResults = (props) => {
<br />
{resultsArr[index].postcode}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
Appellant/Applicant:
</span>
{resultsArr[index].appellantApplicant}
Mr smith
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">Authority:</span>
{resultsArr[index].lpaname}
{
resultsArr[index][
"_customerid_value@OData.Community.Display.V1.FormattedValue"
]
}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">Case Type:</span>
{
resultsArr[index][
@@ -65,7 +69,7 @@ const ViewAllResults = (props) => {
]
}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">Status:</span>
{
resultsArr[index][
@@ -87,22 +91,22 @@ const ViewAllResults = (props) => {
<dl className="govuk-summary-list govuk-!-margin-bottom-9 results">
<div className="govuk-summary-list__row results-headings">
<dd className="govuk-summary-list__key govuk-!-font-size-14 results_wider govuk-!-padding-left-2">
<dd className="govuk-summary-list__key govuk-!-font-size-16 results_wider govuk-!-padding-left-2">
{t("search:searchresults-case-reference-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t("search:searchresults-site-address-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t("search:searchresults-applicant-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t("search:searchresults-authority-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t("search:searchresults-case-type-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t("search:searchresults-status-label")}
</dd>
</div>
+16 -14
View File
@@ -25,20 +25,22 @@ const WatchedCases = (props) => {
/>
</div>
<div className="cardVieAll">
<Link href="/myportal/viewall">
<a
onClick={() => {
setCurrentView({
"viewName": "Watched Cases",
"viewKey": "watchedCases",
});
}}
>
{t("myportal:viewall-link")}
</a>
</Link>
</div>
{props.watchedCases.watchedCases["@odata.count"] != 0 && (
<div className="cardVieAll">
<Link href="/myportal/viewall" shallow>
<a
onClick={() => {
setCurrentView({
"viewName": "Watched Cases",
"viewKey": "watchedCases",
});
}}
>
{t("myportal:viewall-link")}
</a>
</Link>
</div>
)}
</div>
</div>
);
+1 -1
View File
@@ -19,7 +19,7 @@ export default function YourAccount() {
<div>
<Link href="/account/personaldetails">
<a className="govuk-button-secondary">
Edit your account details
View your account details
</a>
</Link>
</div>
+73 -37
View File
@@ -2,8 +2,11 @@ import Link from "next/link";
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import xpath from "xpath";
import jsonpath from "jsonpath";
import BuildCheckField from "./buildCheckfield";
import { useSelector, shallowEqual, connect } from "react-redux";
import fieldLookup from "../../data/crmfieldlookuptranslations.json";
import {
setCaseReference,
setCurrentSection,
@@ -22,6 +25,7 @@ let BuildCheckRow = (props) => {
sectionCount,
onSubmit,
updateCurrentSection,
mandatoryFieldsData,
} = props;
const parser = new DOMParser();
@@ -49,6 +53,23 @@ let BuildCheckRow = (props) => {
return dateString;
}
const FieldsTranslations = (label) => {
const router = useRouter();
const { locale } = router;
const { appealtypes } = router.query;
let formObj = jsonpath.query(fieldLookup, "$['" + appealtypes + "']");
let labelTrans =
router.locale == "cy"
? jsonpath.query(
formObj,
"$..[?(@.value=='" + label + "')].value_cy"
)
: label;
return labelTrans;
};
return (
<>
{Object.keys(rowXML).map((key, index) => {
@@ -56,44 +77,59 @@ let BuildCheckRow = (props) => {
rowXML[key].outerHTML,
"text/xml"
);
var rows = xpath.select("//label/@description", doc);
var fieldtype = xpath.select("//@classid", doc);
var datafieldname = xpath.select("//@datafieldname", doc);
if (_.isEmpty(rowXML[key].innerHTML)) {
("");
} else {
var rows = xpath.select("//label/@description", doc);
var fieldtype = xpath.select("//@classid", doc);
var datafieldname = xpath.select("//@datafieldname", doc);
const isRequiredField = jsonpath.query(
mandatoryFieldsData,
"$..value[?(@.LogicalName=='" +
datafieldname[0].value +
"')]"
);
return (
<div className="govuk-summary-list__row" key={key}>
<dt className="govuk-summary-list__key">
{rows[0].value}
</dt>
<dd className="govuk-summary-list__value">
{fieldtype[0].value ==
"{5B773807-9FB2-42db-97C3-7A91EFF8ADFF}"
? formatDate(
props.props.form["appealForm"].values[
datafieldname[0].value
]
)
: props.props.form["appealForm"].values[
datafieldname[0].value
]}
</dd>
<dd className="govuk-summary-list__actions">
<a
className="govuk-link"
href="#"
onClick={() => {
updateCurrentSection(whichSection);
}}
>
Change
<span className="govuk-visually-hidden">
{" "}
name
</span>
</a>
</dd>
</div>
);
if (isRequiredField[0].RequiredLevel.Value != "None") {
return (
<div className="govuk-summary-list__row" key={key}>
<dt className="govuk-summary-list__key">
{FieldsTranslations(rows[0].value)}
</dt>
<dd className="govuk-summary-list__value">
{fieldtype[0].value ==
"{5B773807-9FB2-42db-97C3-7A91EFF8ADFF}"
? formatDate(
props.props.form["appealForm"]
.values[
datafieldname[0].value
]
)
: props.props.form["appealForm"].values[
datafieldname[0].value
]}
</dd>
<dd className="govuk-summary-list__actions">
<a
className="govuk-link"
href="#"
onClick={() => {
updateCurrentSection(whichSection);
}}
>
{t("newappeal:change-link-label")}
<span className="govuk-visually-hidden">
{" "}
{FieldsTranslations(rows[0].value)}
</span>
</a>
</dd>
</div>
);
} else {
return null;
}
}
})}
</>
);
+12 -15
View File
@@ -28,6 +28,7 @@ let BuildCheckSection = (props) => {
handleSubmit,
formTitle,
setCurrentSection,
mandatoryFieldsData,
} = props;
const parser = new DOMParser();
@@ -56,32 +57,29 @@ let BuildCheckSection = (props) => {
return (
<div className="govuk-grid-row">
<div className="govuk-grid-column-two-thirds">
<div className="govuk-grid-column-full">
<div>
<h1 className="govuk-heading-m">
Are these answers correct?
</h1>
{Object.keys(titles).map((key) => (
<>
<h2 className="govuk-heading-m">
<dl className="govuk-summary-list ">
{Object.keys(titles).map((key) => (
<>
{/* <h2 className="govuk-heading-m">
{titles[key].value}
</h2>
</h2> */}
<dl
className="govuk-summary-list govuk-!-margin-bottom-9"
key={key}
>
<BuildCheckRow
formXML={formXML}
whichSection={parseInt(key) + 1}
sectionCount={key}
props={props}
key={key}
mandatoryFieldsData={mandatoryFieldsData}
/>
</dl>
</>
))}
</>
))}
</dl>
<dl className="govuk-summary-list govuk-!-margin-bottom-9 at-summary-list"></dl>
</div>
<div className="govuk-button-group">
@@ -90,11 +88,10 @@ let BuildCheckSection = (props) => {
data-module="govuk-button"
onClick={() => setCurrentSection(9999)}
>
Submit appeal
{t("newappeal:submit-appeal-button")}
</a>
</div>
</div>
<div className="govuk-grid-column-one-third"></div>
</div>
);
};
+22 -4
View File
@@ -2,6 +2,7 @@ import Link from "next/link";
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import xpath from "xpath";
import {
Textfield,
DateField,
@@ -20,7 +21,7 @@ export default function BuildField(props) {
const router = useRouter();
const { locale } = router;
const { fieldType, label, datafieldname } = props;
const { fieldType, label, datafieldname, mandatoryFieldData } = props;
const parser = new DOMParser();
@@ -31,7 +32,15 @@ export default function BuildField(props) {
<ReadOnlyfield
name={props.datafieldname}
label={props.label}
value={props.props.props.appealType.caseReference}
value={
props.props.props.appealType.caseReference
.ticketnumber
}
props={props}
ticketnumber={
props.props.props.appealType.caseReference
.ticketnumber
}
/>
);
break;
@@ -41,6 +50,7 @@ export default function BuildField(props) {
name={props.datafieldname}
label={props.label}
datafieldname={props.datafieldname}
picklistData={props.picklistData}
/>
);
break;
@@ -52,9 +62,17 @@ export default function BuildField(props) {
/>
);
break;
case "{ 4273EDBD-AC1D-40d3-9FB2-095C621B552D}":
case "{4273EDBD-AC1D-40d3-9FB2-095C621B552D}":
return (
<Textfield name={props.datafieldname} label={props.label} />
<Textfield
name={props.datafieldname}
label={props.label}
props={props}
ticketnumber={
props.props.props.appealType.caseReference
.ticketnumber
}
/>
);
break;
case "{5B773807-9FB2-42db-97C3-7A91EFF8ADFF}":
+41 -13
View File
@@ -1,8 +1,10 @@
import Link from "next/link";
import _ from "lodash";
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import xpath from "xpath";
import BuildField from "./buildfield";
import jsonpath from "jsonpath";
export default function BuildRow(props) {
let { t } = useTranslation();
@@ -10,7 +12,13 @@ export default function BuildRow(props) {
const router = useRouter();
const { locale } = router;
const { rowXML, whichSection, sectionCount, onSubmit } = props;
const {
rowXML,
whichSection,
sectionCount,
onSubmit,
mandatoryFieldsData,
} = props;
const parser = new DOMParser();
@@ -21,18 +29,38 @@ export default function BuildRow(props) {
rowXML[key].outerHTML,
"text/xml"
);
var rows = xpath.select("//label/@description", doc);
var fieldtype = xpath.select("//@classid", doc);
var datafieldname = xpath.select("//@datafieldname", doc);
return (
<BuildField
fieldType={fieldtype[0].value}
label={rows[0].value}
datafieldname={datafieldname[0].value}
key={key}
props={props}
/>
);
if (_.isEmpty(rowXML[key].innerHTML)) {
("");
} else {
var rows = xpath.select("//label/@description", doc);
var fieldtype = xpath.select("//@classid", doc);
var datafieldname = xpath.select("//@datafieldname", doc);
const isRequiredField = jsonpath.query(
mandatoryFieldsData,
"$..value[?(@.LogicalName=='" +
datafieldname[0].value +
"')]"
);
if (isRequiredField[0].RequiredLevel.Value != "None") {
return (
<BuildField
fieldType={fieldtype[0].value}
label={rows[0].value}
datafieldname={datafieldname[0].value}
key={key}
props={props}
picklistData={
props.props.props.formData.pickListData
}
mandatoryFieldsData={mandatoryFieldsData}
/>
);
} else {
return null;
}
}
})}
</div>
);
+25 -22
View File
@@ -32,19 +32,21 @@ let BuildSection = (props) => {
setCurrentSection,
refno,
gotoSection,
mandatoryFieldsData,
} = props;
const currentSection = props.appealType.currentSection;
const parser = new DOMParser();
var doc = parser.parseFromString(props.formXML, "text/xml");
var titles = xpath.select(
"//form/tabs/tab[" + currentSection + " ]/labels/label/@description",
doc
);
// var titles = xpath.select(
// "//form/tabs/tab[" + currentSection + " ]/labels/label/@description",
// doc
// );
var rowXML = xpath.select(
"/form/tabs/tab[" +
currentSection +
"]/columns//sections/section/rows/row",
// "/form/tabs/tab[" +
// currentSection +
// "]/columns//sections/section/rows/row",
"/form/tabs/tab/columns//sections/section/rows/row",
doc
);
@@ -129,7 +131,8 @@ let BuildSection = (props) => {
<div className="govuk-grid-row">
<div className="govuk-grid-column-two-thirds">
<h1 className="govuk-heading-m govuk-!-margin-top-5">
{titles[0].value}{" "}
{/* {titles[0].value}{" "} */}
Enter your appeal information
</h1>
<form onSubmit={handleSubmit(onHandleSubmit)}>
{hasErrors == true ? (
@@ -141,17 +144,17 @@ let BuildSection = (props) => {
) : (
""
)}
<BuildRow
rowXML={rowXML}
whichSection={props.whichSection}
sectionCount={props.sectionCount}
onSubmit={onSubmit}
mandatoryFieldsData={mandatoryFieldsData}
props={props}
/>
{}
<div className="govuk-button-group">
{props.sectionCount != currentSection ? (
{/* {props.sectionCount != currentSection ? (
<button
type="submit"
className="govuk-button"
@@ -163,15 +166,15 @@ let BuildSection = (props) => {
) : (
""
)}
{props.sectionCount == currentSection ? (
<button
type="submit"
className="govuk-button"
data-module="govuk-button"
>
Submit
</button>
) : (
{props.sectionCount == currentSection ? ( */}
<button
type="submit"
className="govuk-button"
data-module="govuk-button"
>
Submit
</button>
{/* ) : (
""
)}
{currentSection > 1 ? (
@@ -186,11 +189,11 @@ let BuildSection = (props) => {
</a>
) : (
""
)}
)} */}
</div>
</form>
</div>
<div className="govuk-grid-column-one-third">
{/* <div className="govuk-grid-column-one-third">
<nav
role="navigation"
aria-labelledby="progress-list"
@@ -239,7 +242,7 @@ let BuildSection = (props) => {
</ul>
</ol>
</nav>
</div>
</div> */}
</div>
);
};
+85 -4
View File
@@ -7,11 +7,87 @@ import BuildRow from "./buildrow";
import { reduxForm, formValueSelector } from "redux-form";
import { useDispatch, useSelector, shallowEqual, connect } from "react-redux";
import { setCurrentSection } from "../../store/appealType/action";
import { updateCase } from "../../actions";
import jsonpath from "jsonpath";
import data from "../../data/collections.json";
let CompleteAppeal = (props) => {
// useEffect(() => {
// window.scrollTo(0, 0);
// });
// un comment to update incident with an appealtype id
useEffect(() => {
let incidentId = props.appealType.caseReference.incidentid;
let updateBody = props.props.form.appealForm.values;
let updateBindAppealTypeToIncident =
"pinswg_" +
props.appealType.caseReference[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
].replace(/(\band|[\s\-\+\(\)\,\&])/g, "") +
"Ids";
Object.assign(updateBody, {
"pinswg_Appellant@odata.bind":
"/contacts(" + props.props.accountDetails.loggedinUserId + ")",
"pinswg_AssociatedLPA@odata.bind":
"/accounts(" + props.appealType.appealLPA + ")",
"pinswg_name": props.appealType.caseReference.ticketnumber,
[updateBindAppealTypeToIncident + "@odata.bind"]:
"/incidents(" + incidentId + ")",
});
updateBody = JSON.stringify(updateBody);
updateBody = updateBody.replace(/:"Yes"/gm, `:true`);
updateBody = updateBody.replace(/:"No"/gm, `:false`);
updateBody = JSON.parse(updateBody);
let updateFormCollection = getFormCollection(
"pinswg_" +
props.appealType.caseReference[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
]
.replace(/(\band|[\s\-\+\(\)\,\&])/g, "")
.toLowerCase()
);
let primaryAttribute = getPrimaryAttr(
"pinswg_" +
props.appealType.caseReference[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
]
.replace(/(\band|[\s\-\+\(\)\,\&])/g, "")
.toLowerCase()
);
updateCase(
incidentId,
updateBody,
updateFormCollection,
primaryAttribute,
props.appealType.caseReference.ticketnumber
);
}, [
props.appealType.caseReference,
props.props.form.appealForm.values,
props.appealType.appealLPA,
props.props.accountDetails.loggedinUserId,
]);
const getFormCollection = (formtype) => {
const collectionName = jsonpath.query(
data,
"$..[?(@.LogicalName=='" + formtype + "')].LogicalCollectionName"
);
//console.log(collectionName[0]);
return collectionName[0];
};
const getPrimaryAttr = (formtype) => {
const attrName = jsonpath.query(
data,
"$..[?(@.LogicalName=='" + formtype + "')].PrimaryIdAttribute"
);
return attrName[0];
};
let { t } = useTranslation();
@@ -52,6 +128,9 @@ let CompleteAppeal = (props) => {
setCurrentSection(currentSection + 1);
};
// console.log(JSON.stringify(props.props.form.appealForm.values, null, 2));
//alert(JSON.stringify(props.props.form.appealForm.values, null, 2));
return (
<div className="govuk-grid-row">
<div className="govuk-grid-column-two-thirds">
@@ -60,7 +139,9 @@ let CompleteAppeal = (props) => {
<div className="govuk-panel__body">
Your reference number
<br />
<strong>{props.appealType.caseReference}</strong>
<strong>
{props.appealType.caseReference.ticketnumber}
</strong>
</div>
</div>
+83 -46
View File
@@ -7,6 +7,9 @@ import BuildRow from "./buildrow";
import { reduxForm, formValueSelector, Field } from "redux-form";
import { useDispatch, useSelector, shallowEqual, connect } from "react-redux";
import jsonpath from "jsonpath";
import transLookup from "../../data/lookuptranslations.json";
import data from "../../data/collections.json";
import {
setAppealType,
setAppealTypeTitle,
@@ -33,11 +36,9 @@ let CreateCase = (props) => {
? [{}]
: _.isEmpty(props.appealType.appealTypeOptions)
? [{}]
: _.isEmpty(props.appealType.appealTypeOptions.GlobalOptionSet)
: _.isEmpty(props.appealType.appealTypeOptions.value)
? [{}]
: _.isEmpty(props.appealType.appealTypeOptions.GlobalOptionSet.Options)
? [{}]
: props.appealType.appealTypeOptions.GlobalOptionSet.Options;
: props.appealType.appealTypeOptions.value;
let lpaOptionsObj = _.isEmpty(props)
? [{}]
@@ -45,7 +46,9 @@ let CreateCase = (props) => {
? [{}]
: _.isEmpty(props.LPAData.LPAData)
? [{}]
: jsonpath.query(props.LPAData.LPAData, "$..name");
: _.isEmpty(props.LPAData.LPAData)
? [{}]
: props.LPAData.LPAData.value;
const RenderLPAList = ({
name,
@@ -88,7 +91,7 @@ let CreateCase = (props) => {
//onChange={(e) => props.onChangeSelectLPA(e)}
>
<option value="" disabled defaultValue>
Select...
{t("common:drop-down-select")}
</option>
{_.isEmpty(optionsObj)
? ""
@@ -96,9 +99,17 @@ let CreateCase = (props) => {
return (
<option
key={key}
value={optionsObj[key]}
value={optionsObj[key].accountid}
>
{optionsObj[key]}
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
optionsObj[key]
.name +
'")].value_cy'
)
: optionsObj[key].name}
</option>
);
})}
@@ -149,7 +160,7 @@ let CreateCase = (props) => {
//onChange={(e) => props.onChangeSelectAppealType(e)}
>
<option value="" disabled defaultValue>
Select...
{t("common:drop-down-select")}
</option>
{_.isEmpty(optionsObj)
? ""
@@ -158,51 +169,45 @@ let CreateCase = (props) => {
<option
key={key}
value={
_.isEmpty(
optionsObj[key].Label
)
_.isEmpty(optionsObj[key])
? ""
: _.isEmpty(
optionsObj[key]
.Label
.LocalizedLabels
)
? ""
: _.isEmpty(
optionsObj[key]
.Label
.LocalizedLabels[0]
.Label
.value
)
? ""
: optionsObj[
key
].Label.LocalizedLabels[0].Label.replace(
/[\s\-\+\(\)\,]/g,
""
).toLowerCase()
: optionsObj[key]
.attributevalue +
"," +
optionsObj[key].value
.replace(
/(\band|[\s\-\+\(\)\,\&])/g,
""
)
.toLowerCase()
}
>
{_.isEmpty(optionsObj[key])
? ""
: _.isEmpty(
optionsObj[key].Label
)
: _.isEmpty(optionsObj[key])
? ""
: _.isEmpty(
optionsObj[key].Label
.LocalizedLabels
optionsObj[key].value
)
? ""
: _.isEmpty(
optionsObj[key].Label
.LocalizedLabels[0]
.Label
: router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
optionsObj[key]
.value +
'")].value_cy'
)
? ""
: optionsObj[key].Label
.LocalizedLabels[0]
.Label}
: optionsObj[key].value}
</option>
);
})}
@@ -215,11 +220,43 @@ let CreateCase = (props) => {
const required = (value) => (value ? undefined : "Required");
const getFormCollection = (formtype) => {
formtype =
"pinswg_" +
(formtype.length > 39 ? formtype.slice(0, 39) : formtype);
const collectionName = jsonpath.query(
data,
"$..[?(@.LogicalName=='" + formtype + "')].UrlName"
);
//console.log(collectionName[0]);
return collectionName[0];
};
const onHandleSubmit = (values) => {
event.preventDefault();
router.replace("/newappeal/" + values.appealTypes, null, {
shallow: true,
});
var appTypeCollection = values.appealTypes.split(",")[1];
appTypeCollection = getFormCollection(
appTypeCollection.length > 39
? appTypeCollection.slice(0, 39)
: appTypeCollection
);
router.replace(
(router.locale = "cy" ? "/apelnewydd" : "/newappeal") +
"/" +
appTypeCollection +
"?lpa=" +
values.lpaTypes +
"&apt=" +
values.appealTypes.split(",")[0],
null,
{
shallow: true,
}
);
};
return (
@@ -229,8 +266,8 @@ let CreateCase = (props) => {
component={RenderLPAList}
optionsObj={lpaOptionsObj}
validate={[required]}
label="Select your local planning authority"
errorMsg="Local authority is required"
label={t("newappeal:select-lpa-label")}
errorMsg={t("newappeal:select-lpa-label-error-msg")}
/>
<Field
@@ -238,8 +275,8 @@ let CreateCase = (props) => {
component={RenderAppealTypeList}
optionsObj={appealOptionsObj}
validate={[required]}
label="Select an appeal type"
errorMsg="Appeal type is required"
label={t("newappeal:select-appeal-type-label")}
errorMsg={t("newappeal:select-appeal-type-label-error-msg")}
/>
<button
@@ -247,7 +284,7 @@ let CreateCase = (props) => {
className="govuk-button"
data-module="govuk-button"
>
Continue
{t("common:continue-button")}
</button>
</form>
);
@@ -273,8 +310,8 @@ const mapDispatchToProps = (dispatch) => {
);
dispatch(setAppealTypeID(event.target.value));
},
onChangeSelectLPA: (event) => {
dispatch(setAppealLPA(event.target.value));
onChangeSelectLPA: (lpaId) => {
dispatch(setAppealLPA(lpaId));
},
};
};
File diff suppressed because it is too large Load Diff
+326
View File
@@ -0,0 +1,326 @@
import Link from "next/link";
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import { setCurrentReference } from "../../store/currentView/action";
import { connect } from "react-redux";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../data/lookuptranslations.json";
import PaginationControl from "./pagination";
import { useState } from "react";
import LoadingOverlay from "react-loading-overlay";
import {
getBasicDNSSearchPaged,
getBasicSearchDetailsPaged,
} from "../../actions";
import data from "../../data/collections.json";
import {
setSearchResults,
setSearchDetails,
} from "../../store/searchOutput/action";
import { getSearchDetailsPaged } from "../utils";
const DNSSearchResults = (props) => {
const {
searchString,
searchResultsObj,
searchDetailsObj,
setCurrentReference,
setSearchResults,
setSearchDetails,
advancedSearch,
} = props;
let { t } = useTranslation();
const router = useRouter();
const { locale } = router;
var resultsArr = searchResultsObj.value || [];
const [showSpinnerState, setShowSpinnerState] = useState(false);
let spinnerState = () => {
showSpinnerState == true
? setShowSpinnerState(false)
: setShowSpinnerState(true);
};
const ResultsView = (resultsArr) => {
return (
<div className="govuk-grid-row govuk-!-margin-top-9">
<div className="govuk-grid-column-full">
<dl className="govuk-summary-list govuk-!-margin-bottom-9 results">
<div className="govuk-summary-list__row results-headings">
<dd className="govuk-summary-list__key govuk-!-font-size-16 results_wider ">
{t("search:searchresults-case-reference-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t("search:searchresults-site-address-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t("search:searchresults-applicant-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t("search:searchresults-authority-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t("search:searchresults-status-label")}
</dd>
</div>
{resultsArr.map((item, key) => {
let detailsObj = jsonpath.query(
searchDetailsObj,
"$..value[?(@.pinswg_name=='" +
item.title +
"')]"
);
detailsObj = detailsObj[0];
return (
<div
className="govuk-summary-list__row"
key={key}
>
<dd className="govuk-summary-list__value govuk-!-font-size-16 ">
<Link
href={
router.locale == "cy"
? "/manyliondns"
: "/dnsdetails"
}
>
<a
onClick={() => {
setCurrentReference({
"currentReference":
item.title,
"currentType":
"searchResultsObj",
"incidentid":
item.incidentid,
"appealType":
item.pinswg_appealcasetype,
});
}}
>
<span className="results-visually-hidden">
{t(
"search:searchresults-case-reference-label"
)}
:
</span>
{item.title}
</a>
</Link>
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"search:searchresults-site-address-label"
)}
:
</span>
{_.has(
detailsObj,
"pinswg_siteaddressline1"
)
? detailsObj.pinswg_siteaddressline1
: ""}
<br />
{_.has(
detailsObj,
"pinswg_siteaddressline1"
)
? detailsObj.pinswg_siteaddressline2
: ""}
<br />
{_.has(
detailsObj,
"pinswg_siteaddressline1"
)
? detailsObj.pinswg_siteaddresstown
: ""}
<br />
{_.has(
detailsObj,
"pinswg_siteaddressline1"
)
? detailsObj.pinswg_siteaddresscounty
: ""}
<br />
{_.has(
detailsObj,
"pinswg_siteaddressline1"
)
? detailsObj.pinswg_siteaddresspostcode
: ""}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"search:searchresults-applicant-label"
)}
:
</span>
{_.has(detailsObj, [
"_pinswg_appellant_value@OData.Community.Display.V1.FormattedValue",
])
? detailsObj[
"_pinswg_appellant_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"search:searchresults-authority-label"
)}
:
</span>
{_.has(detailsObj, [
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue",
])
? router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
detailsObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: detailsObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || "N/A"
: ""}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
{t(
"search:searchresults-status-label"
)}
:
</span>
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
item[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: item[
"statuscode@OData.Community.Display.V1.FormattedValue"
] || "N/A"}
</dd>
</div>
);
})}
</dl>
<PaginationControl
currentPage={currentPage}
searchResultsObj={searchResultsObj}
spinnerState={spinnerState}
getSearchPageResults={getSearchPageResults}
/>
</div>
</div>
);
};
const pagesCount = Math.ceil(searchResultsObj["@odata.count"] / 10);
let currentPage = 0;
currentPage = decodeURI(searchResultsObj["@odata.nextLink"]).split(
"skiptoken="
)[1];
currentPage =
typeof currentPage != "undefined"
? parseInt(
decodeURI(currentPage)
.split('pagenumber="')[1]
.slice(
0,
decodeURI(currentPage)
.split('pagenumber="')[1]
.indexOf('"')
) - 1
)
: pagesCount;
const getSearchPageResults = (pageNumber) => {
//console.log(advancedSearch, searchString, pageNumber);
getBasicDNSSearchPaged(pageNumber)
.then((data) => {
//console.log(data);
setSearchResults(data);
return data;
})
.then((data) => {
//console.log("getting details", data);
return getSearchDetailsPaged(data).then((data) => {
setSearchDetails(data);
setShowSpinnerState(false);
});
});
};
return (
<>
<div className="govuk-grid-row">
<div className="govuk-grid-column-two-thirds">
<h1 className="govuk-heading-l">
{t("dnsApplications:page-title")}
</h1>
<p className="govuk-body">
{t("dnsApplications:page-intro-paragraph-1")}
</p>
<ul className="govuk-list govuk-list--bullet">
<li> {t("dnsApplications:page-intro-list-item-1")}</li>
<li> {t("dnsApplications:page-intro-list-item-2")}</li>
<li> {t("dnsApplications:page-intro-list-item-3")}</li>
</ul>
</div>
</div>
{resultsArr.length > 0 ? (
ResultsView(resultsArr)
) : (
<div className="govuk-grid-row">
<div className="govuk-grid-column-two-thirds">
<h3>{t("search:searchresults-no-records-label")}</h3>
</div>
</div>
)}
<LoadingOverlay
active={showSpinnerState}
spinner
text={t("common:spinner-searching")}
/>
</>
);
};
const mapDispatchToProps = (dispatch) => {
return {
setCurrentReference: (currentReference) => {
dispatch(setCurrentReference(currentReference));
},
setSearchResults: (searchResultsObj) => {
dispatch(setSearchResults(searchResultsObj));
},
setSearchDetails: (searchDetailsObj) => {
dispatch(setSearchDetails(searchDetailsObj));
},
};
};
export default connect(null, mapDispatchToProps)(DNSSearchResults);
+155
View File
@@ -0,0 +1,155 @@
import Link from "next/link";
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
const PaginationControl = (props) => {
const {
searchString,
searchResultsObj,
currentPage,
spinnerState,
getSearchPageResults,
} = props;
let { t } = useTranslation();
const router = useRouter();
const { locale } = router;
const pagesCount = Math.ceil(searchResultsObj["@odata.count"] / 10);
const getRange = (start, end) => {
//console.log(start, end);
return Array(end - start + 1)
.fill()
.map((v, i) => i + start);
};
const paginationNumbers = (currentPage, pageCount) => {
//console.log(currentPage);
let delta;
if (pageCount <= 10) {
// delta === 7: [1 2 3 4 5 6 7]
delta = 10;
} else {
// delta === 2: [1 ... 4 5 6 ... 10]
// delta === 4: [1 2 3 4 5 ... 10]
delta = currentPage > 4 && currentPage < pageCount - 3 ? 4 : 6;
}
const range = {
start: Math.round(currentPage - delta / 2),
end: Math.round(currentPage + delta / 2),
};
if (range.start - 1 === 1 || range.end + 1 === pageCount) {
range.start += 1;
range.end += 1;
}
let pages =
currentPage > delta
? getRange(
Math.min(range.start, pageCount - delta),
Math.min(range.end, pageCount)
)
: getRange(1, Math.min(pageCount, delta + 1));
const withDots = (value, pair) =>
pages.length + 1 !== pageCount ? pair : [value];
if (pages[0] !== 1) {
pages = withDots(1, [1, "..."]).concat(pages);
}
if (pages[pages.length - 1] < pageCount) {
pages = pages.concat(withDots(pageCount, ["...", pageCount]));
}
//console.log(pages);
return pages;
};
const paginationArray = paginationNumbers(currentPage, pagesCount);
return (
<>
{" "}
<div className="govuk-!-margin-bottom-7 ">
<div className="govuk-grid-row paginationWrapper">
<div className="govuk-grid-column-one-quarter paginationPrevious">
{currentPage != 1 ? (
<span
className="govuk-body govuk-link govuk-!-font-weight-bold govuk-link--no-underline activePaginationItem leftTextButton"
onClick={() => {
spinnerState(),
getSearchPageResults(currentPage - 1);
}}
>
{t("common:previous-link-button")}
</span>
) : (
<span className="govuk-body leftTextButton govuk-!-font-weight-bold">
{t("common:previous-link-button")}
</span>
)}
</div>
<div className="govuk-grid-column-one-half paginationContainer">
{paginationArray.map((e, i) =>
currentPage == i + 1 ? (
<span
key={i}
className=" govuk-body govuk-!-padding-2 govuk-!-font-weight-bold "
>
{e}
</span>
) : e == "..." ? (
<span
key={i}
className=" govuk-body govuk-!-padding-2 govuk-!-font-weight-bold govuk-link--no-underline activePaginationItem"
>
{e}
</span>
) : (
<span
className="govuk-body govuk-link govuk-!-padding-2 govuk-!-font-weight-bold govuk-link--no-underline activePaginationItem"
key={i}
onClick={() => {
spinnerState();
console.log(i + 1);
getSearchPageResults(i + 1);
}}
>
{e}
</span>
)
)}
</div>
<div className="govuk-grid-column-one-quarter paginationNext">
{currentPage != pagesCount ? (
<span
className="govuk-body govuk-link govuk-!-font-weight-bold govuk-link--no-underline activePaginationItem rightTextButton"
onClick={() => {
spinnerState(),
getSearchPageResults(currentPage + 1);
}}
>
{t("common:next-link-button")}
</span>
) : (
<span className="govuk-body rightTextButton govuk-!-font-weight-bold">
{" "}
{t("common:next-link-button")}
</span>
)}
</div>
</div>
<div className="govuk-body-s mobilePageCount">
{t("common:pages-label")} {currentPage}{" "}
{t("common:of-label")} {pagesCount}
</div>
</div>
</>
);
};
export default PaginationControl;
+322 -94
View File
@@ -1,96 +1,100 @@
import Link from "next/link";
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import { setCurrentReference } from "../../store/currentView/action";
import {
currentViewActionTypes,
setCurrentReference,
} from "../../store/currentView/action";
import { connect } from "react-redux";
import jsonpath from "jsonpath";
import _ from "lodash";
import transLookup from "../../data/lookuptranslations.json";
import {
getBasicSearchPaged,
getSearchDocumentDetails,
getBasicSearchDetailsPaged,
getAdvancedSearchPaged,
} from "../../actions";
import data from "../../data/collections.json";
import { useState } from "react";
import LoadingOverlay from "react-loading-overlay";
import {
setSearchResults,
setSearchDetails,
} from "../../store/searchOutput/action";
import { useEffect } from "react";
import PaginationControl from "./pagination";
import { getSearchDetailsPaged, getFormCollection } from "../utils";
const SearchResults = (props) => {
const { searchString, searchResultsObj, setCurrentReference } = props;
const {
searchString,
searchResultsObj,
searchDetailsObj,
setCurrentReference,
setSearchResults,
setSearchDetails,
advancedSearch,
} = props;
let { t } = useTranslation();
const router = useRouter();
const { locale } = router;
var resultsArr = searchResultsObj.value || [{}];
const resultRow = Object.keys(resultsArr).map((key, index) => {
<div className="govuk-summary-list__row">
<dd className="govuk-summary-list__value govuk-!-font-size-14 ">
<Link href="/case">
<a>
<span className="results-visually-hidden">
wwwwwwwCase Reference:
</span>
{resultsArr[key].title}
</a>
</Link>
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<span className="results-visually-hidden">Site Address: </span>
23 Martineau Lane
<br /> HASTINGS
<br />
TN35 5DS
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<span className="results-visually-hidden">
Appellant/Applicant:
</span>
Mr J Pocknell
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<span className="results-visually-hidden">Authority:</span>
Hastings Borough Council{" "}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<span className="results-visually-hidden">Case Type:</span>
Planning (W){" "}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<span className="results-visually-hidden">Status:</span>
In Progress
</dd>
</div>;
});
var resultsArr = searchResultsObj.value || [];
return (
<div className="govuk-grid-row">
<div className="govuk-grid-column-full">
<h1 className="govuk-heading-xl govuk-!-margin-bottom-7">
{t("search:searchresults-title-label")}
</h1>
<p className="govuk-body">
{t("search:searchresults-count-label", {
count: searchResultsObj["@odata.count"].toString(),
})}
. You searched for <em>&quot;{searchString}&quot;</em>
</p>
const [showSpinnerState, setShowSpinnerState] = useState(false);
let spinnerState = () => {
showSpinnerState == true
? setShowSpinnerState(false)
: setShowSpinnerState(true);
};
const ResultsView = (resultsArr) => {
return (
<>
<dl className="govuk-summary-list govuk-!-margin-bottom-9 results">
<div className="govuk-summary-list__row results-headings">
<dd className="govuk-summary-list__key govuk-!-font-size-14 results_wider ">
<dd className="govuk-summary-list__key govuk-!-font-size-16 results_wider ">
{t("search:searchresults-case-reference-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t("search:searchresults-site-address-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t("search:searchresults-applicant-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t("search:searchresults-authority-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t("search:searchresults-case-type-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t("search:searchresults-status-label")}
</dd>
</div>
{resultsArr.map((item, key) => {
let detailsObj = jsonpath.query(
searchDetailsObj,
"$..value[?(@.pinswg_name=='" + item.title + "')]"
);
detailsObj = detailsObj[0];
return (
<div className="govuk-summary-list__row" key={key}>
<dd className="govuk-summary-list__value govuk-!-font-size-14 ">
<Link href="/case">
<dd className="govuk-summary-list__value govuk-!-font-size-16 ">
<Link
href={
router.locale == "cy"
? "/achos"
: "/case"
}
>
<a
onClick={() => {
setCurrentReference({
@@ -98,67 +102,285 @@ const SearchResults = (props) => {
item.title,
"currentType":
"searchResultsObj",
"incidentid":
item.incidentid,
"appealType":
item.pinswg_appealcasetype,
});
}}
>
<span className="results-visually-hidden">
Case Reference:
{t(
"search:searchresults-case-reference-label"
)}
:
</span>
{item.title}
</a>
</Link>
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
Site Address:{" "}
{t(
"search:searchresults-site-address-label"
)}
:
</span>
23 Martineau Lane
<br /> HASTINGS
<br />
TN35 5DS
{_.has(
detailsObj,
"pinswg_siteaddressline1"
)
? detailsObj.pinswg_siteaddressline1
: ""}
{/* {detailsObj.pinswg_siteaddressline1 !=
null && <br />} */}
{_.has(
detailsObj,
"pinswg_siteaddressline1"
) &&
detailsObj.pinswg_siteaddressline1 !=
null && <br />}
{_.has(
detailsObj,
"pinswg_siteaddressline1"
)
? detailsObj.pinswg_siteaddressline2
: ""}
{_.has(
detailsObj,
"pinswg_siteaddressline2"
) &&
detailsObj.pinswg_siteaddressline2 !=
null && <br />}
{_.has(detailsObj, "pinswg_siteaddresstown")
? detailsObj.pinswg_siteaddresstown
: ""}
{_.has(
detailsObj,
"pinswg_siteaddresstown"
) &&
detailsObj.pinswg_siteaddresstown !=
null && <br />}
{_.has(
detailsObj,
"pinswg_siteaddresscounty"
)
? detailsObj.pinswg_siteaddresscounty
: ""}
{_.has(
detailsObj,
"pinswg_siteaddresscounty"
) &&
detailsObj.pinswg_siteaddresscounty !=
null && <br />}
{_.has(
detailsObj,
"pinswg_siteaddresspostcode"
)
? detailsObj.pinswg_siteaddresspostcode
: ""}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
Appellant/Applicant:
{t(
"search:searchresults-applicant-label"
)}
:
</span>
Mr J Pocknell
{_.has(detailsObj, [
"_pinswg_appellant_value@OData.Community.Display.V1.FormattedValue",
])
? detailsObj[
"_pinswg_appellant_value@OData.Community.Display.V1.FormattedValue"
]
: ""}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
Authority:
{t(
"search:searchresults-authority-label"
)}
:
</span>
{
item[
"_customerid_value@OData.Community.Display.V1.FormattedValue"
]
}
{_.has(item, [
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue",
])
? router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
item[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: item[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
] || "N/A"
: ""}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
Case Type:
{t(
"search:searchresults-case-type-label"
)}
:
</span>
{
item[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
]
}
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
item[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: item[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
] || "N/A"}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
Status:
{t("search:searchresults-status-label")}
:
</span>
{
item[
"statuscode@OData.Community.Display.V1.FormattedValue"
]
}
{router.locale == "cy"
? jsonpath.query(
transLookup,
'$..[?(@.value=="' +
item[
"statuscode@OData.Community.Display.V1.FormattedValue"
] +
'")].value_cy'
)
: item[
"statuscode@OData.Community.Display.V1.FormattedValue"
] || "N/A"}
</dd>
</div>
);
})}
</dl>
<PaginationControl
currentPage={currentPage}
searchResultsObj={searchResultsObj}
spinnerState={spinnerState}
getSearchPageResults={getSearchPageResults}
/>
</>
);
};
const pagesCount = Math.ceil(searchResultsObj["@odata.count"] / 10);
let currentPage = 0;
currentPage = decodeURI(searchResultsObj["@odata.nextLink"]).split(
"skiptoken="
)[1];
currentPage =
typeof currentPage != "undefined"
? parseInt(
decodeURI(currentPage)
.split('pagenumber="')[1]
.slice(
0,
decodeURI(currentPage)
.split('pagenumber="')[1]
.indexOf('"')
) - 1
)
: pagesCount;
const getSearchPageResults = (pageNumber) => {
//console.log(advancedSearch, searchString, pageNumber);
if (advancedSearch) {
var searchoObj = Object.assign(
...searchString.map(([key, val]) => ({ [key]: val }))
);
getAdvancedSearchPaged(searchoObj, pageNumber)
.then((data) => {
//console.log(data);
setSearchResults(data);
return data;
})
.then((data) => {
//console.log("getting details", data);
return getSearchDetailsPaged(data).then((data) => {
setSearchDetails(data);
setShowSpinnerState(false);
});
});
} else {
getBasicSearchPaged(searchString, pageNumber)
.then((data) => {
//console.log(data);
setSearchResults(data);
return data;
})
.then((data) => {
//console.log("getting details", data);
return getSearchDetailsPaged(data).then((data) => {
setSearchDetails(data);
setShowSpinnerState(false);
});
});
}
};
return (
<>
<div className="govuk-grid-row">
<div className="govuk-grid-column-full">
<h1 className="govuk-heading-xl govuk-!-margin-bottom-7">
{t("search:searchresults-title-label")}
</h1>
<p className="govuk-body">
{resultsArr.length > 200
? t("search:searchresults-max-count-label")
: t("search:searchresults-count-label", {
count: searchResultsObj["@odata.count"],
})}
.
{advancedSearch != true ? (
<>
<span>
{t("search:searchresults-case-count-label")}{" "}
{" "}
<em>&quot;{searchString}&quot;</em>
</span>
</>
) : (
""
)}
</p>
{resultsArr.length > 0 ? (
ResultsView(resultsArr)
) : (
<div className="govuk-grid-row">
<div className="govuk-grid-column-two-thirds">
<h3>
{t("search:searchresults-no-records-label")}
</h3>
</div>
</div>
)}
</div>
</div>
</div>
<LoadingOverlay
active={showSpinnerState}
spinner
text={t("common:spinner-searching")}
/>
</>
);
};
@@ -167,6 +389,12 @@ const mapDispatchToProps = (dispatch) => {
setCurrentReference: (currentReference) => {
dispatch(setCurrentReference(currentReference));
},
setSearchResults: (searchResultsObj) => {
dispatch(setSearchResults(searchResultsObj));
},
setSearchDetails: (searchDetailsObj) => {
dispatch(setSearchDetails(searchDetailsObj));
},
};
};
+26 -20
View File
@@ -12,8 +12,8 @@ export default function ViewAllResults(props) {
var resultsArr = props.searchResultsObj.searchResultsObj.value || [{}];
const resultRow = Object.keys(resultsArr).map((key, index) => {
<div className="govuk-summary-list__row">
<dd className="govuk-summary-list__value govuk-!-font-size-14 govuk-!-padding-left-2">
<Link href="/case">
<dd className="govuk-summary-list__value govuk-!-font-size-16 govuk-!-padding-left-2">
<Link href={router.locale == "cy" ? "/achos" : "/case"}>
<a>
<span className="results-visually-hidden">
Case Reference:
@@ -22,28 +22,28 @@ export default function ViewAllResults(props) {
</a>
</Link>
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">Site Address: </span>
23 Martineau Lane
<br /> HASTINGS
<br />
TN35 5DS
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
Appellant/Applicant:
</span>
Mr J Pocknell
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">Authority:</span>
Hastings Borough Council{" "}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">Case Type:</span>
Planning (W){" "}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">Status:</span>
In Progress
</dd>
@@ -59,22 +59,22 @@ export default function ViewAllResults(props) {
<dl className="govuk-summary-list govuk-!-margin-bottom-9 results">
<div className="govuk-summary-list__row results-headings">
<dd className="govuk-summary-list__key govuk-!-font-size-14 results_wider govuk-!-padding-left-2">
<dd className="govuk-summary-list__key govuk-!-font-size-16 results_wider govuk-!-padding-left-2">
{t("search:searchresults-case-reference-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t("search:searchresults-site-address-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t("search:searchresults-applicant-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t("search:searchresults-authority-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t("search:searchresults-case-type-label")}
</dd>
<dd className="govuk-summary-list__key govuk-!-font-size-14">
<dd className="govuk-summary-list__key govuk-!-font-size-16">
{t("search:searchresults-status-label")}
</dd>
</div>
@@ -82,8 +82,14 @@ export default function ViewAllResults(props) {
{resultsArr.map((item, key) => {
return (
<div className="govuk-summary-list__row" key={key}>
<dd className="govuk-summary-list__value govuk-!-font-size-14 govuk-!-padding-left-2">
<Link href="/case">
<dd className="govuk-summary-list__value govuk-!-font-size-16 govuk-!-padding-left-2">
<Link
href={
router.locale == "cy"
? "/achos"
: "/case"
}
>
<a>
<span className="results-visually-hidden">
Case Reference:
@@ -92,7 +98,7 @@ export default function ViewAllResults(props) {
</a>
</Link>
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
Site Address:{" "}
</span>
@@ -101,13 +107,13 @@ export default function ViewAllResults(props) {
<br />
TN35 5DS
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
Appellant/Applicant:
</span>
Mr J Pocknell
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
Authority:
</span>
@@ -117,7 +123,7 @@ export default function ViewAllResults(props) {
]
}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
Case Type:
</span>
@@ -127,7 +133,7 @@ export default function ViewAllResults(props) {
]
}
</dd>
<dd className="govuk-summary-list__value govuk-!-font-size-14">
<dd className="govuk-summary-list__value govuk-!-font-size-16">
<span className="results-visually-hidden">
Status:
</span>
+42 -21
View File
@@ -4,45 +4,66 @@ import { useContext } from "react";
import useTranslation from "next-translate/useTranslation";
import SearchForCase from "./search/searchforcase";
import SearchResults from "./search/searchresults";
import CRMError from "./crmError";
export default function Search(props) {
const { searchString, searchResultsObj } = props;
const { searchString, searchResultsObj, advancedSearch } = props;
let { t } = useTranslation();
const router = useRouter();
const { locale } = router;
var hasError = _.has(searchResultsObj.searchResultsObj, "errorCode")
? true
: false;
//console.log("has an error", hasError);
return (
<main
className="govuk-main-wrapper govuk-main-wrapper--auto-spacing"
id="main-content"
role="main"
>
<div className="govuk-grid-row">
<div className="govuk-grid-column-full">
<SearchResults
searchString={searchString}
searchResultsObj={searchResultsObj.searchResultsObj}
/>
</div>
</div>
<div className="govuk-grid-row">
<div className="govuk-grid-column-full">
<div className="govuk-button-group">
<Link href="/advancedsearch">
<a className="govuk-button">
{t("search:searchresults-search-button-label")}
</a>
</Link>
<a
{hasError ? (
<CRMError props={props} />
) : (
<>
<div className="govuk-grid-row">
<div className="govuk-grid-column-full">
<SearchResults
advancedSearch={advancedSearch}
searchString={searchString}
searchResultsObj={
searchResultsObj.searchResultsObj
}
searchDetailsObj={
searchResultsObj.searchDetailsObj
}
/>
</div>
</div>
<div className="govuk-grid-row">
<div className="govuk-grid-column-full">
<div className="govuk-button-group">
<Link href="/advancedsearch">
<a className="govuk-button">
{t(
"search:searchresults-search-button-label"
)}
</a>
</Link>
{/* <a
onClick={() => router.back()}
className="govuk-button govuk-button--secondary"
>
{t("search:searchresults-new-search-button-label")}
</a>
</a> */}
</div>
</div>
</div>
</div>
</div>
</>
)}
</main>
);
}
+45
View File
@@ -0,0 +1,45 @@
import React from "react";
import useTranslation from "next-translate/useTranslation";
const GlobalMetaTags = () => {
let { t } = useTranslation();
return (
<>
{console.log(t("common:service-name"))}
{/* Language by default is EN, if multilingual site this will need updated */}
<meta key="og:locale" property="og:locale" content="en" />
{/* If they have a Twitter Handle, include the meta details below */}
<meta
key="og:site_name"
property="og:site_name"
content="Planning casework "
/>
<meta
key="twitter:site"
property="twitter:site"
content="@UKGovWales"
/>
<meta
name="description"
content="The Welsh Government is the devolved Government for Wales"
/>
<meta property="og:site_name" content="GOV.WALES" />
<meta property="og:type" content="website" />
<meta property="og:url" content="https://gov.wales" />
<meta
property="og:image"
content="https://gov.wales//themes/custom/govwales/images/content/og-global-1200.png"
/>
<meta name="twitter:card" content="summary" />
<meta name="twitter:title" content="gov.wales | gov.wales" />
<meta name="twitter:url" content="https://gov.wales" />
<meta
name="twitter:image"
content="https://gov.wales//themes/custom/govwales/images/content/og-global-120.png"
/>
</>
);
};
export default GlobalMetaTags;
+119
View File
@@ -0,0 +1,119 @@
import Head from "next/head";
import { string } from "prop-types";
// ALl options are conditional apart from title
const PageMeta = ({
title,
imageWidth,
imageHeight,
ogImage,
ogUrl,
ogTitle,
ogType,
ogDescription,
canonicalURL,
description,
keywords,
createdAt,
updatedAt,
robots,
twitterDescription,
twitterTitle,
twitterImage,
}) => {
const facebookPage = "https://www.facebook.com/IFPMA";
return (
<>
<Head>
{title && <title>{title}</title>}
<meta property="article:publisher" content={facebookPage} />
{createdAt && (
<meta
property="article:published_time"
content={createdAt}
/>
)}
{updatedAt && (
<meta
property="article:modified_time"
content={updatedAt}
/>
)}
{description && (
<meta
property="description"
name="description"
content={description}
/>
)}
{keywords && (
<meta
property="keywords"
name="keywords"
content={keywords}
/>
)}
<meta
property="robots"
name="robots"
content={robots || "index,follow"}
/>
{canonicalURL && <link rel="canonical" href={canonicalURL} />}
{ogUrl && <meta property="og:url" content={ogUrl} />}
{ogTitle && <meta property="og:title" content={ogTitle} />}
{ogType && <meta property="og:type" content={ogType} />}
{ogDescription && (
<meta property="og:description" content={ogDescription} />
)}
{ogImage && <meta property="og:image" content={ogImage} />}
{imageWidth && (
<meta property="og:image:width" content={imageWidth} />
)}
{imageHeight && (
<meta property="og:image:height" content={imageHeight} />
)}
<meta property="twitter:card" content="summary_large_image" />
<meta
key="twitter:site"
property="twitter:site"
content="@IFPMA"
/>
{twitterDescription && (
<meta
property="twitter:description"
content={twitterDescription}
/>
)}
{twitterTitle && (
<meta property="twitter:title" content={twitterTitle} />
)}
{twitterImage && (
<meta property="twitter:image" content={twitterImage} />
)}
</Head>
</>
);
};
PageMeta.propTypes = {
title: string,
createdAt: string,
updatedAt: string,
ogImage: string,
ogUrl: string,
ogTitle: string,
ogType: string,
ogDescription: string,
canonicalURL: string,
description: string,
keywords: string,
createdAt: string,
updatedAt: string,
robots: string,
twitterDescription: string,
twitterTitle: string,
twitterImage: string,
};
export default PageMeta;
+22
View File
@@ -0,0 +1,22 @@
import Link from "next/link";
import Image from "next/image";
import useTranslation from "next-translate/useTranslation";
import router from "next/router";
export default function ServiceBanner() {
let { t, lang } = useTranslation();
return (
<div className="servicebanner">
<h1>
<img
src={
router.locale == "cy"
? "/assets/images/planning-casework-cy.svg"
: "/assets/images/planning-casework-en.svg"
}
alt="Planning casework"
/>
</h1>
</div>
);
}
+29
View File
@@ -0,0 +1,29 @@
import React, { Fragment } from "react";
export const Tracking = ({ googleTagManagerID }) => (
<Fragment>
<script
dangerouslySetInnerHTML={{
__html: `(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','${googleTagManagerID}');`,
}}
/>
</Fragment>
);
export const TrackingNoScript = ({ googleTagManagerID }) => (
<Fragment>
<noscript>
<iframe
title="google analytics"
src={`https://www.googletagmanager.com/ns.html?id=${googleTagManagerID}`}
height="0"
width="0"
style={{ display: "none", visibility: "hidden" }}
/>
</noscript>
</Fragment>
);
+92
View File
@@ -0,0 +1,92 @@
import jsonpath from "jsonpath";
import data from "../../data/collections.json";
import {
getBasicSearchDetails,
getBasicSearchDetailsPaged,
} from "../../actions";
/*
* Get the lookup collection by the appeal type entity
* @param String formtype - string from appeal entity name
*/
export const getFormCollection = (formtype) => {
const collectionName = jsonpath.query(
data,
"$..[?(@.LogicalName=='" + formtype + "')]"
);
return collectionName[0];
};
export const getFormCollectionByID = (appealTypeID) => {
const collectionName = jsonpath.query(
data,
"$..[?(@.appealTypeID =='" + appealTypeID + "')]"
);
return collectionName[0];
};
/*
* Get the details of a case from the appeal type
* @param String token
* @param object searchResultsObj
*/
export const getSearchDetails = (token, searchResultsObj) => {
//console.log(searchResultsObj);
let detailsArr = [];
searchResultsObj = searchResultsObj.value;
const detailsObj = searchResultsObj.map((searchDetail, index) => {
if (searchDetail.pinswg_appealcasetype == null) {
console.log(searchDetail.title);
} else {
let formMeta = getFormCollectionByID(
searchDetail.pinswg_appealcasetype
);
//console.log(formMeta);
detailsArr.push(
getBasicSearchDetails(
token,
formMeta.LogicalCollectionName,
searchDetail.title,
formMeta.PrimaryIdAttribute,
searchDetail.incidentid
)
);
}
});
//console.log(detailsArr);
return Promise.all(detailsArr);
};
/*
* Get the details of a case from the appeal type
* @param object searchResultsObj
*/
export const getSearchDetailsPaged = (searchResultsObj) => {
//console.log(searchResultsObj);
let detailsArr = [];
//console.log("search results", searchResultsObj);
searchResultsObj = searchResultsObj.value;
const detailsObj = searchResultsObj.map((searchDetail, index) => {
//console.log(searchDetail);
if (searchDetail.pinswg_appealcasetype == null) {
console.log(searchDetail.title);
} else {
let formMeta = getFormCollectionByID(
searchDetail.pinswg_appealcasetype
);
detailsArr.push(
getBasicSearchDetailsPaged(
formMeta.LogicalCollectionName,
searchDetail.title,
formMeta.PrimaryIdAttribute,
searchDetail.incidentid
)
);
}
});
// console.log(detailsArr);
return Promise.all(detailsArr);
};
+524
View File
@@ -0,0 +1,524 @@
{
"value": [
{
"LogicalCollectionName": "pinswg_planningobligationss106flows",
"LogicalName": "pinswg_planningobligationss106flow",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "",
"MetadataId": "efb4c590-19be-eb11-aac4-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_dnsflows",
"LogicalName": "pinswg_dnsflow",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "",
"MetadataId": "328e015f-dabe-eb11-aac4-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_harbourrevisionorderflows",
"LogicalName": "pinswg_harbourrevisionorderflow",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "",
"MetadataId": "98bbb26e-e7be-eb11-aac4-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_transportandworkactflows",
"LogicalName": "pinswg_transportandworkactflow",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "",
"MetadataId": "ad4bfc8c-e1be-eb11-aac4-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_maintenanceoflands127flows",
"LogicalName": "pinswg_maintenanceoflands127flow",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "",
"MetadataId": "2b26362c-d3be-eb11-aac4-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_environmentalpermittingflows",
"LogicalName": "pinswg_environmentalpermittingflow",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "",
"MetadataId": "74dd4767-f2be-eb11-aac4-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_dnses",
"LogicalName": "pinswg_dns",
"PrimaryIdAttribute": "pinswg_dnsid",
"UrlName": "dns",
"MetadataId": "36f07225-4a82-eb11-aac0-00224800be9c",
"appealTypeID": "846040011"
},
{
"LogicalCollectionName": "pinswg_planningobligationappeals106s",
"LogicalName": "pinswg_planningobligationappeals106",
"PrimaryIdAttribute": "pinswg_planningobligationappeals106id",
"UrlName": "planningobligationappeals106",
"MetadataId": "cb8beeae-8f81-eb11-aac0-00224800be9c",
"appealTypeID": "846040003"
},
{
"LogicalCollectionName": "pinswg_planningconditionss73s79s",
"LogicalName": "pinswg_planningconditionss73s79",
"PrimaryIdAttribute": "pinswg_planningconditionss73s79id",
"UrlName": "planningconditionss73s79",
"MetadataId": "093bf9ff-8d81-eb11-aac0-00224800be9c",
"appealTypeID": "846040001"
},
{
"LogicalCollectionName": "pinswg_rows",
"LogicalName": "pinswg_row",
"PrimaryIdAttribute": "pinswg_rowid",
"UrlName": "row",
"MetadataId": "4ccc6e93-4f82-eb11-aac0-00224800be9c",
"appealTypeID": "846040015"
},
{
"LogicalCollectionName": "pinswg_transportandworkacts",
"LogicalName": "pinswg_transportworksact",
"PrimaryIdAttribute": "pinswg_transportandworkactid",
"UrlName": "transportandworkact",
"MetadataId": "bc3edc4b-7d82-eb11-aac0-00224800be9c",
"appealTypeID": "846040013"
},
{
"LogicalCollectionName": "pinswg_transportandworkacts",
"LogicalName": "pinswg_transportandworkact",
"PrimaryIdAttribute": "pinswg_transportandworkactid",
"UrlName": "transportandworkact",
"MetadataId": "bc3edc4b-7d82-eb11-aac0-00224800be9c",
"appealTypeID": "846040013"
},
{
"LogicalCollectionName": "pinswg_transportandworkacts",
"LogicalName": "pinswg_transportandworksact",
"PrimaryIdAttribute": "pinswg_transportandworkactid",
"UrlName": "transportandworksact",
"MetadataId": "bc3edc4b-7d82-eb11-aac0-00224800be9c",
"appealTypeID": "846040013"
},
{
"LogicalCollectionName": "pinswg_wayleaveflows",
"LogicalName": "pinswg_wayleaveflow",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "",
"MetadataId": "a28054b9-e3be-eb11-aac4-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_planningappeals78flows",
"LogicalName": "pinswg_planningappeals78flow",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "",
"MetadataId": "ddaebde1-0fbe-eb11-aac4-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_harbourrevisionorders",
"LogicalName": "pinswg_harbourrevisionorder",
"PrimaryIdAttribute": "pinswg_harbourrevisionorderid",
"UrlName": "harbourrevisionorder",
"MetadataId": "dc8dcd0d-4f82-eb11-aac0-00224800be9c",
"appealTypeID": "846040014"
},
{
"LogicalCollectionName": "pinswg_miscellaneouscaseworks",
"LogicalName": "pinswg_miscellaneouscasework",
"PrimaryIdAttribute": "pinswg_miscellaneouscasewordid",
"UrlName": "miscellaneouscasework",
"MetadataId": "f519aa8e-5782-eb11-aac0-00224800be9c",
"appealTypeID": "846040022"
},
{
"LogicalCollectionName": "pinswg_miscellaneouscaseworks",
"LogicalName": "pinswg_misccasework",
"PrimaryIdAttribute": "pinswg_miscellaneouscasewordid",
"UrlName": "miscellaneouscasework",
"MetadataId": "f519aa8e-5782-eb11-aac0-00224800be9c",
"appealTypeID": "846040022"
},
{
"LogicalCollectionName": "pinswg_localdevelopmentplanses",
"LogicalName": "pinswg_localdevelopmentplans",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "localdevelopmentplans",
"MetadataId": "38ed3835-c1e0-eb11-aac5-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_planningappeals78s",
"LogicalName": "pinswg_planningappeals78",
"PrimaryIdAttribute": "pinswg_planningappeals78id",
"UrlName": "planningappeals78",
"MetadataId": "8d7f813a-4183-eb11-aac0-00224800be9c",
"appealTypeID": "846040000"
},
{
"LogicalCollectionName": "pinswg_enforcementnoticeappealsflow174s",
"LogicalName": "pinswg_enforcementnoticeappealsflow174",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "enforcementnoticeappealsflow174",
"MetadataId": "a933cf28-20be-eb11-aac4-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_lawfuldevelopmentcertificates",
"LogicalName": "pinswg_lawfuldevelopmentcertificate",
"PrimaryIdAttribute": "pinswg_lawfuldevelopmentcertificatappid",
"UrlName": "lawfuldevelopmentcertificate",
"MetadataId": "184e4861-9681-eb11-aac0-00224800be9c",
"appealTypeID": "846040008"
},
{
"LogicalCollectionName": "pinswg_lawfuldevelopmentcertificates",
"LogicalName": "pinswg_lawfuldevelopmentcertificateappeals194195",
"PrimaryIdAttribute": "pinswg_lawfuldevelopmentcertificatappid",
"UrlName": "lawfuldevelopmentcertificateappeals1941",
"MetadataId": "184e4861-9681-eb11-aac0-00224800be9c",
"appealTypeID": "846040008"
},
{
"LogicalCollectionName": "pinswg_lawfuldevelopmentcertificates",
"LogicalName": "pinswg_lawfuldevelopmentcertificateappeals1941",
"PrimaryIdAttribute": "pinswg_lawfuldevelopmentcertificatappid",
"UrlName": "lawfuldevelopmentcertificate",
"MetadataId": "184e4861-9681-eb11-aac0-00224800be9c",
"appealTypeID": "846040008"
},
{
"LogicalCollectionName": "pinswg_highhedgestreepreservationflows",
"LogicalName": "pinswg_highhedgestreepreservationflow",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "",
"MetadataId": "c365b924-f3be-eb11-aac4-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_householderappealhases",
"LogicalName": "pinswg_householderappealhas",
"PrimaryIdAttribute": "pinswg_householderappealhasid",
"UrlName": "householderappealhas",
"MetadataId": "a6c728b0-9081-eb11-aac0-00224800be9c",
"appealTypeID": "846040004"
},
{
"LogicalCollectionName": "pinswg_enforcementlistedbuildingconservationaps",
"LogicalName": "pinswg_enforcementlistedbuildingconservationap",
"PrimaryIdAttribute": "pinswg_enforcementlistedbuildingconseid",
"UrlName": "enforcementlistedbuildingconservationap",
"MetadataId": "c697be96-9481-eb11-aac0-00224800be9c",
"appealTypeID": "846040006"
},
{
"LogicalCollectionName": "pinswg_enforcementlistedbuildingconservationaps",
"LogicalName": "pinswg_enforcementlistedbuildingandconservationappeals39",
"PrimaryIdAttribute": "pinswg_enforcementlistedbuildingconseid",
"UrlName": "enforcementlistedbuildingconservationap",
"MetadataId": "c697be96-9481-eb11-aac0-00224800be9c",
"appealTypeID": "846040006"
},
{
"LogicalCollectionName": "pinswg_enforcementlistedbuildingconservationaps",
"LogicalName": "pinswg_enforcementlistedbuildingandconservationap",
"PrimaryIdAttribute": "pinswg_enforcementlistedbuildingconseid",
"UrlName": "enforcementlistedbuildingconservationap",
"MetadataId": "c697be96-9481-eb11-aac0-00224800be9c",
"appealTypeID": "846040006"
},
{
"LogicalCollectionName": "pinswg_callinss77s",
"LogicalName": "pinswg_callinss77",
"PrimaryIdAttribute": "pinswg_callinss77id",
"UrlName": "callinss77",
"MetadataId": "dd309e51-4982-eb11-aac0-00224800be9c",
"appealTypeID": "846040010"
},
{
"LogicalCollectionName": "pinswg_commonlands",
"LogicalName": "pinswg_commonland",
"PrimaryIdAttribute": "pinswg_commonlandid",
"UrlName": "commonland",
"MetadataId": "4161a618-5082-eb11-aac0-00224800be9c",
"appealTypeID": "846040016"
},
{
"LogicalCollectionName": "pinswg_advertses",
"LogicalName": "pinswg_adverts",
"PrimaryIdAttribute": "pinswg_advertsid",
"UrlName": "adverts",
"MetadataId": "0735866b-5482-eb11-aac0-00224800be9c",
"appealTypeID": "846040018"
},
{
"LogicalCollectionName": "pinswg_hedgeshedgerowstreepreservationreplacems",
"LogicalName": "pinswg_hedgeshedgerowstreepreservationreplacem",
"PrimaryIdAttribute": "pinswg_hedgeshedgerowstreepreservatioid",
"UrlName": "hedgeshedgerowstreepreservationreplacem",
"MetadataId": "60f38fed-5382-eb11-aac0-00224800be9c",
"appealTypeID": "846040017"
},
{
"LogicalCollectionName": "pinswg_hedgeshedgerowstreepreservationreplacems",
"LogicalName": "pinswg_highhedgestreepreservationordershedgerowstreereplacementnotice",
"PrimaryIdAttribute": "pinswg_hedgeshedgerowstreepreservatioid",
"UrlName": "hedgeshedgerowstreepreservationreplacem",
"MetadataId": "60f38fed-5382-eb11-aac0-00224800be9c",
"appealTypeID": "846040017"
},
{
"LogicalCollectionName": "pinswg_hedgeshedgerowstreepreservationreplacems",
"LogicalName": "pinswg_highhedgestreepreservationordershedgero",
"PrimaryIdAttribute": "pinswg_hedgeshedgerowstreepreservatioid",
"UrlName": "hedgeshedgerowstreepreservationreplacem",
"MetadataId": "60f38fed-5382-eb11-aac0-00224800be9c",
"appealTypeID": "846040017"
},
{
"LogicalCollectionName": "pinswg_compulsorypurchaseorderses",
"LogicalName": "pinswg_compulsorypurchaseorders",
"PrimaryIdAttribute": "pinswg_compulsorypurchaseordersid",
"UrlName": "compulsorypurchaseorders",
"MetadataId": "054da4c7-5582-eb11-aac0-00224800be9c",
"appealTypeID": "846040019"
},
{
"LogicalCollectionName": "pinswg_communityinfrastructurelevys117118119s",
"LogicalName": "pinswg_communityinfrastructurelevys117118119",
"PrimaryIdAttribute": "pinswg_communityinfrastructurelevyid",
"UrlName": "communityinfrastructurelevys117118119",
"MetadataId": "0c309f3c-4882-eb11-aac0-00224800be9c",
"appealTypeID": "846040009"
},
{
"LogicalCollectionName": "pinswg_objectiveconfigs",
"LogicalName": "pinswg_objectiveconfig",
"PrimaryIdAttribute": "pinswg_objectiveconfigid",
"UrlName": "objectiveconfig",
"MetadataId": "f89ae20c-4777-eb11-aabd-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_nonvalidations",
"LogicalName": "pinswg_nonvalidation",
"PrimaryIdAttribute": "pinswg_nonvalidationid",
"UrlName": "nonvalidation",
"MetadataId": "37f31a93-5882-eb11-aac0-00224800be9c",
"appealTypeID": "846040024"
},
{
"LogicalCollectionName": "pinswg_rightofwayflows",
"LogicalName": "pinswg_rightofwayflow",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "",
"MetadataId": "b26c1d43-efbe-eb11-aac4-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_caseinvolvements",
"LogicalName": "pinswg_caseinvolvement",
"PrimaryIdAttribute": "pinswg_caseinvolvementid",
"UrlName": "caseinvolvement",
"MetadataId": "65677cd9-4aae-eb11-aac3-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_commonlandflows",
"LogicalName": "pinswg_commonlandflow",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "",
"MetadataId": "338fac85-e6be-eb11-aac4-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_lawfuldevelopmentcertificates195flows",
"LogicalName": "pinswg_lawfuldevelopmentcertificates195flow",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "",
"MetadataId": "0b8f5046-1dbe-eb11-aac4-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_advertisementappealanddiscontinuances",
"LogicalName": "pinswg_advertisementappealanddiscontinuance",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "advertisementappealanddiscontinuance",
"MetadataId": "79b9ab3a-f1be-eb11-aac4-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_documenthistories",
"LogicalName": "pinswg_documenthistory",
"PrimaryIdAttribute": "pinswg_documenthistoryid",
"UrlName": "documenthistory",
"MetadataId": "0d8e78a7-33a3-eb11-aac3-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_documents",
"LogicalName": "pinswg_document",
"PrimaryIdAttribute": "pinswg_documentid",
"UrlName": "documents",
"MetadataId": "e6cbbbca-026a-eb11-aabb-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_electricityactflows",
"LogicalName": "pinswg_electricityactflow",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "",
"MetadataId": "699c4318-e3be-eb11-aac4-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_planningconditionss73s79flows",
"LogicalName": "pinswg_planningconditionss73s79flow",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "",
"MetadataId": "510154b1-15be-eb11-aac4-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_wayleaves",
"LogicalName": "pinswg_wayleave",
"PrimaryIdAttribute": "pinswg_wayleaveid",
"UrlName": "wayleave",
"MetadataId": "a0652117-5782-eb11-aac0-00224800be9c",
"appealTypeID": "846040021"
},
{
"LogicalCollectionName": "pinswg_listedbuildingandconservationareaconsens",
"LogicalName": "pinswg_listedbuildingandconservationareaconsen",
"PrimaryIdAttribute": "pinswg_listedbuildingandconservationrid",
"UrlName": "listedbuildingandconservationareaconsen",
"MetadataId": "4cd95405-8f81-eb11-aac0-00224800be9c",
"appealTypeID": "846040025"
},
{
"LogicalCollectionName": "pinswg_listedbuildingandconservationareaconsens",
"LogicalName": "pinswg_listedbuildingconservationareaconsent",
"PrimaryIdAttribute": "pinswg_listedbuildingandconservationrid",
"UrlName": "listedbuildingandconservationareaconsen",
"MetadataId": "4cd95405-8f81-eb11-aac0-00224800be9c",
"appealTypeID": "846040025"
},
{
"LogicalCollectionName": "pinswg_callinapplicationss77flows",
"LogicalName": "pinswg_callinapplicationss77flow",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "",
"MetadataId": "2a4f3d43-d4be-eb11-aac4-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_transfercodes",
"LogicalName": "pinswg_transfercode",
"PrimaryIdAttribute": "pinswg_transfercodeid",
"UrlName": "transfercode",
"MetadataId": "a551ad5c-29f5-eb11-aac7-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_compulsorypurchaseordersflows",
"LogicalName": "pinswg_compulsorypurchaseordersflow",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "",
"MetadataId": "a94f098b-f0be-eb11-aac4-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_environmentalpermittings",
"LogicalName": "pinswg_environmentalpermitting",
"PrimaryIdAttribute": "pinswg_environmentalpermittingid",
"UrlName": "environmentalpermitting",
"MetadataId": "62d4aa9a-5682-eb11-aac0-00224800be9c",
"appealTypeID": "846040020"
},
{
"LogicalCollectionName": "pinswg_nonvaidationflows",
"LogicalName": "pinswg_nonvaidationflow",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "",
"MetadataId": "e5ca3ceb-c1e0-eb11-aac5-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_enforcementnoticeappeals174s",
"LogicalName": "pinswg_enforcementnoticeappeals174",
"PrimaryIdAttribute": "pinswg_enforcementnoticeappeals174id",
"UrlName": "enforcementnoticeappeals174",
"MetadataId": "930a3cc4-9181-eb11-aac0-00224800be9c",
"appealTypeID": "846040005"
},
{
"LogicalCollectionName": "pinswg_ldps",
"LogicalName": "pinswg_ldp",
"PrimaryIdAttribute": "pinswg_ldpid",
"UrlName": "ldp",
"MetadataId": "af424d4d-5882-eb11-aac0-00224800be9c",
"appealTypeID": "846040023"
},
{
"LogicalCollectionName": "pinswg_maintenanceoflands217s",
"LogicalName": "pinswg_maintenanceoflands217",
"PrimaryIdAttribute": "pinswg_maintenanceoflands217id",
"UrlName": "maintenanceoflands217",
"MetadataId": "bb302784-9581-eb11-aac0-00224800be9c",
"appealTypeID": "846040007"
},
{
"LogicalCollectionName": "pinswg_enforcelistbuild39flows",
"LogicalName": "pinswg_enforcelistbuild39flow",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "",
"MetadataId": "9423206e-d2be-eb11-aac4-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_householderappealflows",
"LogicalName": "pinswg_householderappealflow",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "",
"MetadataId": "330541bd-d5be-eb11-aac4-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_miscellaneouscaseworkflows",
"LogicalName": "pinswg_miscellaneouscaseworkflow",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "",
"MetadataId": "87db8649-f4be-eb11-aac4-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_communityinfrastructurelevyflows",
"LogicalName": "pinswg_communityinfrastructurelevyflow",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "",
"MetadataId": "92bc1e3d-e0be-eb11-aac4-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_listedbuildconserv20flows",
"LogicalName": "pinswg_listedbuildconserv20flow",
"PrimaryIdAttribute": "businessprocessflowinstanceid",
"UrlName": "",
"MetadataId": "4c11cbe9-27be-eb11-aac4-00224800be9c",
"appealTypeID": ""
},
{
"LogicalCollectionName": "pinswg_electricityacts",
"LogicalName": "pinswg_electricityact",
"PrimaryIdAttribute": "pinswg_electricityactid",
"UrlName": "electricityact",
"MetadataId": "6aedaab1-4a82-eb11-aac0-00224800be9c",
"appealTypeID": "846040012"
}
]
}
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+7
View File
@@ -0,0 +1,7 @@
const DNSForm = (props) => {
const { caseReference } = props;
return <></>;
};
export default DNSForm;
+353
View File
@@ -0,0 +1,353 @@
const ElectricityActForm = (props) => {
const { caseReference } = props;
return (
<>
<div class="govuk-grid-row">
<div class="govuk-grid-column-two-thirds">
<h1 class="govuk-heading-m govuk-!-margin-top-5">
Enter your appeal information
</h1>
<form>
<div class="govuk-grid-column-full">
<div class="govuk-grid-row">
<div class="govuk-form-group">
<label
class="govuk-label "
for="pinswg_name"
>
Name
</label>
<input
type="text"
name="pinswg_name"
id="pinswg_name"
component="[object Object]"
class="govuk-input govuk-input--width-20"
disabled
value="CAS-00497-K4H2Z5"
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_anticipatedgridreferencenorthingtext"
id="pinswg_anticipatedgridreferencenorthingtext_label"
>
Anticipated Grid Reference Northing
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_anticipatedgridreferencenorthingtext"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_anticipatedgridreferenceeastingtext"
id="pinswg_anticipatedgridreferenceeastingtext_label"
>
Anticipated Grid Reference Easting
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_anticipatedgridreferenceeastingtext"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_projectname"
id="pinswg_projectname_label"
>
Project Name
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_projectname"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_projectdiscription"
id="pinswg_projectdiscription_label"
>
Project Discription
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_projectdiscription"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_projectlocation"
id="pinswg_projectlocation_label"
>
Project Location
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_projectlocation"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_addresscounty"
id="pinswg_addresscounty_label"
>
Address County
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_addresscounty"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_addressline1"
id="pinswg_addressline1_label"
>
Address Line 1
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_addressline1"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_addressline2"
id="pinswg_addressline2_label"
>
Address Line 2
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_addressline2"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_addresstown"
id="pinswg_addresstown_label"
>
Address Town
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_addresstown"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_postcode"
id="pinswg_postcode_label"
>
Post Code
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_postcode"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_agentcontactname"
id="pinswg_agentcontactname_label"
>
Agent Contact Name
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_agentcontactname"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_emailaddress"
id="pinswg_emailaddress_label"
>
Email Address
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_emailaddress"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_salutation"
id="pinswg_salutation_label"
>
Salutation
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_salutation"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_firstname"
id="pinswg_firstname_label"
>
First Name
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_firstname"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_lastname"
id="pinswg_lastname_label"
>
Last Name
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_lastname"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_organisation"
id="pinswg_organisation_label"
>
Organisation
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_organisation"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_role"
id="pinswg_role_label"
>
Role
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_role"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_telephonenumber"
id="pinswg_telephonenumber_label"
>
Telephone Number
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_telephonenumber"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_webaddress"
id="pinswg_webaddress_label"
>
Web Address
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_webaddress"
value=""
/>
</div>
</div>
</div>
<div class="govuk-button-group">
<button
type="submit"
class="govuk-button"
data-module="govuk-button"
>
Submit
</button>
</div>
</form>
</div>
</div>
</>
);
};
export default ElectricityActForm;
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+353
View File
@@ -0,0 +1,353 @@
const HarbourRevisionOrderForm = (props) => {
const { caseReference } = props;
return (
<>
<div class="govuk-grid-row">
<div class="govuk-grid-column-two-thirds">
<h1 class="govuk-heading-m govuk-!-margin-top-5">
Enter your appeal information
</h1>
<form>
<div class="govuk-grid-column-full">
<div class="govuk-grid-row">
<div class="govuk-form-group">
<label
class="govuk-label "
for="pinswg_name"
>
Name
</label>
<input
type="text"
name="pinswg_name"
id="pinswg_name"
component="[object Object]"
class="govuk-input govuk-input--width-20"
disabled
value="CAS-00499-C4D7R4"
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_anticipatedgridreferenceeastingtext"
id="pinswg_anticipatedgridreferenceeastingtext_label"
>
Anticipated Grid Reference Easting
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_anticipatedgridreferenceeastingtext"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_anticipatedgridreferencenorthingtext"
id="pinswg_anticipatedgridreferencenorthingtext_label"
>
Anticipated Grid Reference Northing
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_anticipatedgridreferencenorthingtext"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_projectname"
id="pinswg_projectname_label"
>
Project Name
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_projectname"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_projectdiscription"
id="pinswg_projectdiscription_label"
>
Project Discription
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_projectdiscription"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_projectlocation"
id="pinswg_projectlocation_label"
>
Project Location
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_projectlocation"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_addresscounty"
id="pinswg_addresscounty_label"
>
Address County
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_addresscounty"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_addressline1"
id="pinswg_addressline1_label"
>
Address Line 1
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_addressline1"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_addressline2"
id="pinswg_addressline2_label"
>
Address Line 2
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_addressline2"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_addresstown"
id="pinswg_addresstown_label"
>
Address Town
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_addresstown"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_agentcontactname"
id="pinswg_agentcontactname_label"
>
Agent Contact Name
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_agentcontactname"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_emailaddress"
id="pinswg_emailaddress_label"
>
Email Address
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_emailaddress"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_salutation"
id="pinswg_salutation_label"
>
Salutation
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_salutation"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_firstname"
id="pinswg_firstname_label"
>
First Name
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_firstname"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_lastname"
id="pinswg_lastname_label"
>
Last Name
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_lastname"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_organisation"
id="pinswg_organisation_label"
>
Organisation
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_organisation"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_postcode"
id="pinswg_postcode_label"
>
Post Code
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_postcode"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_role"
id="pinswg_role_label"
>
Role
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_role"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_telephonenumber"
id="pinswg_telephonenumber_label"
>
Telephone Number
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_telephonenumber"
value=""
/>
</div>
</div>
<div class="govuk-grid-row">
<div class="govuk-form-group ">
<label
class="govuk-label "
for="pinswg_webaddress"
id="pinswg_webaddress_label"
>
Web Address
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_webaddress"
value=""
/>
</div>
</div>
</div>
<div class="govuk-button-group">
<button
type="submit"
class="govuk-button"
data-module="govuk-button"
>
Submit
</button>
</div>
</form>
</div>
</div>
</>
);
};
export default HarbourRevisionOrderForm;
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More