diff options
author | Etienne Massip <etienne.massip@gmail.com> | 2011-09-26 17:44:20 +0000 |
---|---|---|
committer | Etienne Massip <etienne.massip@gmail.com> | 2011-09-26 17:44:20 +0000 |
commit | 98e18b2141d351c37dcd2c643b1623157c4d7ea6 (patch) | |
tree | 3aad326e51eac0fd1093d833235de8558af44873 /app/models | |
parent | ef962b84d7083b2b4d290d64b7089b596073c7be (diff) | |
download | redmine-98e18b2141d351c37dcd2c643b1623157c4d7ea6.tar.gz redmine-98e18b2141d351c37dcd2c643b1623157c4d7ea6.zip |
Allow project column to be removed from the global issue list columns (#8411).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@7538 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'app/models')
-rw-r--r-- | app/models/query.rb | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/app/models/query.rb b/app/models/query.rb index 7bf0b0d2f..b717ecbc2 100644 --- a/app/models/query.rb +++ b/app/models/query.rb @@ -378,14 +378,17 @@ class Query < ActiveRecord::Base end def columns - if has_default_columns? - available_columns.select do |c| - # Adds the project column by default for cross-project lists - Setting.issue_list_default_columns.include?(c.name.to_s) || (c.name == :project && project.nil?) - end - else - # preserve the column_names order - column_names.collect {|name| available_columns.find {|col| col.name == name}}.compact + # preserve the column_names order + (has_default_columns? ? default_columns_names : column_names).collect do |name| + available_columns.find { |col| col.name == name } + end.compact + end + + def default_columns_names + @default_columns_names ||= begin + default_columns = Setting.issue_list_default_columns.map(&:to_sym) + + project.present? ? default_columns : [:project] | default_columns end end @@ -394,7 +397,7 @@ class Query < ActiveRecord::Base names = names.select {|n| n.is_a?(Symbol) || !n.blank? } names = names.collect {|n| n.is_a?(Symbol) ? n : n.to_sym } # Set column_names to nil if default columns - if names.map(&:to_s) == Setting.issue_list_default_columns + if names == default_columns_names names = nil end end |