diff options
author | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2015-08-02 07:02:44 +0000 |
---|---|---|
committer | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2015-08-02 07:02:44 +0000 |
commit | 279e4b7aa024a308f30d60e303b16a44ebec29ed (patch) | |
tree | e09d042a7a466097b359e6e697dbf82c0aa9d9bf | |
parent | 14d3a11542b4db36fb4b389e773d20b16ff64a7f (diff) | |
download | redmine-279e4b7aa024a308f30d60e303b16a44ebec29ed.tar.gz redmine-279e4b7aa024a308f30d60e303b16a44ebec29ed.zip |
Cannot create a custom query visibility is "to these roles only" (#20427).
git-svn-id: http://svn.redmine.org/redmine/trunk@14472 e93f8b46-1217-0410-a6f0-8f06a7374b81
-rw-r--r-- | app/controllers/queries_controller.rb | 1 | ||||
-rw-r--r-- | test/functional/queries_controller_test.rb | 16 |
2 files changed, 17 insertions, 0 deletions
diff --git a/app/controllers/queries_controller.rb b/app/controllers/queries_controller.rb index e09790b94..72c09de64 100644 --- a/app/controllers/queries_controller.rb +++ b/app/controllers/queries_controller.rb @@ -108,6 +108,7 @@ private @query.name = params[:query] && params[:query][:name] if User.current.allowed_to?(:manage_public_queries, @query.project) || User.current.admin? @query.visibility = (params[:query] && params[:query][:visibility]) || IssueQuery::VISIBILITY_PRIVATE + @query.role_ids = params[:query] && params[:query][:role_ids] else @query.visibility = IssueQuery::VISIBILITY_PRIVATE end diff --git a/test/functional/queries_controller_test.rb b/test/functional/queries_controller_test.rb index dd93de4bf..68dac7aa3 100644 --- a/test/functional/queries_controller_test.rb +++ b/test/functional/queries_controller_test.rb @@ -92,6 +92,22 @@ class QueriesControllerTest < ActionController::TestCase assert q.valid? end + def test_create_project_roles_query + @request.session[:user_id] = 2 + post :create, + :project_id => 'ecookbook', + :default_columns => '1', + :fields => ["status_id", "assigned_to_id"], + :operators => {"assigned_to_id" => "=", "status_id" => "o"}, + :values => { "assigned_to_id" => ["1"], "status_id" => ["1"]}, + :query => {"name" => "test_create_project_roles_query", "visibility" => "1", "role_ids" => ["1", "2", ""]} + + q = Query.find_by_name('test_create_project_roles_query') + assert_redirected_to :controller => 'issues', :action => 'index', :project_id => 'ecookbook', :query_id => q + assert_equal Query::VISIBILITY_ROLES, q.visibility + assert_equal [1, 2], q.roles.ids.sort + end + def test_create_global_private_query_with_custom_columns @request.session[:user_id] = 3 post :create, |