From: Anton Khorev Date: Sun, 26 Nov 2023 23:40:11 +0000 (+0300) Subject: Allow to omit zoom levels for map key entries X-Git-Tag: live~893^2~5 X-Git-Url: https://git.openstreetmap.org./rails.git/commitdiff_plain/800106c72bbd75faeedda79fad0e758ece82c261 Allow to omit zoom levels for map key entries --- diff --git a/app/assets/javascripts/leaflet.key.js b/app/assets/javascripts/leaflet.key.js index bcd5839cd..088d0f9d3 100644 --- a/app/assets/javascripts/leaflet.key.js +++ b/app/assets/javascripts/leaflet.key.js @@ -39,11 +39,11 @@ L.OSM.key = function (options) { $(".mapkey-table-entry").each(function () { var data = $(this).data(); - if (layer === data.layer && zoom >= data.zoomMin && zoom <= data.zoomMax) { - $(this).show(); - } else { - $(this).hide(); - } + $(this).toggle( + layer === data.layer && + (!data.zoomMin || zoom >= data.zoomMin) && + (!data.zoomMax || zoom <= data.zoomMax) + ); }); } }; diff --git a/app/views/site/key.html.erb b/app/views/site/key.html.erb index da7638948..d3da86856 100644 --- a/app/views/site/key.html.erb +++ b/app/views/site/key.html.erb @@ -2,7 +2,7 @@ <% YAML.load_file(Rails.root.join("config/key.yml")).each do |name,data| %> <% data.each do |entry| %> - " data-zoom-max="<%= entry["max_zoom"] %>"> + <%= tag.tr :class => "mapkey-table-entry", :data => { :layer => name, :zoom_min => entry["min_zoom"], :zoom_max => entry["max_zoom"] } do %> - + <% end %> <% end %> <% end %>
<% if entry["width"] && entry["height"] && entry["fill"] %> <%= image_tag "data:image/svg+xml,#{u("")}" %> @@ -13,7 +13,7 @@ <%= Array(t(".table.entry.#{entry['name']}")).to_sentence %>