aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZog2018-01-29 16:56:06 +0100
committerZog2018-02-01 13:48:40 +0100
commitae336476f64254727caf2e447f444fd17f0513f1 (patch)
treea14d2657d29880371c190d60ef1a637ecd7982a4
parentd9adc803f075c8136871e86b3ddbdd01ac217967 (diff)
downloadchouette-core-ae336476f64254727caf2e447f444fd17f0513f1.tar.bz2
Refs #5762; Update JS to accomodate stops without location
-rw-r--r--app/javascript/helpers/routes_map.coffee28
1 files changed, 16 insertions, 12 deletions
diff --git a/app/javascript/helpers/routes_map.coffee b/app/javascript/helpers/routes_map.coffee
index 85def1390..6834406fc 100644
--- a/app/javascript/helpers/routes_map.coffee
+++ b/app/javascript/helpers/routes_map.coffee
@@ -30,20 +30,24 @@ class RoutesMap
geometry: new ol.geom.Point(ol.proj.fromLonLat([parseFloat(stops[stops.length - 1].longitude), parseFloat(stops[stops.length - 1].latitude)]))
})
]
+
+ prevStop = null
stops.forEach (stop, i) =>
- if i < stops.length - 1
- geoColLns.push new ol.Feature
- geometry: new ol.geom.LineString([
- ol.proj.fromLonLat([parseFloat(stops[i].longitude), parseFloat(stops[i].latitude)]),
- ol.proj.fromLonLat([parseFloat(stops[i + 1].longitude), parseFloat(stops[i + 1].latitude)])
- ])
+ if stop.longitude && stop.latitude
+ if prevStop
+ geoColLns.push new ol.Feature
+ geometry: new ol.geom.LineString([
+ ol.proj.fromLonLat([parseFloat(prevStop.longitude), parseFloat(prevStop.latitude)]),
+ ol.proj.fromLonLat([parseFloat(stop.longitude), parseFloat(stop.latitude)])
+ ])
+ prevStop = stop
- geoColPts.push(new ol.Feature({
- geometry: new ol.geom.Point(ol.proj.fromLonLat([parseFloat(stop.longitude), parseFloat(stop.latitude)]))
- }))
- unless @seenStopIds.indexOf(stop.stoparea_id) > 0
- @area.push [parseFloat(stop.longitude), parseFloat(stop.latitude)]
- @seenStopIds.push stop.stoparea_id
+ geoColPts.push(new ol.Feature({
+ geometry: new ol.geom.Point(ol.proj.fromLonLat([parseFloat(stop.longitude), parseFloat(stop.latitude)]))
+ }))
+ unless @seenStopIds.indexOf(stop.stoparea_id) > 0
+ @area.push [parseFloat(stop.longitude), parseFloat(stop.latitude)]
+ @seenStopIds.push stop.stoparea_id
vectorPtsLayer = new ol.layer.Vector({
source: new ol.source.Vector({