Commit 8ce1aa3d authored by Robert Speicher's avatar Robert Speicher

Merge branch 'refactor-issuable-branch-chooser-ee' into 'master'

[EE] Refactor branch chooser in issuable form

Continuation of gitlab-org/gitlab-ce#23864.

Brother of gitlab-org/gitlab-ce!7852.

See merge request !930
parents f9470561 19e9808f
- issuable = local_assigns.fetch(:issuable)
- form = local_assigns.fetch(:form)
- return unless issuable.is_a?(MergeRequest) - return unless issuable.is_a?(MergeRequest)
- return unless issuable.requires_approve? - return unless issuable.requires_approve?
- approvals_required = issuable.target_project.approvals_before_merge - approvals_required = issuable.target_project.approvals_before_merge
.form-group .form-group
= f.label :approvals_before_merge, class: 'control-label' do = form.label :approvals_before_merge, class: 'control-label' do
Approvals required Approvals required
.col-sm-10 .col-sm-10
= f.number_field :approvals_before_merge, class: 'form-control', value: approvals_required = form.number_field :approvals_before_merge, class: 'form-control', value: approvals_required
.help-block .help-block
Number of users who need to approve this merge request before it can be accepted. Number of users who need to approve this merge request before it can be accepted.
If this isn't greater than the project default (#{pluralize(approvals_required, 'user')}), If this isn't greater than the project default (#{pluralize(approvals_required, 'user')}),
then it will be ignored and the project default will be used. then it will be ignored and the project default will be used.
.form-group .form-group
= f.label :approver_ids, class: 'control-label' do = form.label :approver_ids, class: 'control-label' do
Approvers Approvers
.col-sm-10 .col-sm-10
- author = issuable.author || current_user - author = issuable.author || current_user
......
...@@ -40,32 +40,9 @@ ...@@ -40,32 +40,9 @@
title: 'Moving an issue will copy the discussion to a different project and close it here. All participants will be notified of the new location.' } title: 'Moving an issue will copy the discussion to a different project and close it here. All participants will be notified of the new location.' }
= icon('question-circle') = icon('question-circle')
= render 'shared/issuable/approvals', issuable: issuable, f: form = render 'shared/issuable/approvals', issuable: issuable, form: form
- if issuable.is_a?(MergeRequest) && !issuable.closed_without_fork? = render 'shared/issuable/form/branch_chooser', issuable: issuable, form: form
%hr
- if @merge_request.new_record?
.form-group
= form.label :source_branch, class: 'control-label'
.col-sm-10
.issuable-form-select-holder
= form.select(:source_branch, [@merge_request.source_branch], { }, { class: 'source_branch select2 span2', disabled: true })
.form-group
= form.label :target_branch, class: 'control-label'
.col-sm-10
.issuable-form-select-holder
= form.select(:target_branch, @merge_request.target_branches, { include_blank: true }, { class: 'target_branch select2 span2', disabled: @merge_request.new_record?, data: {placeholder: "Select branch"} })
- if @merge_request.new_record?
 
= link_to 'Change branches', mr_change_branches_path(@merge_request)
- if @merge_request.can_remove_source_branch?(current_user)
.form-group
.col-sm-10.col-sm-offset-2
.checkbox
= label_tag 'merge_request[force_remove_source_branch]' do
= hidden_field_tag 'merge_request[force_remove_source_branch]', '0', id: nil
= check_box_tag 'merge_request[force_remove_source_branch]', '1', @merge_request.force_remove_source_branch?
Remove source branch when merge request is accepted.
- is_footer = !(issuable.is_a?(MergeRequest) && issuable.new_record?) - is_footer = !(issuable.is_a?(MergeRequest) && issuable.new_record?)
.row-content-block{class: (is_footer ? "footer-block" : "middle-block")} .row-content-block{class: (is_footer ? "footer-block" : "middle-block")}
......
- issuable = local_assigns.fetch(:issuable)
- form = local_assigns.fetch(:form)
- return unless issuable.is_a?(MergeRequest)
- return if issuable.closed_without_fork?
%hr
- if issuable.new_record?
.form-group
= form.label :source_branch, class: 'control-label'
.col-sm-10
.issuable-form-select-holder
= form.select(:source_branch, [issuable.source_branch], {}, { class: 'source_branch select2 span2', disabled: true })
.form-group
= form.label :target_branch, class: 'control-label'
.col-sm-10
.issuable-form-select-holder
= form.select(:target_branch, issuable.target_branches, { include_blank: true }, { class: 'target_branch select2 span2', disabled: issuable.new_record?, data: { placeholder: "Select branch" }})
- if issuable.new_record?
 
= link_to 'Change branches', mr_change_branches_path(issuable)
- if issuable.can_remove_source_branch?(current_user)
.form-group
.col-sm-10.col-sm-offset-2
.checkbox
= label_tag 'merge_request[force_remove_source_branch]' do
= hidden_field_tag 'merge_request[force_remove_source_branch]', '0', id: nil
= check_box_tag 'merge_request[force_remove_source_branch]', '1', issuable.force_remove_source_branch?
Remove source branch when merge request is accepted.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment