Fixed: issue status bulk edit broken by r2726 (#3347).

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2744 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Jean-Philippe Lang 2009-05-14 18:18:29 +00:00
parent e9a6730f4a
commit f7d7186c13
2 changed files with 13 additions and 1 deletions

View File

@ -256,7 +256,7 @@ class IssuesController < ApplicationController
issue.custom_field_values = custom_field_values if custom_field_values && !custom_field_values.empty?
call_hook(:controller_issues_bulk_edit_before_save, { :params => params, :issue => issue })
# Don't save any change to the issue if the user is not authorized to apply the requested status
unless (status.nil? || (issue.status.new_status_allowed_to?(status, current_role, issue.tracker) && issue.status = status)) && issue.save
unless (status.nil? || (issue.new_statuses_allowed_to(User.current).include?(status) && issue.status = status)) && issue.save
# Keep unsaved issue ids to display them in flash error
unsaved_issue_ids << issue.id
end

View File

@ -873,6 +873,18 @@ class IssuesControllerTest < Test::Unit::TestCase
assert_equal 2, ActionMailer::Base.deliveries.size
end
def test_bulk_edit_status
@request.session[:user_id] = 2
# update issues priority
post :bulk_edit, :ids => [1, 2], :priority_id => '',
:assigned_to_id => '',
:status_id => '5',
:notes => 'Bulk editing status'
assert_response 302
issue = Issue.find(1)
assert issue.closed?
end
def test_bulk_edit_custom_field
@request.session[:user_id] = 2
# update issues priority