Merged PR 1400: PII-UAT defects 290125

Related work items: #12956
This commit is contained in:
Robert Bond
2025-01-30 14:13:52 +00:00
15 changed files with 402 additions and 195 deletions
+29 -10
View File
@@ -271,7 +271,19 @@ let MakeRepresentation = (props) => {
resultsObj = resultsObj[0]; resultsObj = resultsObj[0];
detailsObj = jsonpath( detailsObj = router.query.hasOwnProperty("state")
? router.query.state == "edit"
? jsonpath(
'$..[?(@.repfile_name =="' + router.query.created + '")]',
setCaseDetailsObj
)
: jsonpath(
'$..[?(@.pinswg_name =="' +
currentView.caseReference.currentReference +
'")]',
setCaseDetailsObj
)
: jsonpath(
'$..[?(@.pinswg_name =="' + '$..[?(@.pinswg_name =="' +
currentView.caseReference.currentReference + currentView.caseReference.currentReference +
'")]', '")]',
@@ -409,12 +421,11 @@ let MakeRepresentation = (props) => {
const whichControl = () => { const whichControl = () => {
if ( if (
isLPA && isLPA &&
_.isEmpty( _.isEmpty(currentView.representationCapacity)
currentView.representationCapacity || // ||
(currentView.caseReference.hasOwnProperty("repDetails") && // (isLPA &&
currentView.caseReference.repDetails // currentView.caseReference.hasOwnProperty("repDetails") &&
.representationCapacity) // !currentView.caseReference.repDetails.representationCapacity)
)
) { ) {
return ( return (
//setRepresentationCapacity("LPA"), //setRepresentationCapacity("LPA"),
@@ -502,7 +513,7 @@ let MakeRepresentation = (props) => {
// setRepresentationCapacity("LPA"); // setRepresentationCapacity("LPA");
// }, []); // }, []);
// console.log(currentView.caseReference.appealType); console.log(currentView.caseReference.appealType);
return ( return (
<RepLPA <RepLPA
formObj={formObj} formObj={formObj}
@@ -789,10 +800,14 @@ let MakeRepresentation = (props) => {
"_pinswg_appellant_value@OData.Community.Display.V1.FormattedValue" "_pinswg_appellant_value@OData.Community.Display.V1.FormattedValue"
], ],
"_pinswg_localplanningauthority_value": "_pinswg_localplanningauthority_value":
detailsObj["_pinswg_localplanningauthority_value"], detailsObj["_pinswg_localplanningauthority_value"] ||
detailsObj["_pinswg_associatedlpa_value"],
"_pinswg_localplanningauthority_value@OData.Community.Display.V1.FormattedValue": "_pinswg_localplanningauthority_value@OData.Community.Display.V1.FormattedValue":
detailsObj[ detailsObj[
"_pinswg_localplanningauthority_value@OData.Community.Display.V1.FormattedValue" "_pinswg_localplanningauthority_value@OData.Community.Display.V1.FormattedValue"
] ||
detailsObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
], ],
"representationCapacity": router.query.hasOwnProperty("state") "representationCapacity": router.query.hasOwnProperty("state")
? router.query.state == "edit" ? router.query.state == "edit"
@@ -970,10 +985,14 @@ let MakeRepresentation = (props) => {
"_pinswg_appellant_value@OData.Community.Display.V1.FormattedValue" "_pinswg_appellant_value@OData.Community.Display.V1.FormattedValue"
], ],
"_pinswg_localplanningauthority_value": "_pinswg_localplanningauthority_value":
detailsObj["_pinswg_localplanningauthority_value"], detailsObj["_pinswg_localplanningauthority_value"] ||
detailsObj["_pinswg_associatedlpa_value"],
"_pinswg_localplanningauthority_value@OData.Community.Display.V1.FormattedValue": "_pinswg_localplanningauthority_value@OData.Community.Display.V1.FormattedValue":
detailsObj[ detailsObj[
"_pinswg_localplanningauthority_value@OData.Community.Display.V1.FormattedValue" "_pinswg_localplanningauthority_value@OData.Community.Display.V1.FormattedValue"
] ||
detailsObj[
"_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue"
], ],
"representationCapacity": router.query.hasOwnProperty("state") "representationCapacity": router.query.hasOwnProperty("state")
? router.query.state == "edit" ? router.query.state == "edit"
@@ -8,7 +8,16 @@ import RepComplete from "./representationComplete";
import RepLPAQuestionnaireCheck_enforcement from "./representationQuestionnairesCheck/representationLPAQuestionnaireCheck_enforcement"; import RepLPAQuestionnaireCheck_enforcement from "./representationQuestionnairesCheck/representationLPAQuestionnaireCheck_enforcement";
import RepLPAQuestionnaireCheck_s78 from "./representationQuestionnairesCheck/representationLPAQuestionnaireCheck_s78"; import RepLPAQuestionnaireCheck_s78 from "./representationQuestionnairesCheck/representationLPAQuestionnaireCheck_s78";
import Link from "next/link"; import Link from "next/link";
import { bytesToSize, getThumbnailIconByExtension } from "../../utils"; import {
bytesToSize,
getThumbnailIconByExtension,
formatDates,
} from "../../utils";
import {
setCurrentReference,
setCurrentView,
} from "../../../store/currentView/action";
const RepCompleteSubmit = (props) => { const RepCompleteSubmit = (props) => {
let { t } = useTranslation(); let { t } = useTranslation();
@@ -30,6 +39,7 @@ const RepCompleteSubmit = (props) => {
showQuestionnaireSection, showQuestionnaireSection,
questionnaireCount, questionnaireCount,
finaliseAppealProcess, finaliseAppealProcess,
setCurrentReference,
} = props; } = props;
const { acceptedFiles, getRootProps, getInputProps } = useDropzone(); const { acceptedFiles, getRootProps, getInputProps } = useDropzone();
const files = acceptedFiles.map((file) => ( const files = acceptedFiles.map((file) => (
@@ -203,6 +213,34 @@ const RepCompleteSubmit = (props) => {
}); });
let filterFiles = []; let filterFiles = [];
function showRepsEnded(endDate) {
let date = new Date();
date = new Date(date.toDateString());
const end = new Date(endDate);
return end > date ? false : true;
}
const checkRepDatePassed = () => {
if (repFormData.representationType == "Questionnaire") {
return false;
} else {
if (repFormData.representationType == "Final comments") {
return repFormData.hasOwnProperty(
"pinswg_finalcommentsduedate"
) && showRepsEnded(repFormData.pinswg_finalcommentsduedate)
? true
: false;
}
if (repFormData.representationType == "Statement") {
return repFormData.hasOwnProperty("pinswg_statementduedate") &&
showRepsEnded(repFormData.pinswg_statementduedate)
? true
: false;
}
}
};
return ( return (
<> <>
{currentView.representationSubmitConfirmation == true ? ( {currentView.representationSubmitConfirmation == true ? (
@@ -291,7 +329,24 @@ const RepCompleteSubmit = (props) => {
className="govuk-link" className="govuk-link"
href="#" href="#"
onClick={() => { onClick={() => {
setSubmitBack(); // setSubmitBack();
setCurrentReference({
"ticketnumber":
repFormData.ticketnumber,
"currentReference":
repFormData.caseRef,
"currentType":
"myRepresentations",
"incidentid":
repFormData.incidentID,
"appealType":
repFormData.appealType,
"repDetails":
repFormData,
});
setRepresentationSubmit(
false
);
}} }}
> >
{t( {t(
@@ -326,7 +381,26 @@ const RepCompleteSubmit = (props) => {
className="govuk-link" className="govuk-link"
href="#" href="#"
onClick={() => { onClick={() => {
setSubmitBack(); // setSubmitBack();
setCurrentReference(
{
"ticketnumber":
repFormData.ticketnumber,
"currentReference":
repFormData.caseRef,
"currentType":
"myRepresentations",
"incidentid":
repFormData.incidentID,
"appealType":
repFormData.appealType,
"repDetails":
repFormData,
}
);
setRepresentationSubmit(
false
);
}} }}
> >
{t( {t(
@@ -365,7 +439,25 @@ const RepCompleteSubmit = (props) => {
className="govuk-link" className="govuk-link"
href="#" href="#"
onClick={() => { onClick={() => {
setSubmitBack(); // setSubmitBack();
setCurrentReference({
"ticketnumber":
repFormData.ticketnumber,
"currentReference":
repFormData.caseRef,
"currentType":
"myRepresentations",
"incidentid":
repFormData.incidentID,
"appealType":
repFormData.appealType,
"repDetails":
repFormData,
});
setRepresentationSubmit(
false
);
}} }}
> >
{t("common:change-link-label")} {t("common:change-link-label")}
@@ -427,7 +519,23 @@ const RepCompleteSubmit = (props) => {
setRepresentationSubmit( setRepresentationSubmit(
false false
)) ))
: setSubmitBack(); : (setCurrentReference({
"ticketnumber":
repFormData.ticketnumber,
"currentReference":
repFormData.caseRef,
"currentType":
"myRepresentations",
"incidentid":
repFormData.incidentID,
"appealType":
repFormData.appealType,
"repDetails":
repFormData,
}),
setRepresentationSubmit(
false
));
}} }}
> >
{t("common:change-link-label")} {t("common:change-link-label")}
@@ -451,7 +559,6 @@ const RepCompleteSubmit = (props) => {
"myrepresentations:rep-check-tandc-para-one" "myrepresentations:rep-check-tandc-para-one"
)} )}
</p> </p>
<p> <p>
{t( {t(
"myrepresentations:rep-check-tandc-para-two" "myrepresentations:rep-check-tandc-para-two"
@@ -466,25 +573,47 @@ const RepCompleteSubmit = (props) => {
</Link> </Link>
. .
</p> </p>
<p> <p>
{t( {t(
"myrepresentations:rep-check-tandc-para-three" "myrepresentations:rep-check-tandc-para-three"
)} )}
</p> </p>
{checkRepDatePassed() ? (
{finaliseAppealProcess ? ( <div className="govuk-warning-text noticebanner">
<strong className="govuk-warning-text__text">
<span className="govuk-visually-hidden">
Warning
</span>
</strong>
<div>
<div className=" govuk-body-s">
<h2 className="govuk-heading-s">
{t(
"myrepresentations:rep-period-passed-heading"
)}
</h2>
<p className="govuk-body-s">
{t(
"myrepresentations:rep-period-notice-label"
)}
</p>
</div>
</div>
</div>
) : finaliseAppealProcess ? (
<div className=""> <div className="">
<h3 className="govuk-heading-m govuk-!-margin-top-9"> <h3 className="govuk-heading-m govuk-!-margin-top-9">
Finalising your representation {t(
submission "myrepresentations:rep-finalising-heading"
)}
</h3> </h3>
<p className="govuk-body"> <p className="govuk-body">
Currenly uploading files and finalising {t(
your representation submission "myrepresentations:rep-finalising-label"
)}
</p> </p>
<p className="govuk-body textloading"> <p className="govuk-body textloading">
Please wait {t("myrepresentations:rep-wait-label")}
</p> </p>
</div> </div>
) : ( ) : (
@@ -573,7 +702,11 @@ const mapStateToProps = (state) => {
}; };
const mapDispatchToProps = (dispatch) => { const mapDispatchToProps = (dispatch) => {
return {}; return {
setCurrentReference: (currentReference) => {
dispatch(setCurrentReference(currentReference));
},
};
}; };
export default connect(mapStateToProps, mapDispatchToProps)(RepCompleteSubmit); export default connect(mapStateToProps, mapDispatchToProps)(RepCompleteSubmit);
@@ -21,6 +21,8 @@ import {
setRepresentationCapacity, setRepresentationCapacity,
setRepresentationSubmit, setRepresentationSubmit,
setFilesForRepresentations, setFilesForRepresentations,
setCurrentPage,
setCurrentReference,
} from "../../../store/currentView/action"; } from "../../../store/currentView/action";
let RepLPA = (props) => { let RepLPA = (props) => {
@@ -611,6 +613,9 @@ const mapDispatchToProps = (dispatch) => ({
setFilesForRepresentations: (fileList) => { setFilesForRepresentations: (fileList) => {
dispatch(setFilesForRepresentations(fileList)); dispatch(setFilesForRepresentations(fileList));
}, },
setCurrentReference: (currentReference) => {
dispatch(setCurrentReference(currentReference));
},
}); });
const mapStateToProps = (state, props) => { const mapStateToProps = (state, props) => {
+14 -11
View File
@@ -56,9 +56,13 @@ const TopThree = (props) => {
let showTopThreeArr = showTopThree.value; let showTopThreeArr = showTopThree.value;
Object.keys(showTopThreeArr).map((key, index) => { Object.keys(showTopThreeArr).map((key, index) => {
let createdDate = parseInt( let createdDate = showTopThreeArr[key].repfile_name.split("_-_");
showTopThreeArr[key].repfile_name.split("-")[3] createdDate =
); createdDate[0].replace(
/(?<=\d{4}-\d{2}-\d{2})-(?=\d{2}:\d{2}:\d{2})/,
"T"
) + "Z";
showTopThreeArr[key].createdDate = createdDate; showTopThreeArr[key].createdDate = createdDate;
}); });
@@ -163,18 +167,17 @@ const TopThree = (props) => {
}; };
const repRaisedDate = (datePart) => { const repRaisedDate = (datePart) => {
var dateStr = datePart.split("_-_")[0];
var timeStr = dateStr.split("-")[3];
var dateObj = new Date( var dateObj = new Date(
datePart.split("-")[0] + dateStr.split("-")[0] +
"-" + "-" +
datePart.split("-")[1] + dateStr.split("-")[1] +
"-" + "-" +
datePart.split("-")[2] + dateStr.split("-")[2] +
" " + " " +
datePart.split("-")[3].split("_")[0].slice(0, 2) + timeStr
":" +
datePart.split("-")[3].split("_")[0].slice(2, 4) +
":" +
datePart.split("-")[3].split("_")[0].slice(4, 6)
); );
return dateObj.toLocaleString(); return dateObj.toLocaleString();
+24 -7
View File
@@ -148,14 +148,17 @@ const ViewAllResults = (props) => {
<b> {t("myportal:appeal-pending-label")}</b> <b> {t("myportal:appeal-pending-label")}</b>
</div> </div>
) : ( ) : (
<>
<Link <Link
href={ href={
currentView.viewKey == "myRepresentations" currentView.viewKey ==
"myRepresentations"
? { ? {
pathname: pathname:
"/myportal/representation", "/myportal/representation",
query: { query: {
case: resultsArr[key].caseRef, case: resultsArr[key]
.caseRef,
state: "edit", state: "edit",
created: created:
resultsArr[key] resultsArr[key]
@@ -208,7 +211,8 @@ const ViewAllResults = (props) => {
), ),
setCurrentReference({ setCurrentReference({
"ticketnumber": "ticketnumber":
resultsArr[key].ticketnumber, resultsArr[key]
.ticketnumber,
"currentReference": "currentReference":
currentView.viewKey != currentView.viewKey !=
"watchedCases" "watchedCases"
@@ -222,11 +226,13 @@ const ViewAllResults = (props) => {
"_pinswg_watchedcase_value@OData.Community.Display.V1.FormattedValue" "_pinswg_watchedcase_value@OData.Community.Display.V1.FormattedValue"
], ],
"currentType": currentView.viewKey, "currentType":
currentView.viewKey,
"incidentid": "incidentid":
currentView.viewKey != currentView.viewKey !=
"watchedCases" "watchedCases"
? resultsArr[key].incidentid ? resultsArr[key]
.incidentid
: resultsArr[key][ : resultsArr[key][
"_pinswg_watchedcase_value" "_pinswg_watchedcase_value"
], ],
@@ -240,7 +246,8 @@ const ViewAllResults = (props) => {
resultsArr[key], resultsArr[key],
}), }),
setCurrentView({ setCurrentView({
"viewName": currentView.viewName, "viewName":
currentView.viewName,
"viewKey": currentView.viewKey, "viewKey": currentView.viewKey,
}); });
}} }}
@@ -252,13 +259,23 @@ const ViewAllResults = (props) => {
: :
</span> </span>
{currentView.viewKey != "watchedCases" {currentView.viewKey != "watchedCases"
? currentView.viewKey == "myRepresentations" ? currentView.viewKey ==
"myRepresentations"
? resultsArr[key].caseRef ? resultsArr[key].caseRef
: resultsArr[key].ticketnumber : resultsArr[key].ticketnumber
: resultsArr[key][ : resultsArr[key][
"_pinswg_watchedcase_value@OData.Community.Display.V1.FormattedValue" "_pinswg_watchedcase_value@OData.Community.Display.V1.FormattedValue"
]} ]}
</Link> </Link>
{currentView.viewKey == "myRepresentations" && (
<>
<br />
<span>
{resultsArr[key].representationType}
</span>
</>
)}
</>
)} )}
</dd> </dd>
{/* <dd className="govuk-summary-list__value govuk-!-font-size-16"> {/* <dd className="govuk-summary-list__value govuk-!-font-size-16">
+5 -4
View File
@@ -248,13 +248,14 @@ let BuildCheckSection = (props) => {
{finaliseAppealProcess ? ( {finaliseAppealProcess ? (
<div className=""> <div className="">
<h3 className="govuk-heading-m govuk-!-margin-top-9"> <h3 className="govuk-heading-m govuk-!-margin-top-9">
Finalising your appeal submission {t("newappeal:new-appeal-finalising-heading")}
</h3> </h3>
<p className="govuk-body"> <p className="govuk-body">
Currenly uploading files and finalising your appeal {t("newappeal:new-appeal-finalising-label")}
submission </p>
<p className="govuk-body textloading">
{t("newappeal:new-appeal-wait-label")}
</p> </p>
<p className="govuk-body textloading">Please wait</p>
</div> </div>
) : ( ) : (
<> <>
+8
View File
@@ -489,6 +489,13 @@ export const AppealRow_pdf = (props) => {
{props.props.hasOwnProperty( {props.props.hasOwnProperty(
datafieldname[0].value datafieldname[0].value
) && ) &&
props.props[
datafieldname[0].value
] == null ? (
<View>
<Text>N/A</Text>
</View>
) : (
props.props[ props.props[
datafieldname[0] datafieldname[0]
.value .value
@@ -535,6 +542,7 @@ export const AppealRow_pdf = (props) => {
"" ""
); );
} }
)
)} )}
</View> </View>
</View> </View>
+36 -13
View File
@@ -561,14 +561,23 @@ export const updateLinks = (jsonObj) => {
// Find all text nodes in the document // Find all text nodes in the document
const walk = (node) => { const walk = (node) => {
if (node.nodeType === Node.TEXT_NODE) { if (node.nodeType === Node.TEXT_NODE) {
// Check if the text node contains a URL (simple check for a URL pattern)
const urlRegex = const urlRegex =
/(?:https?:\/\/)?(?:www\.)?([a-zA-Z0-9.-]+\.[a-zA-Z]{2,})(\/[^\s]*)?/g; /(?:https?:\/\/)?(?:www\.)?([a-zA-Z0-9.-]+\.[a-zA-Z]{2,})(\/[^\s]*)?/g;
let match; let match;
let currentText = node.textContent;
let lastIndex = 0;
let newNodeContent = [];
// Process the text node if it contains a URL // Process all URLs found in the current text node
while ((match = urlRegex.exec(node.textContent)) !== null) { while ((match = urlRegex.exec(currentText)) !== null) {
// Construct the full URL by adding the protocol if missing, and the domain and path // Before the URL
if (match.index > lastIndex) {
newNodeContent.push(
currentText.slice(lastIndex, match.index)
);
}
// Construct the full URL (default to https://)
let fullUrl = match[0]; let fullUrl = match[0];
if ( if (
!fullUrl.startsWith("http://") && !fullUrl.startsWith("http://") &&
@@ -577,21 +586,35 @@ export const updateLinks = (jsonObj) => {
fullUrl = `https://${match[1]}${match[2] || ""}`; // Default to https fullUrl = `https://${match[1]}${match[2] || ""}`; // Default to https
} }
// Check if the match is already inside an <a> tag, if so, skip it // Create the anchor element
if (node.parentNode.tagName !== "A") {
const anchor = document.createElement("a"); const anchor = document.createElement("a");
anchor.href = fullUrl; anchor.href = fullUrl;
anchor.textContent = match[0]; anchor.textContent = match[0];
// Add rel="noopener noreferrer" for security
anchor.setAttribute("rel", "noopener noreferrer"); anchor.setAttribute("rel", "noopener noreferrer");
// Replace the URL with the anchor element in the text node // Add the anchor tag to the node content
const range = document.createRange(); newNodeContent.push(anchor);
range.selectNodeContents(node);
range.deleteContents(); // Update the last index processed
range.insertNode(anchor); lastIndex = urlRegex.lastIndex;
} }
// Add the remaining text after the last URL
if (lastIndex < currentText.length) {
newNodeContent.push(currentText.slice(lastIndex));
}
// If there were any replacements, update the text node
if (newNodeContent.length > 0) {
const fragment = document.createDocumentFragment();
newNodeContent.forEach((item) => {
if (typeof item === "string") {
fragment.appendChild(document.createTextNode(item));
} else {
fragment.appendChild(item);
}
});
node.parentNode.replaceChild(fragment, node);
} }
} }
+1 -19
View File
@@ -159,31 +159,13 @@
{ {
"LogicalCollectionName": "pinswg_enforcementlistedbuildingconservationaps", "LogicalCollectionName": "pinswg_enforcementlistedbuildingconservationaps",
"LogicalName": "pinswg_enforcementlistedbuildingconservationap", "LogicalName": "pinswg_enforcementlistedbuildingconservationap",
"PrimaryIdAttribute": "pinswg_enforcementlistedbuildingconseid", "PrimaryIdAttribute": "pinswg_enforcementlistedbuildingconservationapid",
"UrlName": "enforcementlistedbuildingconservationap",
"MetadataId": "c697be96-9481-eb11-aac0-00224800be9c",
"appealTypeID": "846040006",
"NavigationProperty": "pinswg_EnforcementListedBuildingConseIds"
},
{
"LogicalCollectionName": "pinswg_enforcementlistedbuildingconservationaps",
"LogicalName": "pinswg_enforcementlistedbuildingandconservationappeals39",
"PrimaryIdAttribute": "pinswg_enforcementlistedbuildingconseid",
"UrlName": "enforcementlistedbuildingconservationap", "UrlName": "enforcementlistedbuildingconservationap",
"MetadataId": "c697be96-9481-eb11-aac0-00224800be9c", "MetadataId": "c697be96-9481-eb11-aac0-00224800be9c",
"appealTypeID": "846040006", "appealTypeID": "846040006",
"NavigationProperty": "pinswg_EnforcementListedBuildingConseIds", "NavigationProperty": "pinswg_EnforcementListedBuildingConseIds",
"value": "Enforcement Listed Building and Conservation Appeal - S39" "value": "Enforcement Listed Building and Conservation Appeal - S39"
}, },
{
"LogicalCollectionName": "pinswg_enforcementlistedbuildingconservationaps",
"LogicalName": "pinswg_enforcementlistedbuildingandconservationap",
"PrimaryIdAttribute": "pinswg_enforcementlistedbuildingconseid",
"UrlName": "enforcementlistedbuildingconservationap",
"MetadataId": "c697be96-9481-eb11-aac0-00224800be9c",
"appealTypeID": "846040006",
"NavigationProperty": "pinswg_EnforcementListedBuildingConseIds"
},
{ {
"LogicalCollectionName": "pinswg_callinss77s", "LogicalCollectionName": "pinswg_callinss77s",
"LogicalName": "pinswg_callinss77", "LogicalName": "pinswg_callinss77",
+1 -1
View File
@@ -83,7 +83,7 @@
"further-details-title": "Mae angen rhagor o fanylion", "further-details-title": "Mae angen rhagor o fanylion",
"further-details-header": "Ni allwch fewngofnodi ar hyn o bryd", "further-details-header": "Ni allwch fewngofnodi ar hyn o bryd",
"further-details-para-one": "Mae angen i PEDW gadarnhau ychydig mwy o wybodaeth amdanoch cyn y gallwch barhau.", "further-details-para-one": "Mae angen i PEDW gadarnhau ychydig mwy o wybodaeth amdanoch cyn y gallwch barhau.",
"further-details-para-two": "Ffoniwch 01234 567890 neu cysylltwch â ni ar ", "further-details-para-two": "Ffoniwch 0300 123 1590 neu cysylltwch â ni ar ",
"login-modal-message": "Mae eich sesiwn ar fin dod i ben mewn {{remaining}} eiliad oherwydd anweithgarwch. Byddwch yn cael eich ailgyfeirio i'r dudalen fewngofnodi.", "login-modal-message": "Mae eich sesiwn ar fin dod i ben mewn {{remaining}} eiliad oherwydd anweithgarwch. Byddwch yn cael eich ailgyfeirio i'r dudalen fewngofnodi.",
"login-modal-button": "Arhoswch wedi mewngofnodi" "login-modal-button": "Arhoswch wedi mewngofnodi"
} }
+6 -1
View File
@@ -229,5 +229,10 @@
"is-required-label": "Yn ofynnol", "is-required-label": "Yn ofynnol",
"select-a-date-label": "Dewiswch ddyddiad", "select-a-date-label": "Dewiswch ddyddiad",
"questionnaire-evidence-label": "Tystiolaeth", "questionnaire-evidence-label": "Tystiolaeth",
"questionnaire-hint-para": "Cwblhewch yr Holiadur canlynol. Os oes angen atodi dogfennau mewn ymateb i unrhyw gwestiynau, gallwch eu huwchlwytho yn y cam 'Ychwanegu eich ffeiliau'." "questionnaire-hint-para": "Cwblhewch yr Holiadur canlynol. Os oes angen atodi dogfennau mewn ymateb i unrhyw gwestiynau, gallwch eu huwchlwytho yn y cam 'Ychwanegu eich ffeiliau'.",
"rep-finalising-heading": "Cwblhau eich cyflwyniad sylwadau ",
"rep-finalising-label": "Wrthi'n uwchlwytho ffeiliau ar hyn o bryd ac yn cwblhau eich cyflwyniad cynrychioliad ",
"rep-wait-label": "Arhoswch os gwelwch yn dda",
"rep-period-passed-heading": "Mae'r cyfnod cynrychioli wedi mynd heibio",
"rep-period-notice-label": "Aeth y dyddiad dyledus ar gyfer y sylw hwn heibio. Ni allwch gyflwyno'r wybodaeth a ddarparwyd gennych mwyach."
} }
+4 -1
View File
@@ -113,5 +113,8 @@
"planning-obligation-(s106/unilateral)": "Rhwymedigaeth gynllunio (S106/Unochrog)", "planning-obligation-(s106/unilateral)": "Rhwymedigaeth gynllunio (S106/Unochrog)",
"site-location-plan": "Cynllun Lleoliad Safle", "site-location-plan": "Cynllun Lleoliad Safle",
"registration-of-application-letter": "Llythyr Cofrestru Cais", "registration-of-application-letter": "Llythyr Cofrestru Cais",
"previously-added-files": "Ffeiliau wedi'u llwytho i fyny" "previously-added-files": "Ffeiliau wedi'u llwytho i fyny",
"new-appeal-finalising-heading": "Cwblhau cyflwyniad eich apêl",
"new-appeal-finalising-label": "Wrthi'n uwchlwytho ffeiliau ar hyn o bryd a chwblhau eich cyflwyniad apêl",
"new-appeal-wait-label": "Arhoswch os gwelwch yn dda"
} }
+2 -2
View File
@@ -82,8 +82,8 @@
"error-instruction-label": "If you are unable to view your recent activity, press Ctrl, Shift and R to refresh your browser (or Cmd and R if you are using a Mac).", "error-instruction-label": "If you are unable to view your recent activity, press Ctrl, Shift and R to refresh your browser (or Cmd and R if you are using a Mac).",
"further-details-title": "Further details required", "further-details-title": "Further details required",
"further-details-header": "You can not be logged in at this time", "further-details-header": "You can not be logged in at this time",
"further-details-para-one": "PEDW needs to confirm a bit more informtion about you before you can continue.", "further-details-para-one": "PEDW needs to confirm a bit more information about you before you can continue.",
"further-details-para-two": "Please call 01234 567890 or contact us on ", "further-details-para-two": "Please call 0300 123 1590 or contact us on ",
"login-modal-message": "Your session is about to expire in {{remaining}} seconds due to inactivity. You will be redirected to the login page.", "login-modal-message": "Your session is about to expire in {{remaining}} seconds due to inactivity. You will be redirected to the login page.",
"login-modal-button": "Stay logged in " "login-modal-button": "Stay logged in "
} }
+6 -1
View File
@@ -229,5 +229,10 @@
"is-required-label": "Is required", "is-required-label": "Is required",
"select-a-date-label": "Select a date", "select-a-date-label": "Select a date",
"questionnaire-evidence-label": "Evidence", "questionnaire-evidence-label": "Evidence",
"questionnaire-hint-para": "Please complete the following Questionnaire. If you need to attach documents in response to any questions, you can upload them in the 'Add your files' step." "questionnaire-hint-para": "Please complete the following Questionnaire. If you need to attach documents in response to any questions, you can upload them in the 'Add your files' step.",
"rep-finalising-heading": "Finalising your representation submission",
"rep-finalising-label": "Currently uploading files and finalising your representation submission",
"rep-wait-label": "Please wait",
"rep-period-passed-heading": "Representation period has passed",
"rep-period-notice-label": "The due date for this representation passed. You can no longer submit the information you have provided."
} }
+4 -1
View File
@@ -113,5 +113,8 @@
"planning-obligation-(s106/unilateral)": "Planning obligation (S106/Unilateral)", "planning-obligation-(s106/unilateral)": "Planning obligation (S106/Unilateral)",
"site-location-plan": "Site Location Plan", "site-location-plan": "Site Location Plan",
"registration-of-application-letter": "Registration of Application letter", "registration-of-application-letter": "Registration of Application letter",
"previously-added-files": "Uploaded files" "previously-added-files": "Uploaded files",
"new-appeal-finalising-heading": "Finalising your appeal submission",
"new-appeal-finalising-label": "Currently uploading files and finalising your appeal submission",
"new-appeal-wait-label": "Please wait"
} }