<% content_for :heading do %>
- <h2><%= t ".heading", :name => h(@trace.name) %></h2>
+ <h1><%= t ".heading", :name => @trace.name %></h1>
<% end %>
<% if Settings.status != "gpx_offline" %>
<% if @trace.inserted %>
- <img src="<%= url_for :controller => "traces", :action => "picture", :id => @trace.id, :display_name => @trace.user.display_name %>">
+ <%= image_tag trace_picture_path(@trace.user, @trace), :class => "trace_image" %>
<% else %>
- <span class="trace_pending"><%= t ".pending" %></span>
+ <span class="text-danger"><%= t ".pending" %></span>
<% end %>
<% end %>
-<table border="0">
+<table class="table table-borderless table-sm">
<tr>
- <td><%= t ".filename" %></td>
+ <th><%= t ".filename" %></th>
<td><%= @trace.name %> (<%= link_to t(".download"), trace_data_path(@trace) %>)</td>
</tr>
<tr>
- <td><%= t ".uploaded" %></td>
+ <th><%= t ".uploaded" %></th>
<td><%= l @trace.timestamp, :format => :friendly %></td>
</tr>
<% if @trace.inserted? %>
<tr>
- <td><%= t ".points" %></td>
- <td><%= @trace.size.to_s.gsub(/(\d)(?=(\d{3})+$)/, '\1,') %></td></tr>
+ <th><%= t ".points" %></th>
+ <td><%= number_with_delimiter(@trace.size) %></td></tr>
<tr>
- <td><%= t ".start_coordinates" %></td>
- <td><div class="geo"><span class="latitude"><%= @trace.latitude %></span>; <span class="longitude"><%= @trace.longitude %></span></div> (<%= 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}" %>)</td>
+ <th><%= t ".start_coordinates" %></th>
+ <td>
+ <div class="d-inline">
+ <%= t ".coordinates_html",
+ :latitude => tag.span(number_with_delimiter(@trace.latitude), :class => "latitude"),
+ :longitude => tag.span(number_with_delimiter(@trace.longitude), :class => "longitude") %>
+ </div>
+ (<%= 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}") %>)</td>
</tr>
<% end %>
<tr>
- <td><%= t ".owner" %></td>
- <td><%= link_to h(@trace.user.display_name), user_path(@trace.user) %></td>
+ <th><%= t ".owner" %></th>
+ <td><%= link_to @trace.user.display_name, @trace.user %></td>
</tr>
<tr>
- <td><%= t ".description" %></td>
- <td><%= h(@trace.description) %></td>
+ <th><%= t ".description" %></th>
+ <td><%= @trace.description %></td>
</tr>
<tr>
- <td><%= t ".tags" %></td>
+ <th><%= t ".tags" %></th>
<td>
<% unless @trace.tags.empty? %>
- <%= raw(@trace.tags.collect { |tag| link_to tag.tag, :controller => "traces", :action => "index", :tag => tag.tag, :id => nil }.join(", ")) %>
+ <%= safe_join(@trace.tags.collect { |tag| link_to tag.tag, :controller => "traces", :action => "index", :tag => tag.tag, :id => nil }, ", ") %>
<% else %>
<i><%= t ".none" %></i>
<% end %>
</td>
</tr>
<tr>
- <td><%= t ".visibility" %></td>
+ <th><%= t ".visibility" %></th>
<td><%= t "traces.visibility.#{@trace.visibility}" %></td>
</tr>
</table>
-<br /><br />
-
<% if current_user && (current_user==@trace.user || current_user.administrator? || current_user.moderator?) %>
- <div class="buttons">
+ <div>
<% if current_user == @trace.user %>
- <%= link_to t(".edit_trace"), edit_trace_path(@trace), :class => "button" %>
+ <%= link_to t(".edit_trace"), edit_trace_path(@trace), :class => "btn btn-outline-primary" %>
<% end %>
- <%= button_to t(".delete_trace"), { :controller => "traces", :action => "destroy", :id => @trace.id }, { :method => :delete, :data => { :confirm => t(".confirm_delete") } } %>
+ <%= link_to t(".delete_trace"), @trace, { :method => :delete, :class => "btn btn-outline-danger", :data => { :confirm => t(".confirm_delete") } } %>
</div>
<% end %>