summaryrefslogtreecommitdiffstats
path: root/app/controllers
diff options
context:
space:
mode:
authorJean-Philippe Lang <jp_lang@yahoo.fr>2017-01-30 21:24:18 +0000
committerJean-Philippe Lang <jp_lang@yahoo.fr>2017-01-30 21:24:18 +0000
commit252804f7da50f73ed7de9561c87c5a34140d2eab (patch)
tree1000feb3c449495c54dc0b7e3bfb2757b66bf847 /app/controllers
parentbe6199add30b888fb6706a9f7c0010750bda7460 (diff)
downloadredmine-252804f7da50f73ed7de9561c87c5a34140d2eab.tar.gz
redmine-252804f7da50f73ed7de9561c87c5a34140d2eab.zip
Redirect to the parent issue after adding a subtask.
git-svn-id: http://svn.redmine.org/redmine/trunk@16317 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'app/controllers')
-rw-r--r--app/controllers/issues_controller.rb13
1 files changed, 8 insertions, 5 deletions
diff --git a/app/controllers/issues_controller.rb b/app/controllers/issues_controller.rb
index efd221087..ee24d53a1 100644
--- a/app/controllers/issues_controller.rb
+++ b/app/controllers/issues_controller.rb
@@ -578,15 +578,18 @@ class IssuesController < ApplicationController
# Redirects user after a successful issue creation
def redirect_after_create
if params[:continue]
- attrs = {:tracker_id => @issue.tracker, :parent_issue_id => @issue.parent_issue_id}.reject {|k,v| v.nil?}
+ url_params = {}
+ url_params[:issue] = {:tracker_id => @issue.tracker, :parent_issue_id => @issue.parent_issue_id}.reject {|k,v| v.nil?}
+ url_params[:back_url] = params[:back_url].presence
+
if params[:project_id]
- redirect_to new_project_issue_path(@issue.project, :issue => attrs)
+ redirect_to new_project_issue_path(@issue.project, url_params)
else
- attrs.merge! :project_id => @issue.project_id
- redirect_to new_issue_path(:issue => attrs)
+ url_params[:issue].merge! :project_id => @issue.project_id
+ redirect_to new_issue_path(url_params)
end
else
- redirect_to issue_path(@issue)
+ redirect_back_or_default issue_path(@issue)
end
end
end