]> git.openstreetmap.org Git - rails.git/commitdiff
Merge remote-tracking branch 'upstream/pull/3186'
authorTom Hughes <tom@compton.nu>
Wed, 28 Apr 2021 17:58:59 +0000 (18:58 +0100)
committerTom Hughes <tom@compton.nu>
Wed, 28 Apr 2021 17:58:59 +0000 (18:58 +0100)
app/views/diary_entries/comments.html.erb
app/views/notes/index.html.erb
app/views/user_blocks/show.html.erb
config/locales/en.yml
script/statistics
test/controllers/diary_entries_controller_test.rb
test/controllers/notes_controller_test.rb

index 78f16eb8c8c5a5fd035727380250bfba3cf74d05..290fba35e66a7edd20c9fcce9cb714266af2e69d 100644 (file)
@@ -2,24 +2,30 @@
   <h1><%= t(".has_commented_on", :display_name => @user.display_name) %></h1>
 <% end %>
 
-<table class="table table-striped" width="100%">
-  <thead>
-    <tr>
-      <th width="25%"><%= t ".post" %></th>
-      <th width="25%"><%= t ".when" %></th>
-      <th width="50%"><%= t ".comment" %></th>
+<% if @comments.empty? %>
+  <h4><%= t ".no_comments" %></h4>
+
+<% else %>
+  <table class="table table-striped" width="100%">
+    <thead>
+      <tr>
+        <th width="25%"><%= t ".post" %></th>
+        <th width="25%"><%= t ".when" %></th>
+        <th width="50%"><%= t ".comment" %></th>
+      </tr>
+    </thead>
+    <% @comments.each do |comment| -%>
+    <tr class="<%= "text-muted" unless comment.visible? %>">
+      <td width="25%"><%= link_to comment.diary_entry.title, diary_entry_path(comment.diary_entry.user, comment.diary_entry) %></td>
+      <td width="25%"><span title="<%= l comment.created_at, :format => :friendly %>"><%= time_ago_in_words(comment.created_at, :scope => :'datetime.distance_in_words_ago') %></span></td>
+      <td width="50%" class="richtext text-break"><%= comment.body.to_html %></td>
     </tr>
-  </thead>
-  <% @comments.each do |comment| -%>
-  <tr class="<%= "text-muted" unless comment.visible? %>">
-    <td width="25%"><%= link_to comment.diary_entry.title, diary_entry_path(comment.diary_entry.user, comment.diary_entry) %></td>
-    <td width="25%"><span title="<%= l comment.created_at, :format => :friendly %>"><%= time_ago_in_words(comment.created_at, :scope => :'datetime.distance_in_words_ago') %></span></td>
-    <td width="50%" class="richtext text-break"><%= comment.body.to_html %></td>
-  </tr>
-  <% end -%>
-</table>
+    <% end -%>
+  </table>
+
+  <div class='secondary-actions clearfix'>
+    <span><%= link_to t(".older_comments"), :page => @comment_pages.current.next if @comment_pages.current.next %>
+    <%= link_to t(".newer_comments"), :page => @comment_pages.current.previous if @comment_pages.current.previous %></span>
+  </div>
 
-<div class='secondary-actions clearfix'>
-  <span><%= link_to t(".older_comments"), :page => @comment_pages.current.next if @comment_pages.current.next %>
-  <%= link_to t(".newer_comments"), :page => @comment_pages.current.previous if @comment_pages.current.previous %></span>
-</div>
+<% end -%>
index 50059625d3b687e5980ac200224b05a7de48888b..b5af25321df4cbcf8b1772ccdc078fd033de1775 100644 (file)
@@ -3,35 +3,41 @@
   <p><%= t ".subheading_html", :user => link_to(@user.display_name, user_path(@user)) %></p>
 <% end %>
 
-<%= render :partial => "notes_paging_nav" %>
+<% if @notes.empty? %>
+  <h4><%= t ".no_notes" %></h4>
 
-<table class="table table-sm note_list">
-  <thead>
-    <tr>
-      <th></th>
-      <th><%= t ".id" %></th>
-      <th><%= t ".creator" %></th>
-      <th><%= t ".description" %></th>
-      <th><%= t ".created_at" %></th>
-      <th><%= t ".last_changed" %></th>
+<% else %>
+  <%= render :partial => "notes_paging_nav" %>
+
+  <table class="table table-sm note_list">
+    <thead>
+      <tr>
+        <th></th>
+        <th><%= t ".id" %></th>
+        <th><%= t ".creator" %></th>
+        <th><%= t ".description" %></th>
+        <th><%= t ".created_at" %></th>
+        <th><%= t ".last_changed" %></th>
+      </tr>
+    </thead>
+  <% @notes.each do |note| -%>
+    <tr<% if note.author == @user %> class="creator"<% end %>>
+      <td>
+        <% if note.closed? %>
+          <%= image_tag("closed_note_marker.png", :alt => "closed", :size => "25x40") %>
+        <% else %>
+          <%= image_tag("open_note_marker.png", :alt => "open", :size => "25x40") %>
+        <% end %>
+      </td>
+      <td><%= link_to note.id, browse_note_path(note) %></td>
+      <td><%= note_author(note.author) %></td>
+      <td><%= note.comments.first.body.to_html %></td>
+      <td><%= friendly_date_ago(note.created_at) %></td>
+      <td><%= friendly_date_ago(note.updated_at) %></td>
     </tr>
