@@ -779,25 +779,30 class Issue < ActiveRecord::Base | |||
|
779 | 779 | initial_status = nil |
|
780 | 780 | if new_record? |
|
781 | 781 | initial_status = IssueStatus.default |
|
782 | elsif status_id_was | |
|
783 |
initial_status = |
|
|
782 | else | |
|
783 | initial_status = status_was | |
|
784 | 784 | end |
|
785 | initial_status ||= status | |
|
786 | 785 | |
|
787 | 786 | initial_assigned_to_id = assigned_to_id_changed? ? assigned_to_id_was : assigned_to_id |
|
788 | 787 | assignee_transitions_allowed = initial_assigned_to_id.present? && |
|
789 | 788 | (user.id == initial_assigned_to_id || user.group_ids.include?(initial_assigned_to_id)) |
|
790 | 789 | |
|
791 | statuses = initial_status.find_new_statuses_allowed_to( | |
|
792 | user.admin ? Role.all : user.roles_for_project(project), | |
|
790 | statuses = [] | |
|
791 | if initial_status | |
|
792 | statuses += initial_status.find_new_statuses_allowed_to( | |
|
793 | user.admin ? Role.all.to_a : user.roles_for_project(project), | |
|
793 | 794 | tracker, |
|
794 | 795 | author == user, |
|
795 | 796 | assignee_transitions_allowed |
|
796 | 797 | ) |
|
798 | end | |
|
797 | 799 | statuses << initial_status unless statuses.empty? |
|
798 | 800 | statuses << IssueStatus.default if include_default |
|
799 | 801 | statuses = statuses.compact.uniq.sort |
|
800 | blocked? ? statuses.reject {|s| s.is_closed?} : statuses | |
|
802 | if blocked? | |
|
803 | statuses.reject!(&:is_closed?) | |
|
804 | end | |
|
805 | statuses | |
|
801 | 806 | end |
|
802 | 807 | end |
|
803 | 808 |
General Comments 0
You need to be logged in to leave comments.
Login now