From c283212f9fa6fb5ad328511a7230adf9b3ba8917 2017-01-21 10:05:53 From: Jean-Philippe Lang Date: 2017-01-21 10:05:53 Subject: [PATCH] Adds a scope for issue auto complete. git-svn-id: http://svn.redmine.org/redmine/trunk@16245 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- diff --git a/app/controllers/auto_completes_controller.rb b/app/controllers/auto_completes_controller.rb index c6de2dd..b00deb3 100644 --- a/app/controllers/auto_completes_controller.rb +++ b/app/controllers/auto_completes_controller.rb @@ -35,7 +35,7 @@ class AutoCompletesController < ApplicationController @issues << scope.find_by_id($1.to_i) end - @issues += scope.where("LOWER(#{Issue.table_name}.subject) LIKE LOWER(?)", "%#{q}%").order(:id => :desc).limit(10).to_a + @issues += scope.like(q).order(:id => :desc).limit(10).to_a @issues.compact! end render :layout => false diff --git a/app/models/issue.rb b/app/models/issue.rb index b61c244..00e9899 100644 --- a/app/models/issue.rb +++ b/app/models/issue.rb @@ -98,6 +98,12 @@ class Issue < ActiveRecord::Base ids.compact! ids.any? ? where(:assigned_to_id => ids) : none } + scope :like, lambda {|q| + q = q.to_s + if q.present? + where("LOWER(#{table_name}.subject) LIKE LOWER(?)", "%#{q}%") + end + } before_validation :clear_disabled_fields before_create :default_assign