From b6d26dc1700c485183351af52e275da4b1a759f8 Mon Sep 17 00:00:00 2001 From: Go MAEDA Date: Tue, 11 Feb 2020 01:10:48 +0000 Subject: Add system setting for default results display format of project query (#32818). Patch by Takenori TAKAKI and Marius BALTEANU. git-svn-id: http://svn.redmine.org/redmine/trunk@19505 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- app/models/project_query.rb | 4 ++++ app/models/query.rb | 6 +++++- app/views/settings/_projects.html.erb | 7 +++++++ 3 files changed, 16 insertions(+), 1 deletion(-) (limited to 'app') diff --git a/app/models/project_query.rb b/app/models/project_query.rb index 54c16d8e6..703e979d5 100644 --- a/app/models/project_query.rb +++ b/app/models/project_query.rb @@ -82,6 +82,10 @@ class ProjectQuery < Query @default_columns_names = Setting.project_list_defaults.symbolize_keys[:column_names].map(&:to_sym) end + def default_display_type + Setting.project_list_display_type + end + def default_sort_criteria [[]] end diff --git a/app/models/query.rb b/app/models/query.rb index 5672a6e9e..5dec730d3 100644 --- a/app/models/query.rb +++ b/app/models/query.rb @@ -766,6 +766,10 @@ class Query < ActiveRecord::Base [] end + def default_display_type + self.available_display_types.first + end + def column_names=(names) if names names = names.select {|n| n.is_a?(Symbol) || !n.blank? } @@ -997,7 +1001,7 @@ class Query < ActiveRecord::Base end def display_type - options[:display_type] || self.available_display_types.first + options[:display_type] || self.default_display_type end def display_type=(type) diff --git a/app/views/settings/_projects.html.erb b/app/views/settings/_projects.html.erb index 230e2803e..d6c51a7f1 100644 --- a/app/views/settings/_projects.html.erb +++ b/app/views/settings/_projects.html.erb @@ -19,6 +19,13 @@
<%= l(:setting_project_list_defaults) %> <% query = ProjectQuery.new(Setting.project_list_defaults) %> +

+ + <% query.available_display_types.each do |t| %> + <%= radio_button_tag('settings[project_list_display_type]', t, Setting.project_list_display_type == t, :id => "setting_project_list_display_type_#{t}") %> + <%= content_tag('label', l(:"label_display_type_#{t}"), :for => "settings_project_list_display_type_#{t}", :class => "inline") %> + <% end %> +

<%= render_query_columns_selection(query, :name => 'settings[project_list_defaults][column_names]') %>
-- cgit v1.2.3