diff options
author | Matthew Somerville <matthew-github@dracos.co.uk> | 2018-08-09 12:56:53 +0100 |
---|---|---|
committer | Matthew Somerville <matthew-github@dracos.co.uk> | 2018-08-09 14:33:20 +0100 |
commit | 08acb4fa76587232eb9b73124582639db15607c1 (patch) | |
tree | 36f98b95226b0e6df34e6ed3a6ecdfe47318011d /web/js/map-OpenLayers.js | |
parent | 8645ec250a0686b7b348b72d6acc82420fb6aaa8 (diff) |
Fix inspector dragging of pins.
Diffstat (limited to 'web/js/map-OpenLayers.js')
-rw-r--r-- | web/js/map-OpenLayers.js | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/web/js/map-OpenLayers.js b/web/js/map-OpenLayers.js index 7253d46c8..fd69e034d 100644 --- a/web/js/map-OpenLayers.js +++ b/web/js/map-OpenLayers.js @@ -198,13 +198,14 @@ $.extend(fixmystreet.utils, { } var id = pin[3] === undefined ? pin[3] : +pin[3]; var marker_size = (id === window.selected_problem_id) ? selected_size : size; + var draggable = (id === window.selected_problem_id) ? true : (pin[6] === false ? false : true); var marker = new OpenLayers.Feature.Vector(loc, { colour: pin[2], size: pin[5] || marker_size, faded: 0, id: id, title: pin[4] || '', - draggable: pin[6] === false ? false : true + draggable: draggable }); markers.push( marker ); } @@ -215,10 +216,13 @@ $.extend(fixmystreet.utils, { var size = fixmystreet.maps.marker_size(); var selected_size = fixmystreet.maps.selected_marker_size(); for (var i = 0; i < fixmystreet.markers.features.length; i++) { - if (fixmystreet.markers.features[i].attributes.id == window.selected_problem_id) { - fixmystreet.markers.features[i].attributes.size = selected_size; + var attr = fixmystreet.markers.features[i].attributes; + if (attr.id == window.selected_problem_id) { + attr.size = selected_size; + attr.draggable = true; } else { - fixmystreet.markers.features[i].attributes.size = size; + attr.size = size; + attr.draggable = false; } } fixmystreet.markers.redraw(); @@ -277,6 +281,8 @@ $.extend(fixmystreet.utils, { } } } ); + // Allow handled feature click propagation to other click handlers + drag.handlers.feature.stopClick = false; fixmystreet.map.addControl( drag ); drag.activate(); }, |