-  </thead>
-<% @notes.each do |note| -%>
-  <tr<% if note.author == @user %> class="creator"<% end %>>
-    <td>
-      <% if note.closed? %>
-        <%= image_tag("closed_note_marker.png", :alt => "closed", :size => "25x40") %>
-      <% else %>
-        <%= image_tag("open_note_marker.png", :alt => "open", :size => "25x40") %>
-      <% end %>
-    </td>
-    <td><%= link_to note.id, browse_note_path(note) %></td>
-    <td><%= note_author(note.author) %></td>
-    <td><%= note.comments.first.body.to_html %></td>
-    <td><%= friendly_date_ago(note.created_at) %></td>
-    <td><%= friendly_date_ago(note.updated_at) %></td>
-  </tr>
-<% end -%>
-</table>
+  <% end -%>
+  </table>
 
-<%= render :partial => "notes_paging_nav" %>
+  <%= render :partial => "notes_paging_nav" %>
+
+<% end -%>
index 52c099ee40318654f27bfc188bace36aad21dc42..0204908dd2f85de324739bfd8ad8e8b6d465da8a 100644 (file)
@@ -30,6 +30,8 @@
 
 <p><b><%= t ".created" %></b>: <%= friendly_date_ago(@user_block.created_at) %></p>
 
+<p><b><%= t ".duration" %></b>: <%= block_duration_in_words(@user_block.ends_at - @user_block.created_at) %></p>
+
 <p><b><%= t ".status" %></b>: <%= block_status(@user_block) %></p>
 
 <p><b><%= t ".reason" %></b></p>
index 4cfdf5754cc1f6496f6b618961e7eb27b110fba4..eb6d0e07827dfb30bd88bbc02eff49a7612fb013 100644 (file)
@@ -474,6 +474,7 @@ en:
         description: "Recent diary entries from users of OpenStreetMap"
     comments:
       has_commented_on: "%{display_name} has commented on the following diary entries"
+      no_comments: "No diary comments"
       post: Post
       when: When
       comment: Comment
@@ -2610,6 +2611,7 @@ en:
       title: "%{block_on} blocked by %{block_by}"
       heading_html: "%{block_on} blocked by %{block_by}"
       created: "Created"
+      duration: "Duration"
       status: "Status"
       show: "Show"
       edit: "Edit"
@@ -2638,6 +2640,7 @@ en:
       title: "Notes submitted or commented on by %{user}"
       heading: "%{user}'s notes"
       subheading_html: "Notes submitted or commented on by %{user}"
+      no_notes: No notes
       id: "Id"
       creator: "Creator"
       description: "Description"
index cd9e9afa7f96c25b90a4b1eaca3719a94890dec7..ffc672b0bdf3f34925f6eb919ac855a2c67529e6 100755 (executable)
@@ -11,7 +11,8 @@ puts "<title>OpenStreetMap Statistics</title>"
 puts "<style>th { text-align: left }</style>"
 puts "</head>"
 puts "<body>"
-puts "<h2>OpenStreetMap stats report run at #{start_time}</h2>"
+puts "<h1>OpenStreetMap stats</h1>"
+puts "<h2>Report run at #{start_time}</h2>"
 
 begin
   ActiveRecord::Base.transaction do
@@ -29,7 +30,7 @@ begin
     puts "<tr><td>Number of relations</td><td>#{relation_count}</td></tr>"
     puts "</table>"
 
-    puts "<h2>Top 50 users for uploads of GPS data</h2>"
+    puts '<h2 id="top-traces">Top 50 users for uploads of GPS data</h2>'
     puts "<table>"
     puts "<tr><th>User</th><th>Number of Points</th></tr>"
 
@@ -40,7 +41,7 @@ begin
 
     puts "</table>"
 
-    puts "<h2>Number of users editing over the past...</h2>"
+    puts '<h2 id="number-of-editors">Number of users editing over the past...</h2>'
     puts "<table>"
     puts "<tr><th>Data Type</th><th>Day</th><th>Week</th><th>Month</th></tr>"
 
@@ -58,7 +59,7 @@ begin
 
     puts "</table>"
 
-    puts "<h2>Top users editing over the past...</h2>"
+    puts '<h2 id="top-editors">Top users editing over the past...</h2>'
     puts "<table>"
     puts "<tr><th>Day</th><th>Week</th><th>Month</th></tr>"
 
index 45fe4add191ea92f2f0187b874919c25d97f2aa7..255b4399794942841e8824a139ede773f923b4c3 100644 (file)
@@ -848,9 +848,7 @@ class DiaryEntriesControllerTest < ActionDispatch::IntegrationTest
     get diary_comments_path(:display_name => user.display_name)
     assert_response :success
     assert_template :comments
-    assert_select "table.table-striped" do
-      assert_select "tr", :count => 1 # header, no comments
-    end
+    assert_select "h4", :html => "No diary comments"
 
     # Test a user with a comment
     create(:diary_comment, :user => other_user)
index 1450aced88275bec8b6e02c90199d81ba7469a43..50e7ae833615905561666b31b8dbbef3d4bf3301 100644 (file)
@@ -73,4 +73,11 @@ class NotesControllerTest < ActionDispatch::IntegrationTest
     assert_response :success
     assert_select "table.note_list tr", :count => 11
   end
+
+  def test_empty_page
+    user = create(:user)
+    get user_notes_path(:display_name => user.display_name)
+    assert_response :success
+    assert_select "h4", :html => "No notes"
+  end
 end