Skip to content

Commit

Permalink
Display no diary comments message when empty
Browse files Browse the repository at this point in the history
Display a 'No diary comments' message when the there are no notes to display, rather than an empty table.
  • Loading branch information
harry-wood committed Apr 9, 2021
1 parent 8bd415b commit a6a31a4
Show file tree
Hide file tree
Showing 3 changed files with 27 additions and 22 deletions.
44 changes: 25 additions & 19 deletions app/views/diary_entries/comments.html.erb
Expand Up @@ -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 -%>
1 change: 1 addition & 0 deletions config/locales/en.yml
Expand Up @@ -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
Expand Down
4 changes: 1 addition & 3 deletions test/controllers/diary_entries_controller_test.rb
Expand Up @@ -848,9 +848,7 @@ def test_comments
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)
Expand Down

0 comments on commit a6a31a4

Please sign in to comment.