##// END OF EJS Templates
Adds a 'Move and follow' button on Move/Copy view to be redirected to the created issue(s) rather than the source project issue list (#1847)....
Jean-Philippe Lang -
r2949:7d57833740bb
parent child
Show More
@@ -299,9 +299,14 class IssuesController < ApplicationController
299 if request.post?
299 if request.post?
300 new_tracker = params[:new_tracker_id].blank? ? nil : @target_project.trackers.find_by_id(params[:new_tracker_id])
300 new_tracker = params[:new_tracker_id].blank? ? nil : @target_project.trackers.find_by_id(params[:new_tracker_id])
301 unsaved_issue_ids = []
301 unsaved_issue_ids = []
302 moved_issues = []
302 @issues.each do |issue|
303 @issues.each do |issue|
303 issue.init_journal(User.current)
304 issue.init_journal(User.current)
304 unsaved_issue_ids << issue.id unless issue.move_to(@target_project, new_tracker, params[:copy_options])
305 if r = issue.move_to(@target_project, new_tracker, params[:copy_options])
306 moved_issues << r
307 else
308 unsaved_issue_ids << issue.id
309 end
305 end
310 end
306 if unsaved_issue_ids.empty?
311 if unsaved_issue_ids.empty?
307 flash[:notice] = l(:notice_successful_update) unless @issues.empty?
312 flash[:notice] = l(:notice_successful_update) unless @issues.empty?
@@ -310,7 +315,15 class IssuesController < ApplicationController
310 :total => @issues.size,
315 :total => @issues.size,
311 :ids => '#' + unsaved_issue_ids.join(', #'))
316 :ids => '#' + unsaved_issue_ids.join(', #'))
312 end
317 end
313 redirect_to :controller => 'issues', :action => 'index', :project_id => @project
318 if params[:follow]
319 if @issues.size == 1 && moved_issues.size == 1
320 redirect_to :controller => 'issues', :action => 'show', :id => moved_issues.first
321 else
322 redirect_to :controller => 'issues', :action => 'index', :project_id => (@target_project || @project)
323 end
324 else
325 redirect_to :controller => 'issues', :action => 'index', :project_id => @project
326 end
314 return
327 return
315 end
328 end
316 render :layout => false if request.xhr?
329 render :layout => false if request.xhr?
@@ -25,5 +25,6
25 <%= check_box_tag "copy_options[copy]", "1" %></p>
25 <%= check_box_tag "copy_options[copy]", "1" %></p>
26 </div>
26 </div>
27
27
28 <%= submit_tag l(:button_move) %>
28 <%= submit_tag l(:button_move) %>
29 <%= submit_tag l(:button_move_and_follow), :name => 'follow' %>
29 <% end %>
30 <% end %>
@@ -832,3 +832,4 bg:
832 version_status_open: open
832 version_status_open: open
833 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
833 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
834 label_user_anonymous: Anonymous
834 label_user_anonymous: Anonymous
835 button_move_and_follow: Move and follow
@@ -856,3 +856,4 bs:
856 version_status_open: open
856 version_status_open: open
857 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
857 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
858 label_user_anonymous: Anonymous
858 label_user_anonymous: Anonymous
859 button_move_and_follow: Move and follow
@@ -835,3 +835,4 ca:
835 version_status_open: open
835 version_status_open: open
836 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
836 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
837 label_user_anonymous: Anonymous
837 label_user_anonymous: Anonymous
838 button_move_and_follow: Move and follow
@@ -838,3 +838,4 cs:
838 version_status_open: open
838 version_status_open: open
839 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
839 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
840 label_user_anonymous: Anonymous
840 label_user_anonymous: Anonymous
841 button_move_and_follow: Move and follow
@@ -858,3 +858,4 da:
858 version_status_open: open
858 version_status_open: open
859 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
859 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
860 label_user_anonymous: Anonymous
860 label_user_anonymous: Anonymous
861 button_move_and_follow: Move and follow
@@ -858,3 +858,4 de:
858 version_status_open: open
858 version_status_open: open
859 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
859 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
860 label_user_anonymous: Anonymous
860 label_user_anonymous: Anonymous
861 button_move_and_follow: Move and follow
@@ -838,3 +838,4 el:
838 version_status_open: open
838 version_status_open: open
839 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
839 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
840 label_user_anonymous: Anonymous
840 label_user_anonymous: Anonymous
841 button_move_and_follow: Move and follow
@@ -728,6 +728,7 en:
728 button_list: List
728 button_list: List
729 button_view: View
729 button_view: View
730 button_move: Move
730 button_move: Move
731 button_move_and_follow: Move and follow
731 button_back: Back
732 button_back: Back
732 button_cancel: Cancel
733 button_cancel: Cancel
733 button_activate: Activate
734 button_activate: Activate
@@ -879,3 +879,4 es:
879 version_status_open: open
879 version_status_open: open
880 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
880 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
881 label_user_anonymous: Anonymous
881 label_user_anonymous: Anonymous
882 button_move_and_follow: Move and follow
@@ -868,3 +868,4 fi:
868 version_status_open: open
868 version_status_open: open
869 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
869 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
870 label_user_anonymous: Anonymous
870 label_user_anonymous: Anonymous
871 button_move_and_follow: Move and follow
@@ -745,6 +745,7 fr:
745 button_list: Lister
745 button_list: Lister
746 button_view: Voir
746 button_view: Voir
747 button_move: Déplacer
747 button_move: Déplacer
748 button_move_and_follow: Déplacer et suivre
748 button_back: Retour
749 button_back: Retour
749 button_cancel: Annuler
750 button_cancel: Annuler
750 button_activate: Activer
751 button_activate: Activer
@@ -858,3 +858,4 gl:
858 version_status_open: open
858 version_status_open: open
859 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
859 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
860 label_user_anonymous: Anonymous
860 label_user_anonymous: Anonymous
861 button_move_and_follow: Move and follow
@@ -842,3 +842,4 he:
842 version_status_open: open
842 version_status_open: open
843 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
843 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
844 label_user_anonymous: Anonymous
844 label_user_anonymous: Anonymous
845 button_move_and_follow: Move and follow
@@ -863,3 +863,4
863 version_status_open: open
863 version_status_open: open
864 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
864 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
865 label_user_anonymous: Anonymous
865 label_user_anonymous: Anonymous
866 button_move_and_follow: Move and follow
@@ -845,3 +845,4 it:
845 version_status_open: open
845 version_status_open: open
846 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
846 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
847 label_user_anonymous: Anonymous
847 label_user_anonymous: Anonymous
848 button_move_and_follow: Move and follow
@@ -867,3 +867,4 ja:
867 version_status_open: open
867 version_status_open: open
868 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
868 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
869 label_user_anonymous: Anonymous
869 label_user_anonymous: Anonymous
870 button_move_and_follow: Move and follow
@@ -898,3 +898,4 ko:
898 version_status_open: open
898 version_status_open: open
899 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
899 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
900 label_user_anonymous: Anonymous
900 label_user_anonymous: Anonymous
901 button_move_and_follow: Move and follow
@@ -868,3 +868,4 lt:
868 version_status_open: open
868 version_status_open: open
869 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
869 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
870 label_user_anonymous: Anonymous
870 label_user_anonymous: Anonymous
871 button_move_and_follow: Move and follow
@@ -820,3 +820,4 nl:
820 version_status_open: open
820 version_status_open: open
821 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
821 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
822 label_user_anonymous: Anonymous
822 label_user_anonymous: Anonymous
823 button_move_and_follow: Move and follow
@@ -833,3 +833,4
833 version_status_open: open
833 version_status_open: open
834 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
834 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
835 label_user_anonymous: Anonymous
835 label_user_anonymous: Anonymous
836 button_move_and_follow: Move and follow
@@ -861,3 +861,4 pl:
861 version_status_open: open
861 version_status_open: open
862 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
862 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
863 label_user_anonymous: Anonymous
863 label_user_anonymous: Anonymous
864 button_move_and_follow: Move and follow
@@ -864,3 +864,4 pt-BR:
864 version_status_open: aberto
864 version_status_open: aberto
865 error_can_not_reopen_issue_on_closed_version: Uma tarefa atribuída a uma versão fechada não pode ser reaberta
865 error_can_not_reopen_issue_on_closed_version: Uma tarefa atribuída a uma versão fechada não pode ser reaberta
866 label_user_anonymous: Anônimo
866 label_user_anonymous: Anônimo
867 button_move_and_follow: Move and follow
@@ -850,3 +850,4 pt:
850 version_status_open: open
850 version_status_open: open
851 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
851 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
852 label_user_anonymous: Anonymous
852 label_user_anonymous: Anonymous
853 button_move_and_follow: Move and follow
@@ -835,3 +835,4 ro:
835 version_status_open: open
835 version_status_open: open
836 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
836 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
837 label_user_anonymous: Anonymous
837 label_user_anonymous: Anonymous
838 button_move_and_follow: Move and follow
@@ -946,3 +946,4 ru:
946 version_status_open: открыт
946 version_status_open: открыт
947 error_can_not_reopen_issue_on_closed_version: Задача, назначенная к закрытой версии, не сможет быть открыта снова
947 error_can_not_reopen_issue_on_closed_version: Задача, назначенная к закрытой версии, не сможет быть открыта снова
948 label_user_anonymous: Аноним
948 label_user_anonymous: Аноним
949 button_move_and_follow: Move and follow
@@ -837,3 +837,4 sk:
837 version_status_open: open
837 version_status_open: open
838 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
838 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
839 label_user_anonymous: Anonymous
839 label_user_anonymous: Anonymous
840 button_move_and_follow: Move and follow
@@ -834,3 +834,4 sl:
834 version_status_open: open
834 version_status_open: open
835 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
835 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
836 label_user_anonymous: Anonymous
836 label_user_anonymous: Anonymous
837 button_move_and_follow: Move and follow
@@ -853,3 +853,4
853 version_status_open: open
853 version_status_open: open
854 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
854 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
855 label_user_anonymous: Anonymous
855 label_user_anonymous: Anonymous
856 button_move_and_follow: Move and follow
@@ -886,3 +886,4 sv:
886 version_status_open: open
886 version_status_open: open
887 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
887 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
888 label_user_anonymous: Anonymous
888 label_user_anonymous: Anonymous
889 button_move_and_follow: Move and follow
@@ -835,3 +835,4 th:
835 version_status_open: open
835 version_status_open: open
836 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
836 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
837 label_user_anonymous: Anonymous
837 label_user_anonymous: Anonymous
838 button_move_and_follow: Move and follow
@@ -865,3 +865,4 tr:
865 version_status_open: open
865 version_status_open: open
866 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
866 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
867 label_user_anonymous: Anonymous
867 label_user_anonymous: Anonymous
868 button_move_and_follow: Move and follow
@@ -834,3 +834,4 uk:
834 version_status_open: open
834 version_status_open: open
835 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
835 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
836 label_user_anonymous: Anonymous
836 label_user_anonymous: Anonymous
837 button_move_and_follow: Move and follow
@@ -897,3 +897,4 vi:
897 version_status_open: open
897 version_status_open: open
898 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
898 error_can_not_reopen_issue_on_closed_version: An issue assigned to a closed version can not be reopened
899 label_user_anonymous: Anonymous
899 label_user_anonymous: Anonymous
900 button_move_and_follow: Move and follow
@@ -929,3 +929,4
929 enumeration_doc_categories: 文件分類
929 enumeration_doc_categories: 文件分類
930 enumeration_activities: 活動 (時間追蹤)
930 enumeration_activities: 活動 (時間追蹤)
931 enumeration_system_activity: 系統活動
931 enumeration_system_activity: 系統活動
932 button_move_and_follow: Move and follow
@@ -862,3 +862,4 zh:
862 enumeration_doc_categories: 文档类别
862 enumeration_doc_categories: 文档类别
863 enumeration_activities: 活动(时间跟踪)
863 enumeration_activities: 活动(时间跟踪)
864 enumeration_system_activity: 系统活动
864 enumeration_system_activity: 系统活动
865 button_move_and_follow: Move and follow
@@ -968,6 +968,12 class IssuesControllerTest < ActionController::TestCase
968 assert_equal 2, Issue.find(1).project_id
968 assert_equal 2, Issue.find(1).project_id
969 end
969 end
970
970
971 def test_move_one_issue_to_another_project_should_follow_when_needed
972 @request.session[:user_id] = 2
973 post :move, :id => 1, :new_project_id => 2, :follow => '1'
974 assert_redirected_to '/issues/1'
975 end
976
971 def test_bulk_move_to_another_project
977 def test_bulk_move_to_another_project
972 @request.session[:user_id] = 2
978 @request.session[:user_id] = 2
973 post :move, :ids => [1, 2], :new_project_id => 2
979 post :move, :ids => [1, 2], :new_project_id => 2
@@ -997,6 +1003,13 class IssuesControllerTest < ActionController::TestCase
997 end
1003 end
998 assert_redirected_to 'projects/ecookbook/issues'
1004 assert_redirected_to 'projects/ecookbook/issues'
999 end
1005 end
1006
1007 def test_copy_to_another_project_should_follow_when_needed
1008 @request.session[:user_id] = 2
1009 post :move, :ids => [1], :new_project_id => 2, :copy_options => {:copy => '1'}, :follow => '1'
1010 issue = Issue.first(:order => 'id DESC')
1011 assert_redirected_to :controller => 'issues', :action => 'show', :id => issue
1012 end
1000
1013
1001 def test_context_menu_one_issue
1014 def test_context_menu_one_issue
1002 @request.session[:user_id] = 2
1015 @request.session[:user_id] = 2
General Comments 0
You need to be logged in to leave comments. Login now