From fc270221d33e18c61611d0242e7274e40398d7a5 Mon Sep 17 00:00:00 2001 From: Anton Khorev Date: Wed, 20 Mar 2024 06:07:24 +0300 Subject: [PATCH] Simplify links on trace pages --- app/views/traces/_description.html.erb | 2 +- app/views/traces/_trace.html.erb | 10 +++++----- app/views/traces/edit.html.erb | 2 +- app/views/traces/georss.rss.builder | 4 ++-- app/views/traces/show.html.erb | 8 ++++---- test/controllers/traces_controller_test.rb | 3 ++- 6 files changed, 15 insertions(+), 14 deletions(-) diff --git a/app/views/traces/_description.html.erb b/app/views/traces/_description.html.erb index f4edc0e21..5fea819da 100644 --- a/app/views/traces/_description.html.erb +++ b/app/views/traces/_description.html.erb @@ -1,4 +1,4 @@ -<%= image_tag(url_for(:controller => :traces, :action => :icon, :id => description.id, :display_name => description.user.display_name)) %> +<%= image_tag trace_icon_path(description.user, description.id) %> <% if description.size -%> <%= t ".description_with_count", :count => description.size, :user => description.user.display_name %> <% else -%> diff --git a/app/views/traces/_trace.html.erb b/app/views/traces/_trace.html.erb index 9ee58cf22..f72671e37 100644 --- a/app/views/traces/_trace.html.erb +++ b/app/views/traces/_trace.html.erb @@ -2,7 +2,7 @@ <% if Settings.status != "gpx_offline" %> <% if trace.inserted %> - "show", :id => trace.id, :display_name => trace.user.display_name %>"> "icon", :id => trace.id, :display_name => trace.user.display_name %>" border="0" alt="" /> + <%= link_to image_tag(trace_icon_path(trace.user, trace), :alt => ""), show_trace_path(trace.user, trace) %> <% else %> <%= t ".pending" %> <% end %> @@ -11,7 +11,7 @@

<%= friendly_date_ago(trace.timestamp) %> - <%= t ".by" %> <%= link_to trace.user.display_name, user_path(trace.user) %> + <%= t ".by" %> <%= link_to trace.user.display_name, trace.user %> <% if !trace.tags.empty? %> <%= t ".in" %> <%= safe_join(trace.tags.collect { |tag| link_to_tag tag.tag }, ", ") %> @@ -45,10 +45,10 @@

diff --git a/app/views/traces/edit.html.erb b/app/views/traces/edit.html.erb index 09fe9c510..809112d4b 100644 --- a/app/views/traces/edit.html.erb +++ b/app/views/traces/edit.html.erb @@ -2,7 +2,7 @@

<%= t ".heading", :name => @trace.name %>

<% end %> - "picture", :id => @trace.id, :display_name => @trace.user.display_name %>"> +<%= image_tag trace_picture_path(@trace.user, @trace) %> <%= bootstrap_form_for @trace do |f| %> <%= f.text_field :name, :disabled => true %> diff --git a/app/views/traces/georss.rss.builder b/app/views/traces/georss.rss.builder index 36641fec0..924ffb935 100644 --- a/app/views/traces/georss.rss.builder +++ b/app/views/traces/georss.rss.builder @@ -21,8 +21,8 @@ xml.rss("version" => "2.0", xml.item do xml.title trace.name - xml.link url_for(:controller => :traces, :action => :show, :id => trace.id, :display_name => trace.user.display_name, :only_path => false) - xml.guid url_for(:controller => :traces, :action => :show, :id => trace.id, :display_name => trace.user.display_name, :only_path => false) + xml.link show_trace_url(trace.user, trace) + xml.guid show_trace_url(trace.user, trace) xml.description do xml.cdata! render(:partial => "description", :object => trace, :formats => [:html]) diff --git a/app/views/traces/show.html.erb b/app/views/traces/show.html.erb index 69f58b5b8..def928da5 100644 --- a/app/views/traces/show.html.erb +++ b/app/views/traces/show.html.erb @@ -4,7 +4,7 @@ <% if Settings.status != "gpx_offline" %> <% if @trace.inserted %> - "picture", :id => @trace.id, :display_name => @trace.user.display_name %>"> + <%= image_tag trace_picture_path(@trace.user, @trace) %> <% else %> <%= t ".pending" %> <% end %> @@ -31,12 +31,12 @@ :latitude => tag.span(number_with_delimiter(@trace.latitude), :class => "latitude"), :longitude => tag.span(number_with_delimiter(@trace.longitude), :class => "longitude") %> - (<%= link_to t(".map"), :controller => "site", :action => "index", :mlat => @trace.latitude, :mlon => @trace.longitude, :anchor => "map=14/#{@trace.latitude}/#{@trace.longitude}" %> / <%= link_to t(".edit"), :controller => "site", :action => "edit", :gpx => @trace.id, :anchor => "map=14/#{@trace.latitude}/#{@trace.longitude}" %>) + (<%= link_to t(".map"), root_path(:mlat => @trace.latitude, :mlon => @trace.longitude, :anchor => "map=14/#{@trace.latitude}/#{@trace.longitude}") %> / <%= link_to t(".edit"), edit_path(:gpx => @trace.id, :anchor => "map=14/#{@trace.latitude}/#{@trace.longitude}") %>) <% end %> <%= t ".owner" %> - <%= link_to @trace.user.display_name, user_path(@trace.user) %> + <%= link_to @trace.user.display_name, @trace.user %> <%= t ".description" %> @@ -63,6 +63,6 @@ <% if current_user == @trace.user %> <%= link_to t(".edit_trace"), edit_trace_path(@trace), :class => "btn btn-outline-primary" %> <% end %> - <%= link_to t(".delete_trace"), { :controller => "traces", :action => "destroy", :id => @trace.id }, { :method => :delete, :class => "btn btn-outline-danger", :data => { :confirm => t(".confirm_delete") } } %> + <%= link_to t(".delete_trace"), @trace, { :method => :delete, :class => "btn btn-outline-danger", :data => { :confirm => t(".confirm_delete") } } %> <% end %> diff --git a/test/controllers/traces_controller_test.rb b/test/controllers/traces_controller_test.rb index 1953b6378..2a6dc12dc 100644 --- a/test/controllers/traces_controller_test.rb +++ b/test/controllers/traces_controller_test.rb @@ -833,6 +833,7 @@ class TracesControllerTest < ActionDispatch::IntegrationTest assert_select row, "li", Regexp.new(Regexp.escape("#{trace.size} points")) if trace.inserted? assert_select row, "td", Regexp.new(Regexp.escape(trace.description)) assert_select row, "td", Regexp.new(Regexp.escape("by #{trace.user.display_name}")) + assert_select row, "a[href='#{user_path trace.user}']", :text => trace.user.display_name end end end @@ -845,7 +846,7 @@ class TracesControllerTest < ActionDispatch::IntegrationTest assert_select "table", :count => 1 do assert_select "td", /^#{Regexp.quote(trace.name)} / - assert_select "td", trace.user.display_name + assert_select "td a[href='#{user_path trace.user}']", :text => trace.user.display_name assert_select "td", trace.description end end -- 2.39.5