diff options
-rw-r--r-- | ishtar_common/static/js/ishtar-map.js | 9 | ||||
-rw-r--r-- | ishtar_common/templates/blocks/DataTables-tabs.html | 3 | ||||
-rw-r--r-- | ishtar_common/templates/blocks/DataTables.html | 16 |
3 files changed, 22 insertions, 6 deletions
diff --git a/ishtar_common/static/js/ishtar-map.js b/ishtar_common/static/js/ishtar-map.js index 4403c7b62..ef2651348 100644 --- a/ishtar_common/static/js/ishtar-map.js +++ b/ishtar_common/static/js/ishtar-map.js @@ -29,7 +29,8 @@ var geoloc_activated = {}; var fetching_msg = "Fetching data..."; -var _map_submit_search = function(query_vars, name, source){ +var _map_submit_search = function(query_vars, name, source, extra){ + if (!extra) extra = "default"; var modal_base_text = $('.modal-progress .modal-header').html(); $('.modal-progress .modal-header').html(fetching_msg); $('.modal-progress').modal('show'); @@ -45,11 +46,11 @@ var _map_submit_search = function(query_vars, name, source){ } $.getJSON(url, function(data) { var timestamp = Math.floor(Date.now() / 1000); - var map_id = "map-" + timestamp; + var map_id = "map-" + extra + "-" + timestamp; $('.modal-progress .modal-header').html("{% trans 'Render map...' %}"); var html = render_map(map_id, use_map_limit); - $("#tab-content-map-" + name).html(html); + $("#tab-content-map-" + name + " #map-" + name + "-" + extra).html(html); $("#id_" + name + "-length_map").change(map_submit_search); if ($('.modal-progress').length > 0){ $('.modal-progress').modal('hide'); @@ -598,6 +599,7 @@ var initialize_base_map = function(map_id, layers){ } var redraw_map = function(map_id, layers){ + if (!map || !map[map_id]) return; map[map_id].setTarget(null); map[map_id] = null; initialize_base_map(map_id, layers); @@ -607,7 +609,6 @@ var redraw_map = function(map_id, layers){ var display_map = function(map_id, points, lines_and_polys, layers){ - base_color_rvb = base_color_R + ', ' + base_color_V + ', ' + base_color_B; if (points){ diff --git a/ishtar_common/templates/blocks/DataTables-tabs.html b/ishtar_common/templates/blocks/DataTables-tabs.html index c7d50fdda..8b6d4b807 100644 --- a/ishtar_common/templates/blocks/DataTables-tabs.html +++ b/ishtar_common/templates/blocks/DataTables-tabs.html @@ -49,6 +49,9 @@ {% if use_map %}<div class="tab-pane" id="tab-content-map-{{name}}" role="tabpanel" aria-labelledby="tab-map-{{name}}"> + <div id="map-{{name}}-default" class="sources sources-default"></div> + {% if external_sources %}{% for source_id, source_label, source_url in external_sources %} + <div id="map-{{name}}-{{source_id}}" class="sources sources-{{source_id}}"></div>{% endfor %}{% endif %} </div>{% endif %} {% if current_model.STATISTIC_MODALITIES %} <div class="tab-pane" diff --git a/ishtar_common/templates/blocks/DataTables.html b/ishtar_common/templates/blocks/DataTables.html index 199cd3af2..2719a9b46 100644 --- a/ishtar_common/templates/blocks/DataTables.html +++ b/ishtar_common/templates/blocks/DataTables.html @@ -67,7 +67,7 @@ $("#tab-gallery-{{name}}").click(function(){ {% if use_map %} $("#tab-map-{{name}}").click(function(){ current_tab = "map"; - map_submit_search(); + map_submit_search(current_source); }); {% endif %} {% if current_model.STATISTIC_MODALITIES %} @@ -91,7 +91,14 @@ gallery_submit_search = function(image_page){ {% endif %} {% if use_map %} map_submit_search = function(){ - return _map_submit_search(query_vars, "{{name}}", "{{source}}"); + if (current_source == "default"){ + return _map_submit_search(query_vars, "{{name}}", "{{source}}"); + } + {% if external_sources %}{% for source_id, source_label, source_url in external_sources %} + else if (current_source == "{{source_id}}"){ + return _map_submit_search(query_vars, "{{name}}", "{{source_url}}", "{{source_id}}"); + } + {% endfor %}{% endif %} }; {% endif %} @@ -160,6 +167,7 @@ update_submit_args = function(){ return false; }; +var current_source = "default"; jQuery(document).ready(function(){ jQuery("#search_{{name}}").click( @@ -169,17 +177,21 @@ jQuery(document).ready(function(){ {% if external_sources %} $("#source_button_default").click( function(){ + current_source = "default"; $(".sources").hide(); $(".sources-default").show(); redraw_plots("{{name}}", "default"); + if (current_tab == "map") map_submit_search(); } ); {% for source_id, source_label, source_url in external_sources %} $("#source_button_{{source_id}}").click( function(){ + current_source = "{{source_id}}"; $(".sources").hide(); $(".sources-{{source_id}}").show(); redraw_plots("{{name}}", "{{source_id}}"); + if (current_tab == "map") map_submit_search(); } ); {% endfor %} |