diff options
author | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2008-04-26 16:55:24 +0000 |
---|---|---|
committer | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2008-04-26 16:55:24 +0000 |
commit | 64474802f9dd6ad97aaf00e795fa1489c0af0042 (patch) | |
tree | f3b9b9d2939fe744f421408a228edfefb3a4b6a9 /app/models/query.rb | |
parent | a6311a960370af3606ac3a18ce1d45facf318e22 (diff) | |
download | redmine-64474802f9dd6ad97aaf00e795fa1489c0af0042.tar.gz redmine-64474802f9dd6ad97aaf00e795fa1489c0af0042.zip |
Fixes custom field filters behaviour (#1078).
git-svn-id: http://redmine.rubyforge.org/svn/trunk@1362 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'app/models/query.rb')
-rw-r--r-- | app/models/query.rb | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/app/models/query.rb b/app/models/query.rb index c54c143e2..641c0d17b 100644 --- a/app/models/query.rb +++ b/app/models/query.rb @@ -301,7 +301,7 @@ class Query < ActiveRecord::Base # custom field db_table = CustomValue.table_name db_field = 'value' - sql << "#{Issue.table_name}.id IN (SELECT #{db_table}.customized_id FROM #{db_table} where #{db_table}.customized_type='Issue' AND #{db_table}.customized_id=#{Issue.table_name}.id AND #{db_table}.custom_field_id=#{$1} AND " + sql << "#{Issue.table_name}.id IN (SELECT #{Issue.table_name}.id FROM #{Issue.table_name} LEFT OUTER JOIN #{db_table} ON #{db_table}.customized_type='Issue' AND #{db_table}.customized_id=#{Issue.table_name}.id AND #{db_table}.custom_field_id=#{$1} WHERE " else # regular field db_table = Issue.table_name @@ -320,9 +320,9 @@ class Query < ActiveRecord::Base when "!" sql = sql + "(#{db_table}.#{db_field} IS NULL OR #{db_table}.#{db_field} NOT IN (" + v.collect{|val| "'#{connection.quote_string(val)}'"}.join(",") + "))" when "!*" - sql = sql + "#{db_table}.#{db_field} IS NULL" + sql = sql + "#{db_table}.#{db_field} IS NULL OR #{db_table}.#{db_field} = ''" when "*" - sql = sql + "#{db_table}.#{db_field} IS NOT NULL" + sql = sql + "#{db_table}.#{db_field} IS NOT NULL AND #{db_table}.#{db_field} <> ''" when ">=" sql = sql + "#{db_table}.#{db_field} >= #{v.first.to_i}" when "<=" |