]> git.openstreetmap.org Git - rails.git/blobdiff - app/views/site/key.html.erb
Merge remote-tracking branch 'upstream/pull/4439'
[rails.git] / app / views / site / key.html.erb
index 5879701a2e4350c2ca6e666d4f569ef803787775..82105097e7b409eaffc16f7e1a9bb8f5e25f2784 100644 (file)
@@ -1,19 +1,18 @@
 <div id="mapkey">
-  <h3><%= t "site.key.table.heading", :zoom_level => params[:zoom] %></h3>
-  <table class="mapkey-table">
-    <% YAML.load_file("#{RAILS_ROOT}/config/key.yml").each do |name,data| %>
-      <% if params[:layer] == name %>
-        <% data.each do |entry| %>
-          <% if params[:zoom].to_i >= entry['min_zoom'] && params[:zoom].to_i <= entry['max_zoom'] %>
-            <tr>
-              <td class="mapkey-table-key" align="center">
-                <%= image_tag "key/#{name}/#{entry['image']}" %>
-              </td>
-              <td class="mapkey-table-value">
-                <%= [*t("site.key.table.entry.#{entry['name']}")].to_sentence %>
-              </td>
-            </tr>
-          <% end %>
+  <table class="table table-sm table-borderless mb-0 align-middle">
+    <% @key.each do |layer_name, layer_data| %>
+      <% layer_data.each do |entry| %>
+        <%= tag.tr :class => "mapkey-table-entry", :data => { :layer => layer_name, :zoom_min => entry["min_zoom"], :zoom_max => entry["max_zoom"] } do %>
+          <td>
+            <% if entry["image"] %>
+              <%= image_tag "key/#{layer_name}/#{entry['image']}", :class => "d-block mx-auto" %>
+            <% else %>
+              <%= key_svg_tag :class => "d-block mx-auto", **entry %>
+            <% end %>
+          </td>
+          <td>
+            <%= entry["name"].map { |feature_name| t ".table.entry.#{feature_name}" }.join(" ยท ") %>
+          </td>
         <% end %>
       <% end %>
     <% end %>