]> git.openstreetmap.org Git - rails.git/commitdiff
Merge remote-tracking branch 'upstream/pull/4513'
authorTom Hughes <tom@compton.nu>
Sun, 11 Feb 2024 18:47:52 +0000 (18:47 +0000)
committerTom Hughes <tom@compton.nu>
Sun, 11 Feb 2024 18:47:52 +0000 (18:47 +0000)
app/helpers/svg_helper.rb
app/views/browse/changeset.html.erb
app/views/browse/feature.html.erb
app/views/old_nodes/show.html.erb
app/views/old_relations/show.html.erb
app/views/old_ways/show.html.erb

index 9c02fc1d9e72fa5efca40172debdd16d12aabc81..62b39bf6792fb515e5890715bf5768848f86a9d8 100644 (file)
@@ -41,13 +41,16 @@ module SvgHelper
 
   # returns "<" shape if side == -1; ">" if side == 1
   def adjacent_page_svg_tag(side, **options)
-    height = 15
+    count = options[:count] || 1
+    height = options[:height] || 15
     pad = 2
     segment = (0.5 * height) - pad
-    width = segment + (2 * pad)
-    path_data = "M#{side * (pad - (0.5 * width))},#{pad} l#{side * segment},#{segment} l#{-side * segment},#{segment}"
+    width = (segment + (2 * count * pad)).ceil
+    angled_line_data = "l#{side * segment},#{segment} l#{-side * segment},#{segment}"
+    path_data = Array.new(count) { |i| "M#{side * ((2 * i) + 1) * pad},#{pad} #{angled_line_data}" }.join(" ")
     path_tag = tag.path :d => path_data, :fill => "none", :stroke => "currentColor", :"stroke-width" => 1.5
-    tag.svg path_tag, :width => width, :height => height, :viewBox => "-#{0.5 * width} 0 #{width} #{height}", :class => options[:class]
+    view_box = "#{-width} 0 #{width} #{height}" if side.negative?
+    tag.svg path_tag, :width => width, :height => height, :viewBox => view_box, :class => options[:class]
   end
 
   def stroke_attrs(attrs, prefix)
index ec4e0c1c200e6f16889744f5340d3751a254da7c..1b3d245fbee55e0b8108ee4110ea225f9ecdde1e 100644 (file)
 <% if @next_by_user || @prev_by_user %>
   <div class='secondary-actions'>
     <% if @prev_by_user %>
-      <%= link_to "<< #{@prev_by_user.id}", :id => @prev_by_user.id %>
+      <%= link_to({ :id => @prev_by_user.id }, :class => "icon-link") do %>
+        <%= previous_page_svg_tag :height => 11 %>
+        <%= @prev_by_user.id %>
+      <% end %>
       &middot;
     <% end %>
     <%= user = (@prev_by_user || @next_by_user).user.display_name
         link_to tag.bdi(user), :controller => "changesets", :action => "index", :display_name => user %>
     <% if @next_by_user %>
       &middot;
-      <%= link_to "#{@next_by_user.id} >>", :id => @next_by_user.id %>
+      <%= link_to({ :id => @next_by_user.id }, :class => "icon-link") do %>
+        <%= @next_by_user.id %>
+        <%= next_page_svg_tag :height => 11 %>
+      <% end %>
     <% end %>
   </div>
 <% end %>
index 3b7c64a8db6caa359e956b947b0c70b913573105..37be312b1e86b0d38a9a3489389456bc1367a85c 100644 (file)
 <% end %>
 <div class='secondary-actions'>
   <% if @feature.version > 1 %>
-    <%= link_to "<< #{t('browse.version')} #1", :controller => "old_#{@type.pluralize}", :action => :show, :version => 1 %>
+    <%= link_to({ :controller => "old_#{@type.pluralize}", :action => :show, :version => 1 }, :class => "icon-link") do %>
+      <%= previous_page_svg_tag :height => 11, :count => 2 %>
+      <%= "#{t('browse.version')} #1" %>
+    <% end %>
     &middot;
   <% end %>
     <%= link_to t("browse.view_history"), :action => "#{@type}_history" %>
   <% if @feature.version > 1 %>
     &middot;
