Merged PR 1436: SIPs Sprint 1 200225

Related work items: #14086, #14244
This commit is contained in:
Robert Bond
2025-02-21 09:21:07 +00:00
18 changed files with 435 additions and 369 deletions
+2 -2
View File
@@ -301,7 +301,7 @@ export const getBasicDNSURLSearch = (searchString) => {
}); });
}; };
export const getSIPSEvents = (caseid) => { export const getSIPSEvents = async (caseid) => {
return axios return axios
.get(BASE_URL + "/api/endpoint/getsipsevents_api?caseid=" + caseid) .get(BASE_URL + "/api/endpoint/getsipsevents_api?caseid=" + caseid)
.then((res) => { .then((res) => {
@@ -389,7 +389,7 @@ export const getDNSCoords = () => {
}); });
}; };
export const getDNSList = (searchString) => { export const getDNSList = async (searchString) => {
return axios return axios
.get(BASE_URL + "/api/endpoint/getdnslist_api") .get(BASE_URL + "/api/endpoint/getdnslist_api")
.then((res) => res.data) .then((res) => res.data)
+16 -5
View File
@@ -246,6 +246,7 @@ let PersonalDetails = (props) => {
return ( return (
<> <>
<div className="govuk-form-group">
{props.accountUpdatedComplete == false ? ( {props.accountUpdatedComplete == false ? (
props.personalDetailsComplete == false ? ( props.personalDetailsComplete == false ? (
<form onSubmit={handleSubmit(onHandleSubmit)}> <form onSubmit={handleSubmit(onHandleSubmit)}>
@@ -286,7 +287,9 @@ let PersonalDetails = (props) => {
type="text" type="text"
className="govuk-input govuk-input--width-20" className="govuk-input govuk-input--width-20"
validate={[required]} validate={[required]}
label={t("account:account-first-name-label")} label={t(
"account:account-first-name-label"
)}
errorMsg={t("account:is-required-label")} errorMsg={t("account:is-required-label")}
/> />
<Field <Field
@@ -306,7 +309,9 @@ let PersonalDetails = (props) => {
type="email" type="email"
className="govuk-input govuk-input--width-20" className="govuk-input govuk-input--width-20"
validate={[required, email]} validate={[required, email]}
label={t("account:account-email-address-label")} label={t(
"account:account-email-address-label"
)}
disabled disabled
/> />
<Field <Field
@@ -324,14 +329,18 @@ let PersonalDetails = (props) => {
component={RenderTextfield} component={RenderTextfield}
type="text" type="text"
className="govuk-input govuk-input--width-20" className="govuk-input govuk-input--width-20"
label={t("account:account-company-group-label")} label={t(
"account:account-company-group-label"
)}
errorMsg={t("account:is-required-label")} errorMsg={t("account:is-required-label")}
/> />
</fieldset> </fieldset>
<fieldset className="govuk-fieldset"> <fieldset className="govuk-fieldset">
<legend className="govuk-fieldset__legend govuk-fieldset__legend--m"> <legend className="govuk-fieldset__legend govuk-fieldset__legend--m">
<h2 className="govuk-fieldset__heading"> <h2 className="govuk-fieldset__heading">
{t("account:account-your-address-label")} {t(
"account:account-your-address-label"
)}
</h2> </h2>
</legend> </legend>
@@ -399,7 +408,8 @@ let PersonalDetails = (props) => {
<Link <Link
href={ href={
"/myportal?q=" + "/myportal?q=" +
props.props.accountDetails.loggedinUserId props.props.accountDetails
.loggedinUserId
} }
className="govuk-link" className="govuk-link"
> >
@@ -423,6 +433,7 @@ let PersonalDetails = (props) => {
) : ( ) : (
<PersonalDetailsComplete props={props} /> <PersonalDetailsComplete props={props} />
)} )}
</div>
</> </>
); );
}; };
+4
View File
@@ -137,6 +137,8 @@ const RegisterForm = (props) => {
{props.accountCreatedComplete != true ? ( {props.accountCreatedComplete != true ? (
props.registerFormComplete == false ? ( props.registerFormComplete == false ? (
<form onSubmit={handleSubmit(onHandleSubmit)}> <form onSubmit={handleSubmit(onHandleSubmit)}>
<div className="card" id="personalDetailsCard">
<div className="card-body">
<fieldset className="govuk-fieldset"> <fieldset className="govuk-fieldset">
<legend className="govuk-fieldset__legend govuk-fieldset__legend--m"> <legend className="govuk-fieldset__legend govuk-fieldset__legend--m">
<h2 className="govuk-fieldset__heading"> <h2 className="govuk-fieldset__heading">
@@ -281,6 +283,8 @@ const RegisterForm = (props) => {
{t("common:continue-button")} {t("common:continue-button")}
</button> </button>
</div> </div>
</div>
</div>
</form> </form>
) : ( ) : (
<RegisterFormCheck <RegisterFormCheck
+3
View File
@@ -53,6 +53,9 @@ const Header = (props) => {
"/myportal/advancedsearch", "/myportal/advancedsearch",
"/myportal/advancedsearchresults", "/myportal/advancedsearchresults",
"/myportal/case/[ticketnumber]", "/myportal/case/[ticketnumber]",
"/account/personaldetails",
"/register",
"/myportal/searchresults",
]; ];
const hasContactLink = [ const hasContactLink = [
+1 -1
View File
@@ -73,7 +73,7 @@ const ServiceBanner = (props) => {
<div className="serviceBanner_userDetails_name"> <div className="serviceBanner_userDetails_name">
<Link <Link
href="/account/personaldetails" href="/account/personaldetails"
className="govuk-button-secondary govuk-link" className="govuk-button-secondary govuk-link--no-underline"
> >
{props.accountDetails.accountDetails.firstname}{" "} {props.accountDetails.accountDetails.firstname}{" "}
{props.accountDetails.accountDetails.lastname} {props.accountDetails.accountDetails.lastname}
+27 -14
View File
@@ -686,22 +686,35 @@ const DNSSearchResults = (props) => {
<p className="govuk-body"> <p className="govuk-body">
{t("dnsApplications:page-intro-paragraph-1")} {t("dnsApplications:page-intro-paragraph-1")}
</p> </p>
<ul className="govuk-list govuk-list--bullet"> <p className="govuk-body">
<li> {t("dnsApplications:page-intro-list-item-1")}{" "}
{" "} <a
{t("dnsApplications:page-intro-list-item-1")} href={t(
</li> "dnsApplications:page-intro-list-item-1-link"
)}
rel="noreferrer noopener"
target="_blank"
>
{t(
"dnsApplications:page-intro-list-item-1-link"
)}
</a>
</p>
<li> <p className="govuk-body">
{" "}
{t("dnsApplications:page-intro-list-item-2")} {t("dnsApplications:page-intro-list-item-2")}
</li> <a
href={t(
<li> "dnsApplications:page-intro-list-item-2-link"
{" "} )}
{t("dnsApplications:page-intro-list-item-3")} rel="noreferrer noopener"
</li> target="_blank"
</ul> >
{t(
"dnsApplications:page-intro-list-item-2-link"
)}
</a>
</p>
</div> </div>
{showMap == "true" && ( {showMap == "true" && (
+6 -4
View File
@@ -1,8 +1,10 @@
{ {
"page-title": "Ceisiadau Datblygiadau o Arwyddocâd Cenedlaethol", "page-title": "Prosiectau Isadeiledd",
"page-intro-paragraph-1": "Y ceisiadau a restrir ywr rhai:", "page-intro-paragraph-1": "Mae dau fath gwahanol o gais ar gyfer prosiectau seilwaith, sef Datblygiadau o Arwyddocâd Cenedlaethol a Phrosiectau Seilwaith Arwyddocaol.",
"page-intro-list-item-1": "Lle maer datblygwr wedi hysbysu Penderfyniadau Cynllunio ac Amgylchedd Cymru yn ysgrifenedig ei fod yn bwriadu cyflwyno cais i ni yn y dyfodol", "page-intro-list-item-1 ": " Datblygiadau o Arwyddocâd Cenedlaethol yw datblygiadau a ddiffinnir yn ",
"page-intro-list-item-2": "Lle mae cais eisoes wedi cael ei wneud i Benderfyniadau Cynllunio ac Amgylchedd Cymru ac maen mynd drwyr broses archwilio", "page-intro-list-item-1-link": "https://www.llyw.cymru/datblygiadau-o-arwyddocad-cenedlaethol-dns-ceisiadau",
"page-intro-list-item-2 ": "Mae Prosiectau Seilwaith Arwyddocaol yn ddatblygiadau sydd wedi'u diffinio (YMA)",
"page-intro-list-item-2-link": "https://www.llyw.cymru/datblygiadau-o-arwyddocad-cenedlaethol-dns-ceisiadau",
"page-intro-list-item-3": "Lle penderfynwyd ar gynnig.", "page-intro-list-item-3": "Lle penderfynwyd ar gynnig.",
"page-intro-paragraph-2": "Defnyddiwch y tabl isod i ddod o hyd i geisiadau fesul cam neu fath. Fel arall, defnyddiwch y map trwy glicio ar y marcwyr i fynd ir dudalen geisiadau. Mae rhestr o ddigwyddiadau a therfynau amser allweddol ar gyfer pob cais ar gael ar ein ", "page-intro-paragraph-2": "Defnyddiwch y tabl isod i ddod o hyd i geisiadau fesul cam neu fath. Fel arall, defnyddiwch y map trwy glicio ar y marcwyr i fynd ir dudalen geisiadau. Mae rhestr o ddigwyddiadau a therfynau amser allweddol ar gyfer pob cais ar gael ar ein ",
"page-intro-paragraph-2-link": "tudalen galendr", "page-intro-paragraph-2-link": "tudalen galendr",
+2 -2
View File
@@ -24,8 +24,8 @@
"login-card-forgotten-link": "Cliciwch yma", "login-card-forgotten-link": "Cliciwch yma",
"login-via-gov-gateway-label": "Mewngofnodwch drwy Borth y Llywodraeth", "login-via-gov-gateway-label": "Mewngofnodwch drwy Borth y Llywodraeth",
"login-via-nextuth-label": "Mewngofnodwch gyda'ch cyfeiriad e-bost", "login-via-nextuth-label": "Mewngofnodwch gyda'ch cyfeiriad e-bost",
"casesearch-card-title": "Chwilio apeliadau a Datblygiadau o Arwyddocâd Cenedlaethol", "casesearch-card-title ": "Chwilio am achos",
"casesearch-card-search-hint": "Defnyddiwch gyfeirnod yr achos neu deitl y Datblygiad o Arwyddocâd Cenedlaethol i chwilio. Bydd cyfeirnod yr achos yn debyg i un o'r canlynol:", "casesearch-card-search-hint ": "Defnyddiwch gyfeirnod yr achos neu deitl y prosiect Infrastructure i chwilio. Bydd cyfeirnod yr achos yn debyg i un o'r canlynol:",
"casesearch-card-search-example-label-1": "APP-A12345-A-21-1234567", "casesearch-card-search-example-label-1": "APP-A12345-A-21-1234567",
"casesearch-card-search-example-label-2": "CAS-12345-A1B2C3", "casesearch-card-search-example-label-2": "CAS-12345-A1B2C3",
"casesearch-card-button": "Cyflwyno chwiliad", "casesearch-card-button": "Cyflwyno chwiliad",
+2 -2
View File
@@ -15,8 +15,8 @@
"makenewappeal-card-guidance-link": "https://www.llyw.cymru/arweiniad-ar-apeliadau-cheisiadau", "makenewappeal-card-guidance-link": "https://www.llyw.cymru/arweiniad-ar-apeliadau-cheisiadau",
"makenewappeal-card-button-label": "Gwneud apêl newydd", "makenewappeal-card-button-label": "Gwneud apêl newydd",
"mycases-card-title": "Fy achosion", "mycases-card-title": "Fy achosion",
"searchcases-card-title": "Chwilio apeliadau a Datblygiadau o Arwyddocâd Cenedlaethol", "searchcases-card-title ": "Chwilio am achos",
"searchcases-card-search-hint": "Defnyddiwch gyfeirnod yr achos neu deitl y Datblygiad o Arwyddocâd Cenedlaethol i chwilio. Bydd cyfeirnod yr achos yn debyg i un o'r canlynol:", "searchcases-card-search-hint ": "Defnyddiwch gyfeirnod yr achos neu deitl y prosiect Infrastructure i chwilio. Bydd cyfeirnod yr achos yn debyg i un o'r canlynol:",
"searchcases-card-search-example-label-1": "APP-A12345-A-21-1234567", "searchcases-card-search-example-label-1": "APP-A12345-A-21-1234567",
"searchcases-card-search-example-label-2": "CAS-12345-A1B2C3", "searchcases-card-search-example-label-2": "CAS-12345-A1B2C3",
"searchcases-card-button": "Cyflwyno Chwiliad", "searchcases-card-button": "Cyflwyno Chwiliad",
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"register-new-account-heading": "Create a new account", "register-new-account-heading": "Create a new account",
"register-new-account-status-created-label": "Your account has created", "register-new-account-status-created-label": "Your account has been created",
"register-new-account-status-not-created-label": "Your account has not been created", "register-new-account-status-not-created-label": "Your account has not been created",
"register-new-account-checking-label": "Checking for account...", "register-new-account-checking-label": "Checking for account...",
"help-heading": "Help", "help-heading": "Help",
+6 -4
View File
@@ -1,8 +1,10 @@
{ {
"page-title": "Developments of National Significance Applications", "page-title": "Infrastructure Projects",
"page-intro-paragraph-1": "The applications listed are those:", "page-intro-paragraph-1": "There are two different types of application for infrastructure projects, Developments of National Significance and Significant Infrastructure Projects.",
"page-intro-list-item-1": "Where the developer has advised Planning and Environment Decisions Wales in writing that they intend to submit an application to us in the future", "page-intro-list-item-1": "Developments of National Significance are developments that are defined at",
"page-intro-list-item-2": "Where an application has already been made to Planning and Environment Decisions Wales and is undergoing the examination process", "page-intro-list-item-1-link": "https://www.gov.wales/developments-national-significance-dns-applications",
"page-intro-list-item-2": "Significant Infrastructure Projects are developments that are defined at ",
"page-intro-list-item-2-link": "https://www.gov.wales/significant-infrastructure-projects-applications",
"page-intro-list-item-3": "Where a proposal has been decided.", "page-intro-list-item-3": "Where a proposal has been decided.",
"page-intro-paragraph-2": "Use the table below to find applications by stage or type. Alternatively, use the map by clicking on the markers to go to the applications page. A list of key events and deadlines for all applications is available on our ", "page-intro-paragraph-2": "Use the table below to find applications by stage or type. Alternatively, use the map by clicking on the markers to go to the applications page. A list of key events and deadlines for all applications is available on our ",
"page-intro-paragraph-2-link": "calendar page", "page-intro-paragraph-2-link": "calendar page",
+1 -1
View File
@@ -1,5 +1,5 @@
{ {
"service-name": "Developments of National Significance", "service-name": "Infrastructure Projects",
"result-list-show-label": "Show", "result-list-show-label": "Show",
"result-list-entries-label": "entries", "result-list-entries-label": "entries",
"result-list-showing-label": "Showing {{recordIndex}} to {{pagingIndex}} of {{totalRecords}} entries", "result-list-showing-label": "Showing {{recordIndex}} to {{pagingIndex}} of {{totalRecords}} entries",
+2 -2
View File
@@ -24,8 +24,8 @@
"login-card-forgotten-link": "Click here", "login-card-forgotten-link": "Click here",
"login-via-gov-gateway-label": "Log in via Government Gateway", "login-via-gov-gateway-label": "Log in via Government Gateway",
"login-via-nextuth-label": "Sign in with your email address", "login-via-nextuth-label": "Sign in with your email address",
"casesearch-card-title": "Search appeals and Developments of National Significance", "casesearch-card-title": "Search for a case",
"casesearch-card-search-hint": "Use the case reference or DNS title to search. Case reference will be similar to one of the following:", "casesearch-card-search-hint": "Use the case reference or Infrastructure project title to search. Case reference will be similar to one of the following:",
"casesearch-card-search-example-label-1": "APP-A12345-A-21-1234567", "casesearch-card-search-example-label-1": "APP-A12345-A-21-1234567",
"casesearch-card-search-example-label-2": "CAS-12345-A1B2C3", "casesearch-card-search-example-label-2": "CAS-12345-A1B2C3",
"casesearch-card-button": "Submit search", "casesearch-card-button": "Submit search",
+2 -2
View File
@@ -15,8 +15,8 @@
"makenewappeal-card-guidance-link": "https://www.gov.wales/planning-appeals-guidance", "makenewappeal-card-guidance-link": "https://www.gov.wales/planning-appeals-guidance",
"makenewappeal-card-button-label": "Make a new appeal", "makenewappeal-card-button-label": "Make a new appeal",
"mycases-card-title": "My cases", "mycases-card-title": "My cases",
"searchcases-card-title": "Search appeals and Developments of National Significance", "searchcases-card-title": "Search for a case",
"searchcases-card-search-hint": "Use the case reference or DNS title to search. Case reference will be similar to one of the following:", "searchcases-card-search-hint": "Use the case reference or Infrastructure project title to search. Case reference will be similar to one of the following:",
"searchcases-card-search-example-label-1": "APP-A12345-A-21-1234567", "searchcases-card-search-example-label-1": "APP-A12345-A-21-1234567",
"searchcases-card-search-example-label-2": "CAS-12345-A1B2C3", "searchcases-card-search-example-label-2": "CAS-12345-A1B2C3",
"searchcases-card-button": "Submit Search", "searchcases-card-button": "Submit Search",
+17 -1
View File
@@ -6,6 +6,7 @@ import Banner from "../../components/banner";
import CookieBanner from "../../components/cookieBanner"; import CookieBanner from "../../components/cookieBanner";
import Breadcrumbs from "../../components/breadcrumbs"; import Breadcrumbs from "../../components/breadcrumbs";
import Footer from "../../components/footer"; import Footer from "../../components/footer";
import ServiceBanner from "../../components/myportal/servicebanner";
import { useSelector, shallowEqual, connect } from "react-redux"; import { useSelector, shallowEqual, connect } from "react-redux";
import { wrapper } from "../../store/store"; import { wrapper } from "../../store/store";
@@ -64,6 +65,8 @@ const Home = (props) => {
<div className="govuk-grid-column-full"> <div className="govuk-grid-column-full">
<div className="govuk-width-container"> <div className="govuk-width-container">
<Breadcrumbs slug={appealtypes} props={props} /> <Breadcrumbs slug={appealtypes} props={props} />
<ServiceBanner props={props} />
<main <main
className="govuk-main-wrapper--auto-spacing" className="govuk-main-wrapper--auto-spacing"
id="main-content" id="main-content"
@@ -71,7 +74,17 @@ const Home = (props) => {
> >
<div className="govuk-grid-row"> <div className="govuk-grid-row">
<div className="govuk-grid-column-two-thirds"> <div className="govuk-grid-column-two-thirds">
<h1>{t("account:account-title")}</h1> <div className="govuk-form-group">
<div
className="card"
id="personalDetailsCard"
>
<div className="card-body">
<h1>
{t(
"account:account-title"
)}
</h1>{" "}
<PersonalDetails <PersonalDetails
props={props} props={props}
accountUpdatedComplete={ accountUpdatedComplete={
@@ -89,6 +102,9 @@ const Home = (props) => {
/> />
</div> </div>
</div> </div>
</div>
</div>
</div>
</main> </main>
</div> </div>
</div> </div>
+3 -2
View File
@@ -6,7 +6,7 @@ import Banner from "../../components/banner";
import CookieBanner from "../../components/cookieBanner"; import CookieBanner from "../../components/cookieBanner";
import Breadcrumbs from "../../components/breadcrumbs"; import Breadcrumbs from "../../components/breadcrumbs";
import Footer from "../../components/footer"; import Footer from "../../components/footer";
import ServiceBanner from "../../components/servicebanner";
import { useSelector, shallowEqual, connect } from "react-redux"; import { useSelector, shallowEqual, connect } from "react-redux";
import { wrapper } from "../../store/store"; import { wrapper } from "../../store/store";
@@ -47,6 +47,7 @@ const Home = (props) => {
<div className="govuk-grid-column-full"> <div className="govuk-grid-column-full">
<div className="govuk-width-container"> <div className="govuk-width-container">
<Breadcrumbs slug={appealtypes} /> <Breadcrumbs slug={appealtypes} />
<ServiceBanner props={props} noSignin={true} />
<main <main
className="govuk-main-wrapper--auto-spacing" className="govuk-main-wrapper--auto-spacing"
id="main-content" id="main-content"
@@ -107,7 +108,7 @@ const Home = (props) => {
{registerFormComplete != true || {registerFormComplete != true ||
accountCreatedComplete != true ? ( accountCreatedComplete != true ? (
<div className="govuk-grid-column-one-third"> <div className="govuk-grid-column-one-third">
<h2 className="govuk-heading-m"> <h2 className="">
{t("account:help-heading")} {t("account:help-heading")}
</h2> </h2>
+8 -1
View File
@@ -92,6 +92,13 @@ export const getServerSideProps = wrapper.getServerSideProps(
store.dispatch(setSearchDetails(searchDetailsObj)); store.dispatch(setSearchDetails(searchDetailsObj));
store.dispatch(setSearch("DNS")); store.dispatch(setSearch("DNS"));
} }
return {
props: {
searchResultsObj: {
searchResultsObj: searchResultsObj,
},
},
};
} }
); );
@@ -99,7 +106,7 @@ const mapStateToProps = (state) => {
return { return {
currentView: state.currentView, currentView: state.currentView,
search: state.search, search: state.search,
searchResultsObj: state.searchResultsObj, //searchResultsObj: state.searchResultsObj,
formData: state.formData, formData: state.formData,
appealType: state.appealType, appealType: state.appealType,
form: state.form, form: state.form,
+8 -1
View File
@@ -102,6 +102,7 @@ body {
&:hover { &:hover {
background-color: $blue; background-color: $blue;
color: #eeeeee; color: #eeeeee;
text-decoration: none;
} }
} }
@@ -533,7 +534,7 @@ a.longLinkBreak {
label { label {
margin-top: 0px; margin-top: 0px;
background-color: $lightgrey_semi; background-color: $lightgrey_semi;
padding: 20px 20px 20px 50px; padding: 20px 20px 20px 20px;
&:before { &:before {
top: 18px; top: 18px;
@@ -2957,3 +2958,9 @@ ul.subFieldList {
} }
#personalDetailsCard {
.govuk-fieldset {
margin-bottom: 20px;
}
}