aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG.md2
-rw-r--r--web/cobrands/fixmystreet/assets.js29
2 files changed, 19 insertions, 12 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index e05f8c4fe..b917b14fb 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -3,6 +3,8 @@
* Unreleased
- Front end improvements:
- Improve questionnaire process. #1939 #1998
+ - Bugfixes:
+ - Stop asset layers obscuring marker layer. #1999
- Admin improvements:
- Inspectors can set non_public status of reports. #1992
diff --git a/web/cobrands/fixmystreet/assets.js b/web/cobrands/fixmystreet/assets.js
index a6ecbadb2..d5dd3bc32 100644
--- a/web/cobrands/fixmystreet/assets.js
+++ b/web/cobrands/fixmystreet/assets.js
@@ -370,9 +370,6 @@ fixmystreet.assets = {
if (options.always_visible) {
asset_layer.setVisibility(true);
}
- if (asset_fault_layer) {
- fixmystreet.assets.layers.push(asset_fault_layer);
- }
if (hover_feature_control) {
fixmystreet.assets.controls.push(hover_feature_control);
}
@@ -380,25 +377,20 @@ fixmystreet.assets = {
fixmystreet.assets.controls.push(select_feature_control);
}
- // Make sure the fault markers always appear beneath the linked assets
- if (asset_fault_layer) {
- asset_fault_layer.setZIndex(asset_layer.getZIndex()-1);
- }
-
if (!asset_layer.fixmystreet.always_visible) {
// Show/hide the asset layer when the category is chosen
$("#problem_form").on("change.category", "select#form_category", function(){
var category = $(this).val();
if (category == options.asset_category) {
asset_layer.setVisibility(true);
- if (asset_fault_layer) {
- asset_fault_layer.setVisibility(true);
+ if (asset_layer.fixmystreet.fault_layer) {
+ asset_layer.fixmystreet.fault_layer.setVisibility(true);
}
zoom_to_assets(asset_layer);
} else {
asset_layer.setVisibility(false);
- if (asset_fault_layer) {
- asset_fault_layer.setVisibility(false);
+ if (asset_layer.fixmystreet.fault_layer) {
+ asset_layer.fixmystreet.fault_layer.setVisibility(false);
}
}
});
@@ -426,12 +418,25 @@ fixmystreet.assets = {
return hide_assets;
})(fixmystreet.maps.display_around);
+ var pins_layer = fixmystreet.map.getLayersByName("Pins")[0];
for (var i = 0; i < fixmystreet.assets.layers.length; i++) {
var layer = fixmystreet.assets.layers[i];
fixmystreet.map.addLayer(layer);
if (layer.fixmystreet.asset_category) {
fixmystreet.map.events.register( 'zoomend', layer, check_zoom_message_visibility);
}
+
+ // Don't cover the existing pins layer
+ if (pins_layer) {
+ layer.setZIndex(pins_layer.getZIndex()-1);
+ }
+
+ // Make sure the fault markers always appear beneath the linked assets
+ if (layer.fixmystreet.fault_layer) {
+ fixmystreet.map.addLayer(layer.fixmystreet.fault_layer);
+ layer.fixmystreet.fault_layer.setZIndex(layer.getZIndex()-1);
+ }
+
}
for (i = 0; i < fixmystreet.assets.controls.length; i++) {