]> source.dussan.org Git - redmine.git/commitdiff
Refactor: extract method from #move and #perform_move.
authorEric Davis <edavis@littlestreamsoftware.com>
Tue, 10 Aug 2010 15:11:11 +0000 (15:11 +0000)
committerEric Davis <edavis@littlestreamsoftware.com>
Tue, 10 Aug 2010 15:11:11 +0000 (15:11 +0000)
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3932 e93f8b46-1217-0410-a6f0-8f06a7374b81

app/controllers/issues_controller.rb

index a7e227c85239efd3d10b21bab966124b7b2cea18..46c61ea0f87b9a05a1e8c41e622ee8d7b4752e5d 100644 (file)
@@ -251,25 +251,14 @@ class IssuesController < ApplicationController
   end
 
   def move
-    @issues.sort!
-    @copy = params[:copy_options] && params[:copy_options][:copy]
-    @allowed_projects = Issue.allowed_target_projects_on_move
-    @target_project = @allowed_projects.detect {|p| p.id.to_s == params[:new_project_id]} if params[:new_project_id]
-    @target_project ||= @project    
-    @trackers = @target_project.trackers
-    @available_statuses = Workflow.available_statuses(@project)
+    prepare_for_issue_move
     render :layout => false if request.xhr?
   end
 
   # TODO: more descriptive name? move to separate controller like IssueMovesController?
   def perform_move
-    @issues.sort!
-    @copy = params[:copy_options] && params[:copy_options][:copy]
-    @allowed_projects = Issue.allowed_target_projects_on_move
-    @target_project = @allowed_projects.detect {|p| p.id.to_s == params[:new_project_id]} if params[:new_project_id]
-    @target_project ||= @project    
-    @trackers = @target_project.trackers
-    @available_statuses = Workflow.available_statuses(@project)
+    prepare_for_issue_move
+
     if request.post?
       new_tracker = params[:new_tracker_id].blank? ? nil : @target_project.trackers.find_by_id(params[:new_tracker_id])
       unsaved_issue_ids = []
@@ -473,6 +462,16 @@ private
     @allowed_statuses = @issue.new_statuses_allowed_to(User.current, true)
   end
 
+  def prepare_for_issue_move
+    @issues.sort!
+    @copy = params[:copy_options] && params[:copy_options][:copy]
+    @allowed_projects = Issue.allowed_target_projects_on_move
+    @target_project = @allowed_projects.detect {|p| p.id.to_s == params[:new_project_id]} if params[:new_project_id]
+    @target_project ||= @project    
+    @trackers = @target_project.trackers
+    @available_statuses = Workflow.available_statuses(@project)
+  end
+
   def set_flash_from_bulk_issue_save(issues, unsaved_issue_ids)
     if unsaved_issue_ids.empty?
       flash[:notice] = l(:notice_successful_update) unless issues.empty?