]> git.openstreetmap.org Git - rails.git/commitdiff
Use inline svg for solid map key images
authorAnton Khorev <tony29@yandex.ru>
Tue, 19 Dec 2023 12:41:10 +0000 (15:41 +0300)
committerAnton Khorev <tony29@yandex.ru>
Tue, 19 Dec 2023 14:00:24 +0000 (17:00 +0300)
app/helpers/svg_helper.rb
app/views/site/key.html.erb

index f2e02f7422cc37126900918174c60d51aae5eb93..abb512f0d3c60cba5eae288cf03d1b4a77fce1bc 100644 (file)
@@ -1,8 +1,7 @@
 module SvgHelper
-  def solid_svg_image_tag(width, height, fill, **options)
-    svg = "<svg xmlns='http://www.w3.org/2000/svg' width='#{width}' height='#{height}'>" \
-          "<rect width='100%' height='100%' fill='#{fill}' />" \
-          "</svg>"
-    image_tag "data:image/svg+xml,#{u(svg)}", **options
+  def solid_svg_tag(width, height, fill, **options)
+    tag.svg :width => width, :height => height, **options do
+      tag.rect :width => "100%", :height => "100%", :fill => fill
+    end
   end
 end
index ddb3cbbefe8cfa8ef69ebaddc291c93a2610b4d3..8b61b92bfa5077d8ab726db9ab361876c261761c 100644 (file)
@@ -5,7 +5,7 @@
         <%= tag.tr :class => "mapkey-table-entry", :data => { :layer => layer_name, :zoom_min => entry["min_zoom"], :zoom_max => entry["max_zoom"] } do %>
           <td>
             <% if entry["width"] && entry["height"] && entry["fill"] %>
-              <%= solid_svg_image_tag entry["width"], entry["height"], entry["fill"], :class => "d-block mx-auto" %>
+              <%= solid_svg_tag entry["width"], entry["height"], entry["fill"], :class => "d-block mx-auto" %>
             <% else %>
               <%= image_tag "key/#{layer_name}/#{entry['image']}", :class => "d-block mx-auto" %>
             <% end %>