summaryrefslogtreecommitdiffstats
path: root/app
diff options
context:
space:
mode:
authorJean-Philippe Lang <jp_lang@yahoo.fr>2010-11-07 15:38:51 +0000
committerJean-Philippe Lang <jp_lang@yahoo.fr>2010-11-07 15:38:51 +0000
commit63866407f123f0f991c164d5e715e3fbbcdf53df (patch)
tree644c74c84a0174453e0aa5a71459f163b05289e4 /app
parent2ca9bb3cca0b43e4a3ee8da12d87baf957acbeab (diff)
downloadredmine-63866407f123f0f991c164d5e715e3fbbcdf53df.tar.gz
redmine-63866407f123f0f991c164d5e715e3fbbcdf53df.zip
Fixed: unchecking status filter on the issue list has no effect (#6844).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4387 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'app')
-rw-r--r--app/helpers/queries_helper.rb7
-rw-r--r--app/models/query.rb6
-rw-r--r--app/views/queries/_filters.rhtml1
3 files changed, 8 insertions, 6 deletions
diff --git a/app/helpers/queries_helper.rb b/app/helpers/queries_helper.rb
index 26be63693..e9ab3769f 100644
--- a/app/helpers/queries_helper.rb
+++ b/app/helpers/queries_helper.rb
@@ -78,10 +78,9 @@ module QueriesHelper
# Give it a name, required to be valid
@query = Query.new(:name => "_")
@query.project = @project
- if params[:fields] and params[:fields].is_a? Array
- params[:fields].each do |field|
- @query.add_filter(field, params[:operators][field], params[:values][field])
- end
+ if params[:fields]
+ @query.filters = {}
+ @query.add_filters(params[:fields], params[:operators], params[:values])
else
@query.available_filters.keys.each do |field|
@query.add_short_filter(field, params[field]) if params[field]
diff --git a/app/models/query.rb b/app/models/query.rb
index 638cc8226..7c246f9ae 100644
--- a/app/models/query.rb
+++ b/app/models/query.rb
@@ -258,8 +258,10 @@ class Query < ActiveRecord::Base
# Add multiple filters using +add_filter+
def add_filters(fields, operators, values)
- fields.each do |field|
- add_filter(field, operators[field], values[field])
+ if fields.is_a?(Array) && operators.is_a?(Hash) && values.is_a?(Hash)
+ fields.each do |field|
+ add_filter(field, operators[field], values[field])
+ end
end
end
diff --git a/app/views/queries/_filters.rhtml b/app/views/queries/_filters.rhtml
index 20640eb8d..29f916eb7 100644
--- a/app/views/queries/_filters.rhtml
+++ b/app/views/queries/_filters.rhtml
@@ -114,3 +114,4 @@ Event.observe(document,"dom:loaded", apply_filters_observer);
</td>
</tr>
</table>
+<%= hidden_field_tag 'fields[]', '' %>