summaryrefslogtreecommitdiff
path: root/app/controllers/projects/commit_controller.rb
diff options
context:
space:
mode:
authorRubén Dávila <rdavila84@gmail.com>2016-02-08 15:37:27 -0500
committerRobert Speicher <rspeicher@gmail.com>2016-02-19 13:14:52 -0500
commita28eef1d1a871c14142d01f1ef8c76660da34c21 (patch)
treedbf503b472f2ecb09ad0d7d0af69ea166604344d /app/controllers/projects/commit_controller.rb
parent38752d159d4f7c06d374666f95fd52864449d838 (diff)
downloadgitlab-ce-a28eef1d1a871c14142d01f1ef8c76660da34c21.tar.gz
Update copy and URLs used when reverting MRs.
Diffstat (limited to 'app/controllers/projects/commit_controller.rb')
-rw-r--r--app/controllers/projects/commit_controller.rb26
1 files changed, 23 insertions, 3 deletions
diff --git a/app/controllers/projects/commit_controller.rb b/app/controllers/projects/commit_controller.rb
index 330285306ef..d87a6fffc9c 100644
--- a/app/controllers/projects/commit_controller.rb
+++ b/app/controllers/projects/commit_controller.rb
@@ -62,13 +62,32 @@ class Projects::CommitController < Projects::ApplicationController
def revert
return render_404 if @target_branch.blank?
- create_commit(Commits::RevertService, success_notice: "The commit has been successfully reverted.",
- success_path: namespace_project_commits_path(@project.namespace, @project, @target_branch),
- failure_path: namespace_project_commit_path(@project.namespace, @project, params[:id]))
+ create_commit(Commits::RevertService, success_notice: "The #{revert_type_title} has been successfully reverted.",
+ success_path: successful_revert_path, failure_path: failed_revert_path)
end
private
+ def revert_type_title
+ @commit.merged_merge_request ? 'merge request' : 'commit'
+ end
+
+ def successful_revert_path
+ return referenced_merge_request_url if @commit.merged_merge_request
+
+ namespace_project_commits_url(@project.namespace, @project, @target_branch)
+ end
+
+ def failed_revert_path
+ return referenced_merge_request_url if @commit.merged_merge_request
+
+ namespace_project_commit_url(@project.namespace, @project, params[:id])
+ end
+
+ def referenced_merge_request_url
+ namespace_project_merge_request_url(@project.namespace, @project, @commit.merged_merge_request)
+ end
+
def commit
@commit ||= @project.commit(params[:id])
end
@@ -99,6 +118,7 @@ class Projects::CommitController < Projects::ApplicationController
@mr_target_branch = @target_branch
@commit_params = {
commit: @commit,
+ revert_type_title: revert_type_title,
create_merge_request: params[:create_merge_request].present? || different_project?
}
end