fomrs split out

This commit is contained in:
2021-10-05 09:47:57 +01:00
parent 2ace28aa40
commit 8714d71189
48 changed files with 42577 additions and 146 deletions
+21 -3
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">
+17 -3
View File
@@ -88,7 +88,9 @@ const Header = (props) => {
</div>
<div className="govuk-header__content govuk-!-width-one-half govuk-!-margin-top-3">
<Link href="/logout">
<Link
href={router.locale == "cy" ? "/allgofnodi" : "/logout"}
>
<a
onClick={() => {
window.localStorage.clear();
@@ -140,7 +142,13 @@ const Header = (props) => {
""
) : (
<li>
<Link href="/logout">
<Link
href={
router.locale == "cy"
? "/allgofnodi"
: "/logout"
}
>
<a
onClick={() => {
window.localStorage.clear();
@@ -213,7 +221,13 @@ const Header = (props) => {
{noSignoutLink.includes(router.pathname) == true ? (
""
) : (
<Link href="/logout">
<Link
href={
router.locale == "cy"
? "/allgofnodi"
: "/logout"
}
>
<a
onClick={() => {
window.localStorage.clear();
+2 -2
View File
@@ -15,8 +15,8 @@ export default function CaseComment() {
</h3>
<p className="govuk-body-s">
{t("home:casescomment-card-paragraph-one")}{" "}
<a href="mailto:Casework.PEDW@gov.wales">
Casework.PEDW@gov.wales
<a href={"mailto:" + t("home:login-contact-email")}>
{t("home:login-contact-email")}
</a>
</p>
<p className="govuk-body-s">
+7 -1
View File
@@ -125,7 +125,13 @@ let CaseSearch = (props) => {
{t("home:casesearch-card-button")}
</button>
</div>
<Link href="/advancedsearch">
<Link
href={
router.locale == "cy"
? "/chwiliouwch"
: "/advancedsearch"
}
>
<a>{t("home:casesearch-card-advanced-link")}</a>
</Link>
</div>
+7 -1
View File
@@ -60,7 +60,13 @@ export default function Login() {
>
{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>
+2 -2
View File
@@ -17,8 +17,8 @@ export default function LoginSoon() {
<div className="govuk-form-group govuk-!-margin-top-4">
<p className="govuk-body-s">
{t("home:login-comingsoon-temp-1")}{" "}
<a href="mailto:Casework.PEDW@gov.wales">
Casework.PEDW@gov.wales
<a href={"mailto:" + t("home:login-contact-email")}>
{t("home:login-contact-email")}
</a>
</p>
<p className="govuk-body-s">
+1 -1
View File
@@ -28,7 +28,7 @@ export default function Home({ children, pages }) {
<CaseSearch />
<CaseComment />
<Dns />
{/* <Login /> */}
<Login />
<Inspectorate />
</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: "/myportal/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)
);
+12 -8
View File
@@ -79,12 +79,16 @@ const TopThree = (props) => {
<div className="cardModuleItem" key={index}>
<div className="cardModuleDetails">
<div className="cardModuleReference">
<b>Case reference:</b>{" "}
<b>{t("myportal:case-reference")}:</b>{" "}
<Link
href={
topThreeType == "awaitingSubmission"
? "/representation"
: "/case"
? router.locale == "cy"
? "/fymhorth/cynrychiolaeth"
: "/myportal/representation"
: router.locale == "cy"
? "/fymhorth/achos"
: "/myportal//case"
}
>
<a
@@ -103,18 +107,18 @@ const TopThree = (props) => {
</div>
{topThreeType != "awaitingSubmission" ? (
<div className="carModuleAddress">
<b>Addressa:</b>{" "}
<b>{t("myportal:case-address")}:</b>{" "}
{_.isEmpty(showDetails)
? "not entered"
? t("myportal:case-address-not-entered")
: _.isEmpty(showDetails[index])
? "not entered"
? t("myportal:case-address-not-entered")
: _.isEmpty(showDetails[index].value[0])
? "not entered"
? t("myportal:case-address-not-entered")
: _.isEmpty(
showDetails[index].value[0]
.pinswg_siteaddressline1
)
? "not entered"
? t("myportal:case-address-not-entered")
: showDetails[index].value[0]
.pinswg_siteaddressline1}
</div>
+1 -1
View File
@@ -21,7 +21,7 @@ const ViewAllResults = (props) => {
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">
<Link href={router.locale == "cy" ? "/achos" : "/case"}>
<a
onClick={() => {
setCurrentReference({
+8 -2
View File
@@ -13,7 +13,7 @@ export default function ViewAllResults(props) {
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">
<Link href={router.locale == "cy" ? "/achos" : "/case"}>
<a>
<span className="results-visually-hidden">
Case Reference:
@@ -83,7 +83,13 @@ export default function ViewAllResults(props) {
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">
<Link
href={
router.locale == "cy"
? "/achos"
: "/case"
}
>
<a>
<span className="results-visually-hidden">
Case Reference:
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
+49
View File
@@ -0,0 +1,49 @@
const LdpForm = (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-00508-J6L1F0"
/>
</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 LdpForm;
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
File diff suppressed because it is too large Load Diff
+1915
View File
File diff suppressed because it is too large Load Diff
+353
View File
@@ -0,0 +1,353 @@
const TransportAndWorkActForm = (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-00498-H2F6B6"
/>
</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_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_projectdescription"
id="pinswg_projectdescription_label"
>
Project Description
</label>
<input
class="govuk-input govuk-input--width-20"
id="pinswg_projectdescription"
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 TransportAndWorkActForm;
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -6,7 +6,7 @@
"defaultLocale": "en",
"domains": [
{
"domain": "dev-gwaithcynllunio.gwasanaeth.llyw.cymru",
"domain": "cymru.local",
"defaultLocale": "cy"
}
],
+1
View File
@@ -21,6 +21,7 @@
"back-to-top-link": "Nôl i dop y dudalen",
"social-bar-share-link": "Rhannur dudalen hon",
"social-bar-share-via-link": "Rhannur dudalen hon ar",
"social-shared-from": "Rhannwyd o",
"breadcrumb-search-results": "Canlyniadau chwilio",
"breadcrumb-advanced-search": "Chwilio uwch",
"breadcrumb-advanced-search-results": "Canlyniadau chwilio uwch",
+1
View File
@@ -3,6 +3,7 @@
"login-comingsoon-temp-1": "Maer wefan hon yn cael ei datblygu o hyd. Os hoffech gyflwyno apêl neu gais newydd, neu wneud sylwadau ar un sydd eisoes yn bodoli, cyflwynwch yr apêl, y cais neur sylwadau, ynghyd ag unrhyw ddogfennau cysylltiedig perthnasol, i ",
"login-comingsoon-temp-2": "Gellir gofyn am ffurflenni apelio a ffurflenni cais trwy e-bost neu gellir eu lawrlwytho trwy ddilyn y ddolen isod. ",
"login-comingsoon-forms-link": "https://llyw.cymru/ffurflenni-apelio",
"login-contact-email": "PEDW.GwaithAchos@llyw.cymru",
"login-card-title": "Mewngofnodi i apelio yn erbyn penderfyniad cynllunio",
"login-card-id-label": "Dynodydd Defnyddiwr (ID) Porth y Llywodraeth",
"login-card-id-hint": "Gallai hyn fod hyd at 12 o gymeriadau.",
+9 -4
View File
@@ -7,12 +7,17 @@
"makenewappeal-card-paragraph-two": "Wedi i chi glicio'r botwm 'gwneud apêl newydd' isod, cewch eich arwain drwy broses i'ch helpu i ddewis y math cywir o apêl.",
"makenewappeal-card-button-label": "Gwneud apêl newydd",
"mycases-card-title": "Fy achosion",
"searchcases-card-title": "Chwilio am achos/cyflwyno cynrychiolaeth",
"searchcases-card-search-hint": "Chwiliwch drwy roi cyfeirnod 7 digid yr achos yn y blwch isod:",
"searchcases-card-search-example-label": "Enghraifft",
"searchcases-card-title": "Chwilio am ddogfennau apêl",
"searchcases-card-search-hint": "Chwiliwch drwy roi cyfeirnod 7 digid yr achos",
"searchcases-card-search-example-label": "Enghraifft:",
"searchcases-card-button": "Cyflwyno Chwiliad",
"searchcases-card-advanced-link": "Fel arall, gallwch chwilio gan ddefnyddio ein meini prawf eraill gyda'n chwiliad uwch",
"searchcases-validation-required": "Angenrheidiol",
"searchcases-validation-minlength": "Rhaid bod yn 4 nod neu fwy",
"awatitingsubmission-card-title": "Eto iw gyflwyno",
"myrepresentations-card-title": "Cyflwyniadau'r achos",
"watchedcases-card-title": "Achosion a gwylio"
"watchedcases-card-title": "Achosion a gwylio",
"case-reference": "Cyfeirnod achos",
"case-address": "Cyfeiriad",
"case-address-not-entered": "heb ei nodi"
}
+1
View File
@@ -21,6 +21,7 @@
"back-to-top-link": "Back to top",
"social-bar-share-link": "Share this page",
"social-bar-share-via-link": "Share this page via",
"social-shared-from": "Shared from",
"breadcrumb-search-results": "Search results",
"breadcrumb-advanced-search": "Advanced search",
"breadcrumb-advanced-search-results": "Advanced search results",
+1
View File
@@ -3,6 +3,7 @@
"login-comingsoon-temp-1": "This website is still in development, if you wish to submit a new appeal or application please submit it, along with any relevant associated documentation, to ",
"login-comingsoon-temp-2": "Appeal and application forms can be requested by e-mail or downloaded following the below link.",
"login-comingsoon-forms-link": "https://gov.wales/planning-appeal-forms",
"login-contact-email": "PEDW.Casework@gov.wales",
"login-card-title": "Sign in to appeal a planning decision",
"login-card-id-label": "Government Gateway user ID",
"login-card-id-hint": "This could be up to 12 characters.",
+9 -4
View File
@@ -1,4 +1,4 @@
{
{
"viewall-link": "View all",
"page-title": "My Portal",
"makenewappeal-card-title": "Make a new appeal",
@@ -7,12 +7,17 @@
"makenewappeal-card-paragraph-two": "Once you click the 'make a new appeal' button below you will be guided through a process to help you select the correct appeal type",
"makenewappeal-card-button-label": "Make a new appeal",
"mycases-card-title": "My cases",
"searchcases-card-title": "Search for a case/submit representation",
"searchcases-card-search-hint": "Search by entering the 7 digit case reference number:",
"searchcases-card-title": "Appeal documentation search",
"searchcases-card-search-hint": "Search by entering the 7 digit case reference number",
"searchcases-card-search-example-label": "Example",
"searchcases-card-button": "Submit Search",
"searchcases-card-advanced-link": "Advanced Search",
"searchcases-search-validation-required": "Angenrheidiol",
"searchcases-search-validation-minlength": "Rhaid bod yn 4 nod neu fwy",
"awatitingsubmission-card-title": "Awaiting submission",
"myrepresentations-card-title": "My representations",
"watchedcases-card-title": "Watched cases"
"watchedcases-card-title": "Watched cases",
"case-reference": "Case reference",
"case-address": "Address",
"case-address-not-entered": "not entered"
}
+30 -5
View File
@@ -27,28 +27,53 @@ module.exports = {
return [
{
source: "/ceisiadaudns",
destination: "/dnsapplications", // The :path parameter isn't used here so will be automatically passed in the query
destination: "/dnsapplications",
},
{
source: "/manyliondns",
destination: "/dnsdetails", // The :path parameter isn't used here so will be automatically passed in the query
destination: "/dnsdetails",
},
{
source: "/canlyniadauchwilio",
destination: "/searchresults", // The :path parameter isn't used here so will be automatically passed in the query
destination: "/searchresults",
},
{
source: "/fymhorth/canlyniadauchwilio",
destination: "/myportal/searchresults",
},
{
source: "/chwiliouwch",
destination: "/advancedsearch",
},
{
source: "/fymhorth/chwiliouwch",
destination: "/myportal/advancedsearch",
},
{
source: "/fymhorth",
destination: "/myportal",
},
{
source: "/achos",
destination: "/case",
},
{
source: "/fymhorth/achos",
destination: "/myportal/case",
},
{
source: "/allgofnodi",
destination: "/logout",
},
{
source: "/cy:path*",
destination: "http://cyrmu.local/:path*",
source: "/newappeal",
destination: "/apêlnewydd",
},
// {
// source: "/cy:path*",
// destination: "http://cyrmu.local/:path*",
// },
];
},
...nextTranslate(),
+105
View File
@@ -0,0 +1,105 @@
import _ from "lodash";
import { useState } from "react";
import Head from "next/head";
import Header from "../../components/header";
import Banner from "../../components/banner";
import CookieBanner from "../../components/cookieBanner";
import Breadcrumbs from "../../components/breadcrumbs";
import Search from "../../components/search";
import Footer from "../../components/footer";
import Errorpage from "../../components/errorpage";
import styles from "../../styles/Home.module.css";
import { useSelector, shallowEqual, connect } from "react-redux";
import { wrapper } from "../../store/store";
import Cookies from "cookies";
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import CRMError from "../../components/crmError";
import {
setAppealType,
setAppealTypeTitle,
setAppealTypeID,
setAppealLPA,
getAppealTypeObj,
} from "../../store/appealType/action";
import {
getAppealsTypes,
getLPA,
updateCase,
createCase,
getSASToken,
} from "../../actions";
import { setLPA } from "../../store/lpa/action";
const Home = (props) => {
const { footerLinks, pages } = props;
let { t, lang } = useTranslation();
const router = useRouter();
const { locale } = router;
const { appealtypes } = router.query;
console.log(props, props.LPAData);
var hasError =
_.has(props.LPAData.LPAData, "errorCode") ||
_.has(props.appealType.appealType, "errorCode")
? true
: false;
return (
<div>
<Head>
<title>
{t("search:page-title")} - {t("common:service-name")}
</title>
</Head>
<div id="page_wrapper">
<CookieBanner />
<Header courseName={t("common:service-name")} />
<div className="govuk-width-container">
<Banner />
<Breadcrumbs slug={appealtypes} />
{hasError ? (
<CRMError props={props} whichError="advancedSearch" />
) : (
<Search
lpadata={props.LPAData}
appealType={props.appealType}
/>
)}
</div>
<Footer footerLinks={footerLinks} />
</div>
</div>
);
};
export const getServerSideProps = wrapper.getServerSideProps(
(store) =>
async ({ query, req, res }) => {
const token = await getSASToken();
const [appealTypeData, lpaData] = await Promise.all([
await getAppealsTypes(token),
await getLPA(token),
]);
store.dispatch(setAppealType(appealTypeData));
store.dispatch(setLPA(lpaData));
}
);
const mapStateToProps = (state) => {
return {
search: state.search,
searchResultsObj: state.searchResultsObj,
formData: state.formData,
appealType: state.appealType,
LPAData: state.LPAData,
//form: state.form,
accountDetails: state.accountDetails,
};
};
export default connect(mapStateToProps)(Home);
+142
View File
@@ -0,0 +1,142 @@
import _ from "lodash";
import Head from "next/head";
import Header from "../../components/header";
import Banner from "../../components/banner";
import CookieBanner from "../../components/cookieBanner";
import Breadcrumbs from "../../components/breadcrumbs";
import SearchResults from "../../components/searchresults";
import Footer from "../../components/footer";
import Errorpage from "../../components/errorpage";
import styles from "../../styles/Home.module.css";
import { useSelector, shallowEqual, connect } from "react-redux";
import { wrapper } from "../../store/store";
import Cookies from "cookies";
import { useRouter } from "next/router";
import useTranslation from "next-translate/useTranslation";
import jsonpath from "jsonpath";
import data from "../../data/collections.json";
import { setSearch, getSearchObj } from "../store/search/action";
import {
setSearchResults,
setSearchDetails,
setDocumentDetails,
setDocumentHistory,
getSearchResultsObj,
} from "../../store/searchOutput/action";
import {
getAdvancedSearch,
getBasicSearchDetails,
getSearchDocumentDetails,
getSearchDocumentHistory,
getSASToken,
} from "../../actions";
const Home = (props) => {
const { footerLinks, pages } = props;
let { t, lang } = useTranslation();
const router = useRouter();
const { locale } = router;
const { appealtypes } = router.query;
return (
<div>
<Head>
<title>
{t("search:page-title")} - {t("common:service-name")}
</title>
</Head>
<div id="page_wrapper">
<CookieBanner />
<Header courseName={t("common:service-name")} />
<div className="govuk-width-container">
<Banner />
<Breadcrumbs slug={appealtypes} />
<SearchResults
searchString={props.search.searchString}
searchResultsObj={props.searchResultsObj}
advancedSearch={true}
/>
</div>
<Footer footerLinks={footerLinks} />
</div>
</div>
);
};
export const getServerSideProps = wrapper.getServerSideProps(
(store) =>
async ({ query, req, res }) => {
console.log("query-", query);
//console.log("search array:", Object.entries(query));
const token = await getSASToken();
const searchResultsObj = await getAdvancedSearch(token, query);
const searchDetailsObj = await getSearchDetails(
token,
searchResultsObj
);
store.dispatch(setSearchResults(searchResultsObj));
store.dispatch(setSearchDetails(searchDetailsObj));
}
);
const getFormCollection = (formtype) => {
const collectionName = jsonpath.query(
data,
"$..[?(@.LogicalName=='" + formtype + "')].LogicalCollectionName"
);
//console.log(collectionName[0]);
return collectionName[0];
};
const getSearchDetails = (token, searchResultsObj) => {
//console.log(searchResultsObj);
let detailsArr = [];
//console.log("searcg results", searchResultsObj);
searchResultsObj = searchResultsObj.value;
const detailsObj = searchResultsObj.map((searchDetail, index) => {
if (searchDetail.pinswg_appealcasetype == null) {
console.log(searchDetail.ticketnumber);
} else {
detailsArr.push(
getBasicSearchDetails(
token,
getFormCollection(
"pinswg_" +
searchDetail[
"pinswg_appealcasetype@OData.Community.Display.V1.FormattedValue"
]
.replace(/(\band|[\s\-\+\(\)\,\&])/g, "")
.toLowerCase()
.slice(0, 39)
),
searchDetail.ticketnumber
)
);
}
});
//console.log(detailsArr);
return Promise.all(detailsArr);
};
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,
};
};
export default connect(mapStateToProps)(Home);
+118 -27
View File
@@ -44,6 +44,32 @@ import BuildSection from "../../components/newappeal/buildsection";
import BuildCheckSection from "../../components/newappeal/buildchecksection";
import CompleteAppeal from "../../components/newappeal/complete";
import AdvertsForm from "../../data/forms/adverts";
import Callinss77Form from "../../data/forms/callinss77";
import CommonLandForm from "../../data/forms/commonland";
import CommunityInfrastructureLevys117118119Form from "../../data/forms/communityinfrastructurelevys117118119";
import CompulsoryPurchaseOrdersForm from "../../data/forms/compulsorypurchaseorders";
import DNSForm from "../../data/forms/dns";
import ElectricityActForm from "../../data/forms/electricityact";
import EnforcementListedBuildingConservationapForm from "../../data/forms/enforcementlistedbuildingconservationap";
import EnforcementNoticeAppeals174Form from "../../data/forms/enforcementnoticeappeals174";
import EnvironmentalPermittingForm from "../../data/forms/environmentalpermitting";
import HarbourRevisionOrderForm from "../../data/forms/harbourrevisionorder";
import HedgesHedgerowsTreePreservationReplacemForm from "../../data/forms/hedgeshedgerowstreepreservationreplacem";
import HouseholderAppealHasForm from "../../data/forms/householderappealhas";
import LawfulDevelopmentCertificateForm from "../../data/forms/lawfuldevelopmentcertificate";
import LdpForm from "../../data/forms/ldp";
import ListedBuildingAndConservationAreaConsenForm from "../../data/forms/listedbuildingandconservationareaconsen";
import MaintenanceOfLands217Form from "../../data/forms/maintenanceoflands217";
import MiscellaneousCaseworkForm from "../../data/forms/miscellaneouscasework";
import NonValidationForm from "../../data/forms/nonvalidation";
import PlanningAppeals78Form from "../../data/forms/planningappeals78";
import PlanningConditionss73s79Form from "../../data/forms/planningconditionss73s79";
import PlanningObligationAppeals106Form from "../../data/forms/planningobligationappeals106";
import RowForm from "../../data/forms/row";
import TransportAndWorkActForm from "../../data/forms/transportandworkact";
import WayleaveForm from "../../data/forms/wayleave";
let Home = (props) => {
const { footerLinks, pages, formData } = props;
let { t, lang } = useTranslation();
@@ -90,25 +116,87 @@ let Home = (props) => {
(key) => optionsTitleObj[key] === appealtypes
);
//console.log(formTitle);
const getFormType = (appealType) => {
switch (appealType) {
case "adverts":
return <AdvertsForm props={props} />;
case "callinss77":
return <Callinss77Form props={props} />;
case "commonland":
return <CommonLandForm props={props} />;
case "communityinfrastructurelevys117118119":
return (
<CommunityInfrastructureLevys117118119Form props={props} />
);
case "compulsorypurchaseorders":
return <CompulsoryPurchaseOrdersForm props={props} />;
case "dns":
return <DNSForm props={props} />;
case "electricityact":
return <ElectricityActForm props={props} />;
case "enforcementlistedbuildingconservationap":
return (
<EnforcementListedBuildingConservationapForm
props={props}
/>
);
case "enforcementnoticeappeals174":
return <EnforcementNoticeAppeals174Form props={props} />;
case "environmentalpermitting":
return <EnvironmentalPermittingForm props={props} />;
case "harbourrevisionorder":
return <HarbourRevisionOrderForm props={props} />;
case "harbourrhedgeshedgerowstreepreservationreplacemevisionorder":
return (
<HedgesHedgerowsTreePreservationReplacemForm
props={props}
/>
);
case "householderappealhas":
return <HouseholderAppealHasForm props={props} />;
case "lawfuldevelopmentcertificate":
return <LawfulDevelopmentCertificateForm props={props} />;
// crm api query for looking up picklist fields/drop downs
// <url path to >/api/data/v8.2/EntityDefinitions(LogicalName='{appeal type form}')/Attributes(LogicalName='{drop down datafield name}')/Microsoft.Dynamics.CRM.PicklistAttributeMetadata?$select=LogicalName&$expand=GlobalOptionSet($select=Options)
// eg https://devcrm2016.llcdt.gov.wales/DVPINS/api/data/v8.2/EntityDefinitions(LogicalName='pinswg_householderappealhas')/Attributes(LogicalName='pinswg_casetype')/Microsoft.Dynamics.CRM.PicklistAttributeMetadata?$select=LogicalName&$expand=GlobalOptionSet($select=Options)
// query for labels in section eg for section 2 - /form/tabs/tab[2]//rows//labels
// query for getting guids of form element types /form/tabs/tab[*]//rows/row//control[@classid]/@classid
//
// 270BD3DB-D9AF-4782-9025-509E298DEC0A - read only
// 3EF39988-22BB-4f0b-BBBE-64B5A3748AEE - drop down list controlled by datafieldname for content - datafieldname picklist entity
// 67FAC785-CD58-4f9f-ABB3-4B7DDC6ED5ED - boolean flag / yes no radio button
// 4273EDBD-AC1D-40d3-9FB2-095C621B552D - text field
// 5B773807-9FB2-42db-97C3-7A91EFF8ADFF - date field
// E0DECE4B-6FC8-4a8f-A065-082708572369 - multiline
// C6D124CA-7EDA-4a60-AEA9-7FB8D318B68F - numeric field
// C3EFE0C3-0EC6-42be-8349-CBD9079DFD8E - decimal
case "ldp":
return <LdpForm props={props} />;
/// to get dropdowns names
// form/tabs/tab[*]//rows/row//control[@classid="{3EF39988-22BB-4f0b-BBBE-64B5A3748AEE}"]/@datafieldname
case "listedbuildingandconservationareaconsen":
return (
<ListedBuildingAndConservationAreaConsenForm
props={props}
/>
);
case "maintenanceoflands217":
return <MaintenanceOfLands217Form props={props} />;
case "miscellaneouscasework":
return <MiscellaneousCaseworkForm props={props} />;
case "nonvalidation":
return <NonValidationForm props={props} />;
case "planningappeals78":
return <PlanningAppeals78Form props={props} />;
case "planningconditionss73s79":
return <PlanningConditionss73s79Form props={props} />;
case "planningobligationappeals106":
return <PlanningObligationAppeals106Form props={props} />;
case "row":
return <RowForm props={props} />;
case "transportandworkact":
return <TransportAndWorkActForm props={props} />;
case "wayleave":
return <WayleaveForm props={props} />;
default:
return <Blank />;
}
re;
};
const { onSubmit } = props;
@@ -147,16 +235,19 @@ let Home = (props) => {
}
/>
) : (
<BuildSection
formXML={formXML}
sectionCount={sectionCount}
onSubmit={onSubmit}
formTitle={formTitle}
mandatoryFieldsData={
props.formData.mandatoryFieldsData
}
props={props}
/>
<>
<BuildSection
formXML={formXML}
sectionCount={sectionCount}
onSubmit={onSubmit}
formTitle={formTitle}
mandatoryFieldsData={
props.formData.mandatoryFieldsData
}
props={props}
/>
{/* {getFormType(appealtypes)} */}
</>
)}
</main>
</div>
+1 -6
View File
@@ -36,11 +36,6 @@ import {
import { setLPA } from "../../store/lpa/action";
const Home = (props) => {
// useEffect(() => {
// // updateCase("3ffcf47c-5811-ec11-aac9-00224800be9c", "846040004");
// createCase();
// });
const { footerLinks, pages, formData } = props;
let { t, lang } = useTranslation();
@@ -69,7 +64,7 @@ const Home = (props) => {
id="main-content"
role="main"
>
<h1>New Appeal</h1>
<h1>{t("newappeal:page-title")}</h1>
<CreateCase
LPAData={props.LPAData}
appealType={props.setAppealType}