]> git.openstreetmap.org Git - rails.git/commitdiff
Allow to omit zoom levels for map key entries
authorAnton Khorev <tony29@yandex.ru>
Sun, 26 Nov 2023 23:40:11 +0000 (02:40 +0300)
committerAnton Khorev <tony29@yandex.ru>
Thu, 7 Dec 2023 09:38:24 +0000 (12:38 +0300)
app/assets/javascripts/leaflet.key.js
app/views/site/key.html.erb

index bcd5839cdad8891e183e2fcec8bf7c19b14e4191..088d0f9d3ea0fcf71cd36f10dd44090f8df35745 100644 (file)
@@ -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)
+        );
       });
     }
   };
index da76389481088141ae44aa42295c2365270b1034..d3da868569dbd97fff87ab6b927ed6f93525f654 100644 (file)
@@ -2,7 +2,7 @@
   <table class="table table-sm table-borderless mapkey-table mb-0">
     <% YAML.load_file(Rails.root.join("config/key.yml")).each do |name,data| %>
       <% data.each do |entry| %>
-        <tr class="mapkey-table-entry" data-layer="<%= name %>" data-zoom-min="<%= entry["min_zoom"] %>" 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 %>
           <td class="mapkey-table-key align-middle">
             <% if entry["width"] && entry["height"] && entry["fill"] %>
               <%= image_tag "data:image/svg+xml,#{u("<svg xmlns='http://www.w3.org/2000/svg' width='#{entry['width']}' height='#{entry['height']}'><rect width='100%' height='100%' fill='#{entry['fill']}' /></svg>")}" %>
@@ -13,7 +13,7 @@
           <td class="mapkey-table-value">
             <%= Array(t(".table.entry.#{entry['name']}")).to_sentence %>
           </td>
-        </tr>
+        <% end %>
       <% end %>
     <% end %>
   </table>