Merge branch '25225-fix-inconsistent-merge-button-styles' into 'master'
Homogenize revert and cherry-pick button styles generated by commits_helper.rb Closes #25225 See merge request !8053
This commit is contained in:
		
						commit
						09b622f84c
					
				| 
						 | 
				
			
			@ -128,50 +128,11 @@ module CommitsHelper
 | 
			
		|||
  end
 | 
			
		||||
 | 
			
		||||
  def revert_commit_link(commit, continue_to_path, btn_class: nil, has_tooltip: true)
 | 
			
		||||
    return unless current_user
 | 
			
		||||
 | 
			
		||||
    tooltip = "Revert this #{commit.change_type_title(current_user)} in a new merge request" if has_tooltip
 | 
			
		||||
 | 
			
		||||
    if can_collaborate_with_project?
 | 
			
		||||
      btn_class = "btn btn-warning btn-#{btn_class}" unless btn_class.nil?
 | 
			
		||||
      link_to 'Revert', '#modal-revert-commit', 'data-toggle' => 'modal', 'data-container' => 'body', title: (tooltip if has_tooltip), class: "#{btn_class} #{'has-tooltip' if has_tooltip}"
 | 
			
		||||
    elsif can?(current_user, :fork_project, @project)
 | 
			
		||||
      continue_params = {
 | 
			
		||||
        to: continue_to_path,
 | 
			
		||||
        notice: edit_in_new_fork_notice + ' Try to revert this commit again.',
 | 
			
		||||
        notice_now: edit_in_new_fork_notice_now
 | 
			
		||||
      }
 | 
			
		||||
      fork_path = namespace_project_forks_path(@project.namespace, @project,
 | 
			
		||||
        namespace_key: current_user.namespace.id,
 | 
			
		||||
        continue: continue_params)
 | 
			
		||||
 | 
			
		||||
      btn_class = "btn btn-grouped btn-warning" unless btn_class.nil?
 | 
			
		||||
 | 
			
		||||
      link_to 'Revert', fork_path, class: btn_class, method: :post, 'data-toggle' => 'tooltip', 'data-container' => 'body', title: (tooltip if has_tooltip)
 | 
			
		||||
    end
 | 
			
		||||
    commit_action_link('revert', commit, continue_to_path, btn_class: btn_class, has_tooltip: has_tooltip)
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def cherry_pick_commit_link(commit, continue_to_path, btn_class: nil, has_tooltip: true)
 | 
			
		||||
    return unless current_user
 | 
			
		||||
 | 
			
		||||
    tooltip = "Cherry-pick this #{commit.change_type_title(current_user)} in a new merge request"
 | 
			
		||||
 | 
			
		||||
    if can_collaborate_with_project?
 | 
			
		||||
      btn_class = "btn btn-default btn-#{btn_class}" unless btn_class.nil?
 | 
			
		||||
      link_to 'Cherry-pick', '#modal-cherry-pick-commit', 'data-toggle' => 'modal', 'data-container' => 'body', title: (tooltip if has_tooltip), class: "#{btn_class} #{'has-tooltip' if has_tooltip}"
 | 
			
		||||
    elsif can?(current_user, :fork_project, @project)
 | 
			
		||||
      continue_params = {
 | 
			
		||||
        to: continue_to_path,
 | 
			
		||||
        notice: edit_in_new_fork_notice + ' Try to cherry-pick this commit again.',
 | 
			
		||||
        notice_now: edit_in_new_fork_notice_now
 | 
			
		||||
      }
 | 
			
		||||
      fork_path = namespace_project_forks_path(@project.namespace, @project,
 | 
			
		||||
        namespace_key: current_user.namespace.id,
 | 
			
		||||
        continue: continue_params)
 | 
			
		||||
 | 
			
		||||
      btn_class = "btn btn-grouped btn-close" unless btn_class.nil?
 | 
			
		||||
      link_to 'Cherry-pick', fork_path, class: "#{btn_class}", method: :post, 'data-toggle' => 'tooltip', 'data-container' => 'body', title: (tooltip if has_tooltip)
 | 
			
		||||
    end
 | 
			
		||||
    commit_action_link('cherry-pick', commit, continue_to_path, btn_class: btn_class, has_tooltip: has_tooltip)
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  protected
 | 
			
		||||
