Merge remote-tracking branch 'upstream/pull/3226'
authorTom Hughes <tom@compton.nu>
Wed, 16 Jun 2021 17:07:38 +0000 (18:07 +0100)
committerTom Hughes <tom@compton.nu>
Wed, 16 Jun 2021 17:07:38 +0000 (18:07 +0100)
app/controllers/traces_controller.rb
app/views/layouts/_content.html.erb
app/views/traces/index.html.erb
config/locales/en.yml

index 0d3a1aa33c652a4c320e14ee0ebc48568d1ce0fb..b4853c6b8f7c5c1c91367cf98c14ced1c8253d90 100644 (file)
@@ -67,7 +67,6 @@ class TracesController < ApplicationController
 
     # final helper vars for view
     @target_user = target_user
-    @display_name = target_user.display_name if target_user
   end
 
   def mine
index a4d93cc0ec59027adc5a292858538c4f5024b758..cfb8d712cc7ebef8873640b03c6f1ebb151a467a 100644 (file)
@@ -5,7 +5,7 @@
     <%= render :partial => "layouts/flash", :locals => { :flash => flash } %>
     <% if content_for? :heading %>
       <div class="content-heading">
-        <div class="content-inner">
+        <div class="content-inner <%= yield :heading_class %>">
           <%= yield :heading %>
         </div>
       </div>
index b38436c0a4c5d3ac8e156537108620cb527a0e0a..693de7e1ab71946f1ab6a2ab83bb98fc8cc0bd54 100644 (file)
@@ -1,25 +1,62 @@
+<% content_for :heading_class, "pb-0" %>
 <% content_for :heading do %>
   <h1><%= @title %></h1>
-  <ul class='secondary-actions clearfix'>
-    <li><%= t(".description") %></li>
-    <li><%= rss_link_to :action => "georss", :display_name => @display_name, :tag => @tag %></li>
-    <li><%= link_to t(".upload_trace"), new_trace_path %></li>
-    <% if @tag %>
-      <li><%= link_to t(".see_all_traces"), :controller => "traces", :action => "index", :display_name => nil, :tag => nil, :page => nil %></li>
-      <li><%= link_to t(".see_my_traces"), :action => "mine", :tag => nil, :page => nil %></li>
-    <% else %>
-      <% if @display_name %>
-        <li><%= link_to t(".see_all_traces"), :controller => "traces", :action => "index", :display_name => nil, :tag => nil, :page => nil %></li>
+  <p>
+    <%= t(".description") %>
+    <% if params[:tag] %>
+      <%= link_to t(".remove_tag_filter", :tag => params[:tag]), { :controller => "traces", :action => "index", :display_name => nil, :tag => nil, :page => nil }, { :class => "border-left ml-2 pl-2" } %>
+    <% end %>
+  </p>
+  <ul class="nav nav-tabs flex-column flex-sm-row">
+    <% if @target_user.blank? %>
+      <!-- public traces -->
+      <li class="nav-item">
+        <%= link_to t(".all_traces"), { :controller => "traces", :action => "index", :display_name => nil, :page => nil }, { :class => "nav-link active" } %>
+      </li>
+      <% if current_user %>
+        <li class="nav-item">
+          <%= link_to t(".my_traces"), { :action => "mine", :page => nil }, { :class => "nav-link" } %>
+        </li>
       <% end %>
+    <% elsif current_user && current_user == @target_user %>
+      <li class="nav-item">
+        <%= link_to t(".all_traces"), { :controller => "traces", :action => "index", :display_name => nil, :page => nil }, { :class => "nav-link" } %>
+      </li>
+      <!-- my traces -->
+      <li class="nav-item">
+        <%= link_to t(".my_traces"), { :action => "mine", :page => nil }, { :class => "nav-link active" } %>
+      </li>
+    <% else %>
+      <!-- public_traces_from @target_user -->
+      <li class="nav-item">
+        <%= link_to t(".all_traces"), { :controller => "traces", :action => "index", :display_name => nil, :page => nil }, { :class => "nav-link" } %>
+      </li>
       <% if current_user && current_user != @target_user %>
-        <li><%= link_to t(".see_my_traces"), :action => "mine", :tag => nil, :page => nil %></li>
+        <li class="nav-item">
+          <%= link_to t(".my_traces"), { :action => "mine", :page => nil }, { :class => "nav-link" } %>
+        </li>
       <% end %>
+      <li class="nav-item">
+        <%= link_to t(".public_traces_from", :user => @target_user&.display_name), { :action => "mine", :page => nil }, { :class => "nav-link active" } %>
+      </li>
     <% end %>
+
+    <li class="nav-item flex-sm-grow-1"></li>
+    <li class="nav-item">
+      <div class="px-3 py-1">
+        <%= link_to({ :action => :georss, :display_name => @target_user&.display_name, :tag => params[:tag] }, { :class => "btn btn-secondary btn-sm" }) do %>
+          <svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="white" viewBox="0 0 16 16">
+            <path d="M5.5 12a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zm-3-8.5a1 1 0 0 1 1-1c5.523 0 10 4.477 10 10a1 1 0 1 1-2 0 8 8 0 0 0-8-8 1 1 0 0 1-1-1zm0 4a1 1 0 0 1 1-1 6 6 0 0 1 6 6 1 1 0 1 1-2 0 4 4 0 0 0-4-4 1 1 0 0 1-1-1z" />
+          </svg>
+        <% end -%>
+        <%= link_to t(".upload_trace"), new_trace_path, :class => "btn btn-secondary btn-sm" %>
+      </div>
+    </li>
   </ul>
 <% end %>
 
 <% content_for :auto_discovery_link_tag do %>
-<%= auto_discovery_link_tag :rss, :action => "georss", :display_name => @display_name, :tag => @tag %>
+  <%= auto_discovery_link_tag :rss, :action => "georss", :display_name => @target_user&.display_name, :tag => params[:tag] %>
 <% end %>
 
 <% if @traces.size > 0 %>
index e04a6ac874f9e1eb411aa240bd61953d4118a5c6..93d9fb61dcd2933863e5389462de3c7406a0edb0 100644 (file)
@@ -2221,8 +2221,10 @@ en:
       tagged_with: " tagged with %{tags}"
       empty_html: "Nothing here yet. <a href='%{upload_link}'>Upload a new trace</a> or learn more about GPS tracing on the <a href='https://wiki.openstreetmap.org/wiki/Beginners_Guide_1.2'>wiki page</a>."
       upload_trace: "Upload a trace"
-      see_all_traces: "See all traces"
-      see_my_traces: "See my traces"
+      all_traces: "All Traces"
+      my_traces: "My Traces"
+      traces_from: "Public Traces from %{user}"
+      remove_tag_filter: "Remove Tag Filter"
     destroy:
       scheduled_for_deletion: "Trace scheduled for deletion"
     make_public: