summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--chimere/static/chimere/js/jquery.chimere.js21
-rw-r--r--chimere/static/ol3-layerswitcher/ol3-layerswitcher.js5
-rw-r--r--chimere/templatetags/chimere_tags.py2
3 files changed, 13 insertions, 15 deletions
diff --git a/chimere/static/chimere/js/jquery.chimere.js b/chimere/static/chimere/js/jquery.chimere.js
index 71228a8..a913d8d 100644
--- a/chimere/static/chimere/js/jquery.chimere.js
+++ b/chimere/static/chimere/js/jquery.chimere.js
@@ -470,18 +470,19 @@ function transformCoordToLonLat(coord) {
settings[map_id].map.addControl(contextmenu);
}
- /* OL3-deprecated
- if (settings[map_id].map_layers.length > 1){
- settings[map_id].map.addControl(new OpenLayers.Control.LayerSwitcher(
- {roundedCorner:false}));
- }
// select the default map layer
if (!settings[map_id].selected_map_layer){
settings[map_id].selected_map_layer = 0;
}
- settings[map_id].map.setBaseLayer(
- settings[map_id].map_layers[settings[map_id].selected_map_layer]);
- */
+ var current_layers = map.getLayers().getArray();
+ for (idx in current_layers){
+ layer = current_layers[idx];
+ if (idx == settings[map_id].selected_map_layer){
+ layer.setVisible(true);
+ } else {
+ layer.setVisible(false);
+ }
+ }
settings[map_id].layerSwitcher = new ol.control.LayerSwitcher();
settings[map_id].map.addControl(settings[map_id].layerSwitcher);
@@ -1433,10 +1434,6 @@ function transformCoordToLonLat(coord) {
//settings[map_id].map.events.register('click', settings[map_id].map,
// methods.setMarker);
},
- // change map_layer
- changeMapLayer: function(map_idx){
- settings[map_id].map.setBaseLayer(settings[map_id].map_layers[map_idx]);
- },
// zoom in from the map menu
_getZoomIn: function(map_id){
diff --git a/chimere/static/ol3-layerswitcher/ol3-layerswitcher.js b/chimere/static/ol3-layerswitcher/ol3-layerswitcher.js
index ee44e2f..e8f5eeb 100644
--- a/chimere/static/ol3-layerswitcher/ol3-layerswitcher.js
+++ b/chimere/static/ol3-layerswitcher/ol3-layerswitcher.js
@@ -215,9 +215,10 @@ ol.control.LayerSwitcher.prototype.renderLayer_ = function(lyr, idx) {
ol.control.LayerSwitcher.prototype.renderLayers_ = function(lyr, elm) {
var lyrs = lyr.getLayers().getArray().slice().reverse();
for (var i = 0, l; i < lyrs.length; i++) {
- l = lyrs[i];
+ j = lyrs.length - i - 1;
+ l = lyrs[j];
if (l.get('title')) {
- elm.appendChild(this.renderLayer_(l, i));
+ elm.appendChild(this.renderLayer_(l, j));
}
}
};
diff --git a/chimere/templatetags/chimere_tags.py b/chimere/templatetags/chimere_tags.py
index 0808147..ec6fcd7 100644
--- a/chimere/templatetags/chimere_tags.py
+++ b/chimere/templatetags/chimere_tags.py
@@ -235,7 +235,7 @@ def map(context, map_id='map'):
[js for name, js, default, extra_js in map_layers
if "OpenLayers" not in js])
context_data['map_layers'] = map_layers
- if default_area:
+ if default_area is not None:
context_data['selected_map_layer'] = default_area
context_data['checked_categories'] = []
area = None