Patch by Marius BALTEANU. git-svn-id: http://svn.redmine.org/redmine/trunk@18766 e93f8b46-1217-0410-a6f0-8f06a7374b81tags/4.1.0
@@ -274,6 +274,6 @@ class ProjectsController < ApplicationController | |||
end | |||
def retrieve_project_query | |||
retrieve_query(ProjectQuery, false) | |||
retrieve_query(ProjectQuery, false, :defaults => @default_columns_names) | |||
end | |||
end |
@@ -69,7 +69,7 @@ class ProjectQuery < Query | |||
end | |||
def default_columns_names | |||
@default_columns_names ||= [:name, :identifier, :short_description] | |||
@default_columns_names = Setting.project_list_defaults.symbolize_keys[:column_names].map(&:to_sym) | |||
end | |||
def default_sort_criteria |
@@ -16,5 +16,13 @@ | |||
:blank => "--- #{l(:actionview_instancetag_blank_option)} ---" %></p> | |||
</div> | |||
<fieldset class="box"> | |||
<legend><%= l(:setting_project_list_defaults) %></legend> | |||
<% query = ProjectQuery.new(Setting.project_list_defaults) %> | |||
<%= render_query_columns_selection(query, | |||
:name => 'settings[project_list_defaults][column_names]') %> | |||
</fieldset> | |||
<%= submit_tag l(:button_save) %> | |||
<% end %> |
@@ -484,6 +484,7 @@ en: | |||
setting_timelog_max_hours_per_day: Maximum hours that can be logged per day and user | |||
setting_timelog_accept_future_dates: Accept time logs on future dates | |||
setting_show_status_changes_in_mail_subject: Show status changes in issue mail notifications subject | |||
setting_project_list_defaults: Projects list defaults | |||
permission_add_project: Create project | |||
permission_add_subprojects: Create subprojects |
@@ -230,6 +230,13 @@ time_entry_list_defaults: | |||
- hours | |||
totalable_names: | |||
- hours | |||
project_list_defaults: | |||
serialized: true | |||
default: | |||
column_names: | |||
- name | |||
- identifier | |||
- short_description | |||
issue_done_ratio: | |||
default: 'issue_field' | |||
default_projects_public: |
@@ -147,6 +147,16 @@ class ProjectsControllerTest < Redmine::ControllerTest | |||
assert_include 'idnt-2', child_level2 | |||
end | |||
def test_index_with_default_query_setting | |||
with_settings :project_list_defaults => {'column_names' => %w(name short_description status)} do | |||
get :index, :params => { | |||
:display_type => 'list' | |||
} | |||
assert_response :success | |||
end | |||
assert_equal ['Name', 'Description', 'Status'], columns_in_list | |||
end | |||
def test_autocomplete_js | |||
get :autocomplete, :params => { | |||
:format => 'js', |