]> git.openstreetmap.org Git - rails.git/commitdiff
Fix an issue where the query did not work if a display name or an id was specified
authorENT8R <info.ent8r@gmail.com>
Tue, 9 Oct 2018 12:37:55 +0000 (14:37 +0200)
committerENT8R <info.ent8r@gmail.com>
Tue, 9 Oct 2018 12:37:55 +0000 (14:37 +0200)
app/controllers/notes_controller.rb

index ba2df36807debb434acb7b77dbef8f148682c888..27c3f4f83d08fcbc7ff51fe7c97ffd4e6264cfdf 100644 (file)
@@ -274,8 +274,12 @@ class NotesController < ApplicationController
 
     # Filter by a given string
     if params[:q]
-      # TODO: why doesn't this work if we want to filter the notes of a given user?
-      @notes = @notes.joins(:comments).where("to_tsvector('english', note_comments.body) @@ plainto_tsquery('english', ?)", params[:q]) unless params[:display_name] || params[:id]
+      @notes = @notes.joins(:comments)
+      if @user
+        @notes = @notes.where("to_tsvector('english', comments_notes.body) @@ plainto_tsquery('english', ?)", params[:q])
+      else
+        @notes = @notes.where("to_tsvector('english', note_comments.body) @@ plainto_tsquery('english', ?)", params[:q])
+      end
     end
 
     # Filter by a given start date and an optional end date