summaryrefslogtreecommitdiffstats
path: root/app
diff options
context:
space:
mode:
authorGo MAEDA <maeda@farend.jp>2022-09-17 07:58:12 +0000
committerGo MAEDA <maeda@farend.jp>2022-09-17 07:58:12 +0000
commitab2b130e3c3de6b861264a01ccdb6c90a3d7e5d6 (patch)
tree3cab7489c9c78d3749756eba46d8c9d7aedf7fb5 /app
parentd4b7634cc6c8f992a2d466c0302eebb7ccbd30a8 (diff)
downloadredmine-ab2b130e3c3de6b861264a01ccdb6c90a3d7e5d6.tar.gz
redmine-ab2b130e3c3de6b861264a01ccdb6c90a3d7e5d6.zip
Ignore statuses if workflow only defines identity transition (#37636).
Patch by Holger Just. git-svn-id: https://svn.redmine.org/redmine/trunk@21818 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'app')
-rw-r--r--app/controllers/workflows_controller.rb2
-rw-r--r--app/models/tracker.rb1
2 files changed, 3 insertions, 0 deletions
diff --git a/app/controllers/workflows_controller.rb b/app/controllers/workflows_controller.rb
index c0d5f865e..3157ec6b3 100644
--- a/app/controllers/workflows_controller.rb
+++ b/app/controllers/workflows_controller.rb
@@ -161,6 +161,8 @@ class WorkflowsController < ApplicationController
role_ids = Role.all.select(&:consider_workflow?).map(&:id)
status_ids = WorkflowTransition.where(
:tracker_id => @trackers.map(&:id), :role_id => role_ids
+ ).where(
+ 'old_status_id <> new_status_id'
).distinct.pluck(:old_status_id, :new_status_id).flatten.uniq
@statuses = IssueStatus.where(:id => status_ids).sorted.to_a.presence
end
diff --git a/app/models/tracker.rb b/app/models/tracker.rb
index c5665054c..fcc61222f 100644
--- a/app/models/tracker.rb
+++ b/app/models/tracker.rb
@@ -108,6 +108,7 @@ class Tracker < ActiveRecord::Base
else
@issue_status_ids ||=
WorkflowTransition.where(:tracker_id => id).
+ where('old_status_id <> new_status_id').
distinct.pluck(:old_status_id, :new_status_id).flatten.uniq
end
end