]> git.openstreetmap.org Git - rails.git/blobdiff - app/views/site/key.html.erb
Allow to omit zoom levels for map key entries
[rails.git] / app / views / site / key.html.erb
index e43d2c29a3da5aa2d25d4fc007fbc51b46a6b22d..d3da868569dbd97fff87ab6b927ed6f93525f654 100644 (file)
@@ -1,15 +1,19 @@
 <div id="mapkey">
-  <table class="table table-sm table-borderless mapkey-table">
+  <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">
-            <%= image_tag "key/#{name}/#{entry['image']}" %>
+            <% 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>")}" %>
+            <% else %>
+              <%= image_tag "key/#{name}/#{entry['image']}" %>
+            <% end %>
           </td>
           <td class="mapkey-table-value">
-            <%= [*t(".table.entry.#{entry['name']}")].to_sentence %>
+            <%= Array(t(".table.entry.#{entry['name']}")).to_sentence %>
           </td>
-        </tr>
+        <% end %>
       <% end %>
     <% end %>
   </table>