diff client/src/store/map.js @ 3047:e0b77d7463e7

Changed Waterway axis and area layer to WMS.
author Raimund Renkert <raimund.renkert@intevation.de>
date Mon, 15 Apr 2019 15:15:16 +0200
parents c71373594719
children 051a3f446ac2
line wrap: on
line diff
--- a/client/src/store/map.js	Mon Apr 15 13:47:12 2019 +0200
+++ b/client/src/store/map.js	Mon Apr 15 15:15:16 2019 +0200
@@ -324,7 +324,64 @@
             }
             */
 
-            // trying the GetFeatureInfo way for WMS
+            var waterwayAxisSource = getters.openLayersMap
+              .getLayer("WATERWAYAXIS")
+              .getSource();
+            var waxisUrl = waterwayAxisSource.getGetFeatureInfoUrl(
+              event.coordinate,
+              100 /* resolution */,
+              "EPSG:3857",
+              // { INFO_FORMAT: "application/vnd.ogc.gml" } // not allowed by d4d
+              { INFO_FORMAT: "application/json" }
+            );
+
+            if (waxisUrl) {
+              // cannot directly query here because of SOP
+              HTTP.get(waxisUrl, {
+                headers: {
+                  "X-Gemma-Auth": localStorage.getItem("token")
+                }
+              }).then(response => {
+                let features = response.data.features.map(f => {
+                  let feat = new Feature({
+                    geometry: new Point(f.geometry.coordinates)
+                  });
+                  feat.setId(f.id);
+                  feat.setProperties(f.properties);
+                  return feat;
+                });
+                commit("addIdentifiedFeatures", features);
+              });
+            }
+            var waterwayAreaSource = getters.openLayersMap
+              .getLayer("WATERWAYAREA")
+              .getSource();
+            var wareaUrl = waterwayAreaSource.getGetFeatureInfoUrl(
+              event.coordinate,
+              100 /* resolution */,
+              "EPSG:3857",
+              // { INFO_FORMAT: "application/vnd.ogc.gml" } // not allowed by d4d
+              { INFO_FORMAT: "application/json" }
+            );
+
+            if (wareaUrl) {
+              // cannot directly query here because of SOP
+              HTTP.get(wareaUrl, {
+                headers: {
+                  "X-Gemma-Auth": localStorage.getItem("token")
+                }
+              }).then(response => {
+                let features = response.data.features.map(f => {
+                  let feat = new Feature({
+                    geometry: new Point(f.geometry.coordinates)
+                  });
+                  feat.setId(f.id);
+                  feat.setProperties(f.properties);
+                  return feat;
+                });
+                commit("addIdentifiedFeatures", features);
+              });
+            }
             var dmaSource = getters.openLayersMap
               .getLayer("DISTANCEMARKSAXIS")
               .getSource();