From e4e0d3c869a67c8ca98c8222eeb4f91fc17aa99e Mon Sep 17 00:00:00 2001 From: jpl Date: Mon, 23 Jan 2017 16:04:24 +0100 Subject: Refs #2405: adding point listener, with fetch of properties --- .../itineraries/components/OlMap.js | 62 +++++++++++++++++----- .../itineraries/components/StopPoint.js | 13 ++--- 2 files changed, 53 insertions(+), 22 deletions(-) diff --git a/app/assets/javascripts/es6_browserified/itineraries/components/OlMap.js b/app/assets/javascripts/es6_browserified/itineraries/components/OlMap.js index d9f6eb909..95e0726cb 100644 --- a/app/assets/javascripts/es6_browserified/itineraries/components/OlMap.js +++ b/app/assets/javascripts/es6_browserified/itineraries/components/OlMap.js @@ -36,19 +36,19 @@ class OlMap extends Component{ if(prevProps.value.olMap.isOpened == false && this.props.value.olMap.isOpened == true){ var that = this var vectorLayer = new ol.layer.Vector({ - source: new ol.source.Vector({ - format: new ol.format.GeoJSON(), - url: 'https://gist.githubusercontent.com/ThomasHaddad/7dcc32af24feea2fc4a329445c91af17/raw/4346a71a37326f055ff4fe576eaeb0040596c916/5.geojson' - }), - style: new ol.style.Style({ - image: new ol.style.Circle(({ - radius: 4, - stroke: new ol.style.Stroke({ - color: '#000000', - width: 2 - }) - })) - }) + source: new ol.source.Vector({ + format: new ol.format.GeoJSON(), + url: 'https://gist.githubusercontent.com/ThomasHaddad/7dcc32af24feea2fc4a329445c91af17/raw/4346a71a37326f055ff4fe576eaeb0040596c916/5.geojson' + }), + style: new ol.style.Style({ + image: new ol.style.Circle(({ + radius: 4, + stroke: new ol.style.Stroke({ + color: '#000000', + width: 2 + }) + })) + }) }); var map = new ol.Map({ target: 'stoppoint_map' + that.props.index, @@ -70,6 +70,26 @@ class OlMap extends Component{ zoom: 18 }) }); + + // Selectable marker + var select = new ol.interaction.Select({ + style: new ol.style.Style({ + image: new ol.style.Circle(({ + radius: 4, + fill: new ol.style.Fill({ + color: '#000000' + }) + })) + }) + }); + map.addInteraction(select); + select.on('select', function(e) { + var data = e.target.getFeatures().getArray()[0]; + console.log('Selected item'); + console.log('id:' + data.getId()); + console.log('LonLat:' + data.getGeometry().getCoordinates()); + }); + // let extent = map.getView().calculateExtent(map.getSize()) // setTimeout(()=>{ // that.fetchApiForMap(extent, that.props.value.stoparea_id) @@ -81,7 +101,21 @@ class OlMap extends Component{ render() { if (this.props.value.olMap.isOpened) { - return
+ return ( +
+
+

Nom de l'arrêt : XXX

+

Nom public : XXX

+

N° d'enregistrement : XXX

+

Réseau : XXX

+ +
Sélectionner
+
+
+
+
+
+ ) } else { return false } diff --git a/app/assets/javascripts/es6_browserified/itineraries/components/StopPoint.js b/app/assets/javascripts/es6_browserified/itineraries/components/StopPoint.js index 34f797be8..fe4e9aa21 100644 --- a/app/assets/javascripts/es6_browserified/itineraries/components/StopPoint.js +++ b/app/assets/javascripts/es6_browserified/itineraries/components/StopPoint.js @@ -69,14 +69,11 @@ const StopPoint = (props) => { -
-
- -
-
+ + ) } -- cgit v1.2.3