diff --git a/app/controllers/trackers_controller.rb b/app/controllers/trackers_controller.rb index db30862..a473bcf 100644 --- a/app/controllers/trackers_controller.rb +++ b/app/controllers/trackers_controller.rb @@ -35,9 +35,16 @@ class TrackersController < ApplicationController def new @tracker = Tracker.new(params[:tracker]) if request.post? and @tracker.save + # workflow copy + if params[:copy_workflow_from] && (copy_from = Tracker.find_by_id(params[:copy_workflow_from])) + copy_from.workflows.each do |w| + @tracker.workflows << w.clone + end + end flash[:notice] = l(:notice_successful_create) redirect_to :action => 'list' end + @trackers = Tracker.find :all end def edit diff --git a/app/views/trackers/_form.rhtml b/app/views/trackers/_form.rhtml index 3dea238..26a3444 100644 --- a/app/views/trackers/_form.rhtml +++ b/app/views/trackers/_form.rhtml @@ -4,5 +4,8 @@
<%= f.text_field :name, :required => true %>
<%= f.check_box :is_in_chlog %>
<%= f.check_box :is_in_roadmap %>
+<% if @tracker.new_record? %> +<%= select_tag(:copy_workflow_from, content_tag("option") + options_from_collection_for_select(@trackers, :id, :name)) %>
+<% end %> diff --git a/lang/de.yml b/lang/de.yml index a98947d..39b3ea1 100644 --- a/lang/de.yml +++ b/lang/de.yml @@ -354,6 +354,7 @@ label_view_diff: View differences label_diff_inline: inline label_diff_side_by_side: side by side label_options: Options +label_copy_workflow_from: Copy workflow from button_login: Einloggen button_submit: OK diff --git a/lang/en.yml b/lang/en.yml index d4c5892..4f0cbe9 100644 --- a/lang/en.yml +++ b/lang/en.yml @@ -354,6 +354,7 @@ label_view_diff: View differences label_diff_inline: inline label_diff_side_by_side: side by side label_options: Options +label_copy_workflow_from: Copy workflow from button_login: Login button_submit: Submit diff --git a/lang/es.yml b/lang/es.yml index aad0b95..7b05f37 100644 --- a/lang/es.yml +++ b/lang/es.yml @@ -354,6 +354,7 @@ label_view_diff: View differences label_diff_inline: inline label_diff_side_by_side: side by side label_options: Options +label_copy_workflow_from: Copy workflow from button_login: Conexión button_submit: Someter diff --git a/lang/fr.yml b/lang/fr.yml index 4218ca4..564b5fe 100644 --- a/lang/fr.yml +++ b/lang/fr.yml @@ -354,6 +354,7 @@ label_view_diff: Voir les différences label_diff_inline: en ligne label_diff_side_by_side: côte à côte label_options: Options +label_copy_workflow_from: Copier le workflow de button_login: Connexion button_submit: Soumettre diff --git a/lang/it.yml b/lang/it.yml index d5c0f43..fc2d405 100644 --- a/lang/it.yml +++ b/lang/it.yml @@ -354,6 +354,7 @@ label_view_diff: View differences label_diff_inline: inline label_diff_side_by_side: side by side label_options: Options +label_copy_workflow_from: Copy workflow from button_login: Login button_submit: Invia diff --git a/lang/ja.yml b/lang/ja.yml index 127dbbe..db4335c 100644 --- a/lang/ja.yml +++ b/lang/ja.yml @@ -355,6 +355,7 @@ label_view_diff: 差分を見る label_diff_inline: インライン label_diff_side_by_side: 横に並べる label_options: Options +label_copy_workflow_from: Copy workflow from button_login: ログイン button_submit: 変更 diff --git a/lang/zh.yml b/lang/zh.yml index 1496583..a0508d3 100644 --- a/lang/zh.yml +++ b/lang/zh.yml @@ -357,6 +357,7 @@ label_view_diff: View differences label_diff_inline: inline label_diff_side_by_side: side by side label_options: Options +label_copy_workflow_from: Copy workflow from button_login: 登录 button_submit: 提交