diff options
author | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2009-12-12 10:06:07 +0000 |
---|---|---|
committer | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2009-12-12 10:06:07 +0000 |
commit | 5c6ce51ec9f1f3f6687db06d0faeb61d1524198d (patch) | |
tree | 34b9083d62a6f99dbc297837f7f93ea11e0cf813 /app/models/tracker.rb | |
parent | ddeaf9da965c1145e65c1552414b3432a5291ea1 (diff) | |
download | redmine-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.rb | 10 |
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 |