| 
						 | 
				
			
			@ -211,6 +172,28 @@ module CommitsHelper
 | 
			
		|||
    end
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def commit_action_link(action, commit, continue_to_path, btn_class: nil, has_tooltip: true)
 | 
			
		||||
    return unless current_user
 | 
			
		||||
 | 
			
		||||
    tooltip = "#{action.capitalize} this #{commit.change_type_title(current_user)} in a new merge request" if has_tooltip
 | 
			
		||||
    btn_class = "btn btn-#{btn_class}" unless btn_class.nil?
 | 
			
		||||
 | 
			
		||||
    if can_collaborate_with_project?
 | 
			
		||||
      link_to action.capitalize, "#modal-#{action}-commit", 'data-toggle' => 'modal', 'data-container' => 'body', title: (tooltip if has_tooltip), class: "#{btn_class} #{'has-tooltip' if has_tooltip}"
 | 
			
		||||
    elsif can?(current_user, :fork_project, @project)
 | 
			
		||||
      continue_params = {
 | 
			
		||||
        to: continue_to_path,
 | 
			
		||||
        notice: "#{edit_in_new_fork_notice} Try to #{action} this commit again.",
 | 
			
		||||
        notice_now: edit_in_new_fork_notice_now
 | 
			
		||||
      }
 | 
			
		||||
      fork_path = namespace_project_forks_path(@project.namespace, @project,
 | 
			
		||||
        namespace_key: current_user.namespace.id,
 | 
			
		||||
        continue: continue_params)
 | 
			
		||||
 | 
			
		||||
      link_to action.capitalize, fork_path, class: btn_class, method: :post, 'data-toggle' => 'tooltip', 'data-container' => 'body', title: (tooltip if has_tooltip)
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def view_file_btn(commit_sha, diff_new_path, project)
 | 
			
		||||
    link_to(
 | 
			
		||||
      namespace_project_blob_path(project.namespace, project,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -5,10 +5,10 @@
 | 
			
		|||
- if can_remove_source_branch || mr_can_be_reverted || mr_can_be_cherry_picked
 | 
			
		||||
  .clearfix.merged-buttons
 | 
			
		||||
    - if can_remove_source_branch
 | 
			
		||||
      = link_to namespace_project_branch_path(@merge_request.source_project.namespace, @merge_request.source_project, @merge_request.source_branch), remote: true, method: :delete, class: "btn btn-default btn-sm remove_source_branch" do
 | 
			
		||||
      = link_to namespace_project_branch_path(@merge_request.source_project.namespace, @merge_request.source_project, @merge_request.source_branch), remote: true, method: :delete, class: "btn btn-default remove_source_branch" do
 | 
			
		||||
        = icon('trash-o')
 | 
			
		||||
        Remove Source Branch
 | 
			
		||||
    - if mr_can_be_reverted
 | 
			
		||||
      = revert_commit_link(@merge_request.merge_commit, namespace_project_merge_request_path(@project.namespace, @project, @merge_request), btn_class: 'sm')
 | 
			
		||||
      = revert_commit_link(@merge_request.merge_commit, namespace_project_merge_request_path(@project.namespace, @project, @merge_request), btn_class: "warning")
 | 
			
		||||
    - if mr_can_be_cherry_picked
 | 
			
		||||
      = cherry_pick_commit_link(@merge_request.merge_commit, namespace_project_merge_request_path(@project.namespace, @project, @merge_request), btn_class: 'sm')
 | 
			
		||||
      = cherry_pick_commit_link(@merge_request.merge_commit, namespace_project_merge_request_path(@project.namespace, @project, @merge_request), btn_class: "default")
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue