From 800106c72bbd75faeedda79fad0e758ece82c261 Mon Sep 17 00:00:00 2001 From: Anton Khorev Date: Mon, 27 Nov 2023 02:40:11 +0300 Subject: [PATCH] Allow to omit zoom levels for map key entries --- app/assets/javascripts/leaflet.key.js | 10 +++++----- app/views/site/key.html.erb | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) 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 %>
-- 2.39.5