maps: keep state of enabled/disabled leaflet layers during reload (#45329)
This commit is contained in:
parent
6029d7182a
commit
7d6600b276
|
@ -18,6 +18,9 @@ $(function() {
|
|||
this.bounds = null;
|
||||
for (var i=0; i<layer_slugs.length; i++) {
|
||||
var layer = this.geojson_layers[layer_slugs[i]];
|
||||
if (typeof layer.enabled === 'undefined') {
|
||||
layer.enabled = true;
|
||||
}
|
||||
layer.status = 'loading';
|
||||
this.add_geojson_layer(callback, layer);
|
||||
}
|
||||
|
@ -101,12 +104,14 @@ $(function() {
|
|||
if (geojson_layer.leaflet_layer) {
|
||||
map.clustered_markers.removeLayer(geojson_layer.leaflet_layer);
|
||||
}
|
||||
map.clustered_markers.addLayer(geo_json);
|
||||
if (geojson_layer.enabled)
|
||||
map.clustered_markers.addLayer(geo_json);
|
||||
} else {
|
||||
if (geojson_layer.leaflet_layer) {
|
||||
geojson_layer.leaflet_layer.remove();
|
||||
}
|
||||
geo_json.addTo(map);
|
||||
if (geojson_layer.enabled)
|
||||
geo_json.addTo(map);
|
||||
}
|
||||
geojson_layer.leaflet_layer = geo_json;
|
||||
if (callback) {
|
||||
|
@ -151,6 +156,7 @@ $(function() {
|
|||
var layer = this.geojson_layers[slug];
|
||||
var group = this.clustered_markers || this;
|
||||
if (layer && layer.leaflet_layer) {
|
||||
layer.enabled = false;
|
||||
group.removeLayer(layer.leaflet_layer);
|
||||
}
|
||||
},
|
||||
|
@ -159,6 +165,7 @@ $(function() {
|
|||
var layer = this.geojson_layers[slug];
|
||||
var group = this.clustered_markers || this;
|
||||
if (layer && layer.leaflet_layer) {
|
||||
layer.enabled = true;
|
||||
group.addLayer(layer.leaflet_layer);
|
||||
}
|
||||
},
|
||||
|
|
Loading…
Reference in New Issue