Refactor notes#mine to simplify code
authorAndy Allan <git@gravitystorm.co.uk>
Wed, 27 Mar 2019 16:15:18 +0000 (17:15 +0100)
committerAndy Allan <git@gravitystorm.co.uk>
Wed, 27 Mar 2019 17:04:44 +0000 (18:04 +0100)
app/controllers/notes_controller.rb
app/views/notes/_user.html.erb [deleted file]
app/views/notes/mine.html.erb
config/locales/en.yml

index 54fdb28..7c6b033 100644 (file)
@@ -16,13 +16,11 @@ class NotesController < ApplicationController
       if @user = User.active.find_by(:display_name => params[:display_name])
         @params = params.permit(:display_name)
         @title = t "notes.mine.title", :user => @user.display_name
-        @heading = t "notes.mine.heading", :user => @user.display_name
-        @description = t "notes.mine.subheading", :user => render_to_string(:partial => "user", :object => @user)
         @page = (params[:page] || 1).to_i
         @page_size = 10
         @notes = @user.notes
         @notes = @notes.visible unless current_user&.moderator?
-        @notes = @notes.order("updated_at DESC, id").distinct.offset((@page - 1) * @page_size).limit(@page_size).preload(:comments => :author).to_a
+        @notes = @notes.order("updated_at DESC, id").distinct.offset((@page - 1) * @page_size).limit(@page_size).preload(:comments => :author)
       else
         @title = t "users.no_such_user.title"
         @not_found_user = params[:display_name]
diff --git a/app/views/notes/_user.html.erb b/app/views/notes/_user.html.erb
deleted file mode 100644 (file)
index 21bab61..0000000
+++ /dev/null
@@ -1 +0,0 @@
-<%= link_to user.display_name, user_path(user) %>
index e019c1b..2966b81 100644 (file)
@@ -1,6 +1,6 @@
 <% content_for :heading do %>
-  <h2><%= @heading %></h2>
-  <p><%= raw @description %></p>
+  <h2><%= t "notes.mine.heading", :user => @user.display_name %></h2>
+  <p><%= t "notes.mine.subheading_html", :user => link_to(@user.display_name, user_path(@user)) %></p>
 <% end %>
 
 <%= render :partial => "notes_paging_nav" %>
@@ -15,7 +15,7 @@
     <th><%= t ".last_changed" %></th>
   </tr>
 <% @notes.each do |note| -%>
-  <tr<% if note.author != @user2 %> class="creator"<% end %>>
+  <tr<% if note.author == @user %> class="creator"<% end %>>
     <td>
       <% if note.closed? %>
         <%= image_tag("closed_note_marker.png", :alt => "closed") %>
@@ -23,7 +23,7 @@
         <%= image_tag("open_note_marker.png", :alt => "open") %>
       <% end %>
     </td>
-    <td><%= link_to note.id.to_s, :controller => "browse", :action => "note", :id => note.id %></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><%= t ".ago_html", :when => friendly_date(note.created_at) %></td>
index 71c081f..5699925 100644 (file)
@@ -2361,7 +2361,7 @@ en:
     mine:
       title: "Notes submitted or commented on by %{user}"
       heading: "%{user}'s notes"
-      subheading: "Notes submitted or commented on by %{user}"
+      subheading_html: "Notes submitted or commented on by %{user}"
       id: "Id"
       creator: "Creator"
       description: "Description"