-    <%= link_to "#{t('browse.version')} ##{@feature.version} >>", :controller => "old_#{@type.pluralize}", :action => :show, :version => @feature.version %>
+    <%= link_to({ :controller => "old_#{@type.pluralize}", :action => :show, :version => @feature.version }, :class => "icon-link") do %>
+      <%= "#{t('browse.version')} ##{@feature.version}" %>
+      <%= next_page_svg_tag :height => 11, :count => 2 %>
+    <% end %>
   <% end %>
 </div>
index b69c297233b89878f2f4b2720eea8c8c736c9823..9220b2cc20ec03397707509a8d12d74220af0023 100644 (file)
 
 <div class='secondary-actions'>
   <% if @feature.version > 1 %>
-    <%= link_to "<< #{t('browse.version')} ##{@feature.version - 1}", old_node_path(@feature.node_id, @feature.version - 1) %>
+    <%= link_to old_node_path(@feature.node_id, @feature.version - 1), :class => "icon-link" do %>
+      <%= previous_page_svg_tag :height => 11 %>
+      <%= "#{t('browse.version')} ##{@feature.version - 1}" %>
+    <% end %>
     &middot;
   <% end %>
   <%= link_to t("browse.view_history"), node_history_path(@feature.node_id) %>
   <% if @feature.version < @feature.current_node.version %>
     &middot;
-    <%= link_to "#{t('browse.version')} ##{@feature.version + 1} >>", old_node_path(@feature.node_id, @feature.version + 1) %>
+    <%= link_to old_node_path(@feature.node_id, @feature.version + 1), :class => "icon-link" do %>
+      <%= "#{t('browse.version')} ##{@feature.version + 1}" %>
+      <%= next_page_svg_tag :height => 11 %>
+    <% end %>
   <% end %>
 </div>
index 29d0b0079c6dab4f239d23379b5816cc9b65197c..b049a4cf0aebde2c54b51f607655af5112519190 100644 (file)
 
 <div class='secondary-actions'>
   <% if @feature.version > 1 %>
-    <%= link_to "<< #{t('browse.version')} ##{@feature.version - 1}", old_relation_path(@feature.relation_id, @feature.version - 1) %>
+    <%= link_to old_relation_path(@feature.relation_id, @feature.version - 1), :class => "icon-link" do %>
+      <%= previous_page_svg_tag :height => 11 %>
+      <%= "#{t('browse.version')} ##{@feature.version - 1}" %>
+    <% end %>
     &middot;
   <% end %>
   <%= link_to t("browse.view_history"), relation_history_path(@feature.relation_id) %>
   <% if @feature.version < @feature.current_relation.version %>
     &middot;
-    <%= link_to "#{t('browse.version')} ##{@feature.version + 1} >>", old_relation_path(@feature.relation_id, @feature.version + 1) %>
+    <%= link_to old_relation_path(@feature.relation_id, @feature.version + 1), :class => "icon-link" do %>
+      <%= "#{t('browse.version')} ##{@feature.version + 1}" %>
+      <%= next_page_svg_tag :height => 11 %>
+    <% end %>
   <% end %>
 </div>
index e9976dd78b435687778e916be925aa2a3d8007e5..d128cd2ad3665abbfbbcf4b4acd5bb9f9df05e5a 100644 (file)
 
 <div class='secondary-actions'>
   <% if @feature.version > 1 %>
-    <%= link_to "<< #{t('browse.version')} ##{@feature.version - 1}", old_way_path(@feature.way_id, @feature.version - 1) %>
+    <%= link_to old_way_path(@feature.way_id, @feature.version - 1), :class => "icon-link" do %>
+      <%= previous_page_svg_tag :height => 11 %>
+      <%= "#{t('browse.version')} ##{@feature.version - 1}" %>
+    <% end %>
     &middot;
   <% end %>
   <%= link_to t("browse.view_history"), way_history_path(@feature.way_id) %>
   <% if @feature.version < @feature.current_way.version %>
     &middot;
-    <%= link_to "#{t('browse.version')} ##{@feature.version + 1} >>", old_way_path(@feature.way_id, @feature.version + 1) %>
+    <%= link_to old_way_path(@feature.way_id, @feature.version + 1), :class => "icon-link" do %>
+      <%= "#{t('browse.version')} ##{@feature.version + 1}" %>
+      <%= next_page_svg_tag :height => 11 %>
+    <% end %>
   <% end %>
 </div>