diff --git a/components/mapping/index.js b/components/mapping/index.js
index c218594d..390c295a 100644
--- a/components/mapping/index.js
+++ b/components/mapping/index.js
@@ -1,3 +1,4 @@
+import { he } from "date-fns/locale";
import GoogleMapReact from "google-map-react";
const GoogleMapComponent = (props) => {
const { center, zoom } = props;
@@ -21,22 +22,45 @@ const GoogleMapComponent = (props) => {
});
}
};
+
+ // console.log(
+ // "https://datamap.gov.wales/maps/pedw-dev/embed?center=" +
+ // props.center.lng +
+ // "," +
+ // props.center.lat +
+ // "&zoom=12#/"
+ // );
return (
- ModelsMap(map, maps)}
- >
+ // ModelsMap(map, maps)}
+ // >
+
+
);
};
diff --git a/pages/_document.js b/pages/_document.js
index 71b93947..b38fa74c 100644
--- a/pages/_document.js
+++ b/pages/_document.js
@@ -47,6 +47,7 @@ class MyDocument extends Document {
csp += `style-src 'self' 'unsafe-inline' https://pro.fontawesome.com/ https://www.google-analytics.com https://tagmanager.google.com/ https://www.googletagmanager.com/ https://fonts.googleapis.com/;`;
csp += `img-src 'self' 'unsafe-inline' https://maps.gstatic.com https://maps.googleapis.com https://www.gov.wales https://gov.wales https://fonts.gstatic.com https://www.googletagmanager.com https://www.google-analytics.com https://ssl.gstatic.com/ blob: data:;`;
csp += `font-src 'self' 'unsafe-inline' https://pro.fontawesome.com/ https://fonts.gstatic.com/ data:;`;
+ csp += `frame-src https://datamap.gov.wales`;
return (
diff --git a/pages/api/endpoint/getdnscoords_api.js b/pages/api/endpoint/getdnscoords_api.js
index 3bdc0b55..8b09582b 100644
--- a/pages/api/endpoint/getdnscoords_api.js
+++ b/pages/api/endpoint/getdnscoords_api.js
@@ -21,6 +21,70 @@ const hashAPIPath = (queryPath) => {
return (queryPath.indexOf("?") > -1 ? "&hash=" : "?hash=") + hashlink;
};
+const renameKeys = (obj) => {
+ const keyMappings = {
+ "pinswg_projectlocation": "location",
+ "pinswg_mapzoomlevel": "zoomLevel",
+ "pinswg_name": "projectName",
+ "pinswg_anticipatedgridreferenceeastingtext": "easting",
+ "pinswg_anticipatedgridreferencenorthingtext": "northing",
+ "pinswg_anticipatedgridrefeasting": "easting",
+ "pinswg_anticipatedgridrefnorthing": "northing",
+ "pinswg_projectname": "projectTitle",
+ "pinswg_dnsid": "dnsId",
+ "_pinswg_associatedlpa_value@OData.Community.Display.V1.FormattedValue":
+ "lpaDisplayName",
+ "_pinswg_associatedlpa_value": "lpaId",
+ "_pinswg_appellant_value@OData.Community.Display.V1.FormattedValue":
+ "appellantDisplayName",
+ "_pinswg_appellant_value": "appellantId",
+ "zoom": "mapZoom",
+ "center": "locationCenter",
+ };
+
+ let renamedObj = {};
+ Object.keys(obj).forEach((key) => {
+ // Skip keys that need to be removed
+ if (keysToRemove.includes(key)) {
+ return;
+ }
+
+ // Check if the key exists in the mapping
+ if (keyMappings[key]) {
+ renamedObj[keyMappings[key]] = obj[key];
+ } else {
+ renamedObj[key] = obj[key];
+ }
+ });
+
+ // Recursively rename keys in nested objects
+ if (obj.center) {
+ renamedObj.locationCenter = {
+ lat: obj.center.lat,
+ lng: obj.center.lng,
+ };
+ }
+
+ if (renamedObj.easting) {
+ renamedObj.easting = String(renamedObj.easting);
+ }
+ if (renamedObj.northing) {
+ renamedObj.northing = String(renamedObj.northing);
+ }
+
+ return renamedObj;
+};
+
+const keysToRemove = [
+ "_pinswg_associatedlpa_value@Microsoft.Dynamics.CRM.associatednavigationproperty",
+ "_pinswg_appellant_value@Microsoft.Dynamics.CRM.associatednavigationproperty",
+ "_pinswg_associatedlpa_value@Microsoft.Dynamics.CRM.lookuplogicalname",
+ "_pinswg_appellant_value@Microsoft.Dynamics.CRM.lookuplogicalname",
+ "pinswg_anticipatedgridrefeasting@OData.Community.Display.V1.FormattedValue",
+ "pinswg_anticipatedgridrefnorthing@OData.Community.Display.V1.FormattedValue",
+ // Add any other keys to remove here
+];
+
export default async function ApiProxy(req, res) {
var token = await getToken();
@@ -90,7 +154,15 @@ export default async function ApiProxy(req, res) {
});
// Send the merged values as the response
- return res.status(200).json(coordsObj);
+
+ const updatedData = {
+ value: coordsObj.value.map((item) => renameKeys(item)),
+ "@odata.count": coordsObj["@odata.count"],
+ };
+
+ return req.query.hasOwnProperty("fordmw")
+ ? res.status(200).json(updatedData)
+ : res.status(200).json(coordsObj);
} catch (error) {
// Catch any errors and send an error response
consoleLogger(error);
diff --git a/styles/sass/welshgov/_application.scss b/styles/sass/welshgov/_application.scss
index 87e36f36..02b49b02 100644
--- a/styles/sass/welshgov/_application.scss
+++ b/styles/sass/welshgov/_application.scss
@@ -1936,6 +1936,11 @@ ul#sharePageLinks.active {
position: absolute;
}
+
+.mappingFrame {
+ border: 1px solid $lightgrey
+}
+
//dns application view
.govuk-warning-text__icon {