diff --git a/app/views/shared/issuable/form/_branch_chooser.html.haml b/app/views/shared/issuable/form/_branch_chooser.html.haml index a425f5f810e68bb400e837d9d5633ed51e84def6..70e931ac164e7afcb756a13717401cd6c6149b46 100644 --- a/app/views/shared/issuable/form/_branch_chooser.html.haml +++ b/app/views/shared/issuable/form/_branch_chooser.html.haml @@ -6,6 +6,17 @@ - source_title, target_title = format_mr_branch_names(@merge_request) +- vis010 = _('This merge request is from a private project to an internal project.') +- vis020 = _('This merge request is from a private project to a public project.') +- vis1020 = _('This merge request is from an internal project to a public project.') +- i18n = { '010' => vis010, '020' => vis020, '1020' => vis1020 } + +- source_level = @merge_request.source_project.visibility_level +- source_visibility = @merge_request.source_project.visibility +- target_level = @merge_request.target_project.visibility_level + +- visibilityMismatchString = i18n["#{source_level}#{target_level}"] + .form-group.row.d-flex.gl-px-5.branch-selector .align-self-center %span @@ -24,4 +35,12 @@ = form.hidden_field(:target_branch, { class: 'target_branch js-target-branch-select ref-name mw-xl', data: { placeholder: _('Select branch'), endpoint: refs_project_path(@project, sort: 'updated_desc', find: 'branches') }}) + +- if source_level < target_level + .gl-alert.gl-alert-warning.gl-mt-4 + = sprite_icon('warning', css_class: 'gl-icon gl-alert-icon gl-alert-icon-no-title') + .gl-alert-body + = visibilityMismatchString + %br + = _('Review the target project before submitting to avoid exposing %{source} changes.') % { source: source_visibility } %hr diff --git a/changelogs/unreleased/feature-visibility-mismatch-warning.yml b/changelogs/unreleased/feature-visibility-mismatch-warning.yml new file mode 100644 index 0000000000000000000000000000000000000000..a7c24a737f42974e0857d48338ae22e568e354b2 --- /dev/null +++ b/changelogs/unreleased/feature-visibility-mismatch-warning.yml @@ -0,0 +1,5 @@ +--- +title: Add visibility mismatch warning to the branch chooser +merge_request: 51671 +author: +type: changed diff --git a/locale/gitlab.pot b/locale/gitlab.pot index 0e177b97ddb2cb7dbd2c2875e1066735b8ee295d..dbae8e69668dd54a0918406ec7943386f0af5fe0 100644 --- a/locale/gitlab.pot +++ b/locale/gitlab.pot @@ -24337,6 +24337,9 @@ msgstr "" msgid "Review the process for configuring service providers in your identity provider — in this case, GitLab is the \"service provider\" or \"relying party\"." msgstr "" +msgid "Review the target project before submitting to avoid exposing %{source} changes." +msgstr "" + msgid "Review time" msgstr "" @@ -29015,6 +29018,15 @@ msgstr "" msgid "This merge request is closed. To apply this suggestion, edit this file directly." msgstr "" +msgid "This merge request is from a private project to a public project." +msgstr "" + +msgid "This merge request is from a private project to an internal project." +msgstr "" + +msgid "This merge request is from an internal project to a public project." +msgstr "" + msgid "This merge request is locked." msgstr ""