summaryrefslogtreecommitdiffstats
path: root/app/models/tracker.rb
diff options
context:
space:
mode:
authorJean-Philippe Lang <jp_lang@yahoo.fr>2009-12-12 10:06:07 +0000
committerJean-Philippe Lang <jp_lang@yahoo.fr>2009-12-12 10:06:07 +0000
commit5c6ce51ec9f1f3f6687db06d0faeb61d1524198d (patch)
tree34b9083d62a6f99dbc297837f7f93ea11e0cf813 /app/models/tracker.rb
parentddeaf9da965c1145e65c1552414b3432a5291ea1 (diff)
downloadredmine-5c6ce51ec9f1f3f6687db06d0faeb61d1524198d.tar.gz
redmine-5c6ce51ec9f1f3f6687db06d0faeb61d1524198d.zip
Adds workflow copy functionality (#1727).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3154 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'app/models/tracker.rb')
-rw-r--r--app/models/tracker.rb10
1 files changed, 2 insertions, 8 deletions
diff --git a/app/models/tracker.rb b/app/models/tracker.rb
index 7c5bae250..8f7a98c39 100644
--- a/app/models/tracker.rb
+++ b/app/models/tracker.rb
@@ -19,14 +19,8 @@ class Tracker < ActiveRecord::Base
before_destroy :check_integrity
has_many :issues
has_many :workflows, :dependent => :delete_all do
- def copy(tracker)
- raise "Can not copy workflow from a #{tracker.class}" unless tracker.is_a?(Tracker)
- raise "Can not copy workflow from/to an unsaved tracker" if proxy_owner.new_record? || tracker.new_record?
- clear
- connection.insert "INSERT INTO #{Workflow.table_name} (tracker_id, old_status_id, new_status_id, role_id)" +
- " SELECT #{proxy_owner.id}, old_status_id, new_status_id, role_id" +
- " FROM #{Workflow.table_name}" +
- " WHERE tracker_id = #{tracker.id}"
+ def copy(source_tracker)
+ Workflow.copy(source_tracker, nil, proxy_owner, nil)
end
end