diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2022-05-19 10:33:21 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2022-05-19 10:33:21 +0300 |
commit | 36a59d088eca61b834191dacea009677a96c052f (patch) | |
tree | e4f33972dab5d8ef79e3944a9f403035fceea43f /app/views/groups | |
parent | a1761f15ec2cae7c7f7bbda39a75494add0dfd6f (diff) |
Add latest changes from gitlab-org/gitlab@15-0-stable-eev15.0.0-rc42
Diffstat (limited to 'app/views/groups')
20 files changed, 34 insertions, 266 deletions
diff --git a/app/views/groups/_home_panel.html.haml b/app/views/groups/_home_panel.html.haml index 9b3a8c31d54..bd893ca3162 100644 --- a/app/views/groups/_home_panel.html.haml +++ b/app/views/groups/_home_panel.html.haml @@ -17,8 +17,7 @@ - if can?(current_user, :read_group, @group) %span.gl-display-inline-block.gl-vertical-align-middle = s_("GroupPage|Group ID: %{group_id}") % { group_id: @group.id } - - button_class = "btn gl-button btn-sm btn-tertiary btn-default-tertiary home-panel-metadata" - = clipboard_button(title: s_('GroupPage|Copy group ID'), text: @group.id, class: button_class) + = clipboard_button(title: s_('GroupPage|Copy group ID'), text: @group.id) - if current_user %span.gl-ml-3.gl-mb-3 = render 'shared/members/access_request_links', source: @group diff --git a/app/views/groups/_import_group_from_another_instance_panel.html.haml b/app/views/groups/_import_group_from_another_instance_panel.html.haml index 95b3ad26e99..654ee70dbee 100644 --- a/app/views/groups/_import_group_from_another_instance_panel.html.haml +++ b/app/views/groups/_import_group_from_another_instance_panel.html.haml @@ -5,8 +5,8 @@ = s_('GroupsNew|Import groups from another instance of GitLab') = link_to _('History'), history_import_bulk_imports_path, class: 'gl-link gl-ml-auto' = render Pajamas::AlertComponent.new(dismissible: false, - variant: :warning) do - .gl-alert-body + variant: :warning) do |c| + = c.body do - docs_link_start = '<a href="%{url}" target="_blank" rel="noopener noreferrer">'.html_safe % { url: help_page_path('user/group/import/index.md') } - docs_link_end = '</a>'.html_safe = s_('GroupsNew|Not all related objects are migrated. %{docs_link_start}More info%{docs_link_end}.').html_safe % { docs_link_start: docs_link_start, docs_link_end: docs_link_end } diff --git a/app/views/groups/_import_group_from_file_panel.html.haml b/app/views/groups/_import_group_from_file_panel.html.haml index ddd7481e0bd..04170c30a20 100644 --- a/app/views/groups/_import_group_from_file_panel.html.haml +++ b/app/views/groups/_import_group_from_file_panel.html.haml @@ -7,8 +7,8 @@ %h4 = _('Import group from file') = render Pajamas::AlertComponent.new(variant: :warning, - dismissible: false) do - .gl-alert-body + dismissible: false) do |c| + = c.body do - docs_link_start = '<a href="%{url}" target="_blank" rel="noopener noreferrer">'.html_safe % { url: help_page_path('user/group/import/index.md') } - link_end = '</a>'.html_safe = s_('GroupsNew|This feature is deprecated and replaced by %{docs_link_start}group migration%{docs_link_end}.').html_safe % { docs_link_start: docs_link_start, docs_link_end: link_end } diff --git a/app/views/groups/_invite_groups_modal.html.haml b/app/views/groups/_invite_groups_modal.html.haml index 22ef319348a..2e11f6cee4f 100644 --- a/app/views/groups/_invite_groups_modal.html.haml +++ b/app/views/groups/_invite_groups_modal.html.haml @@ -1,3 +1,3 @@ - return unless can_admin_group_member?(group) -.js-invite-groups-modal{ data: common_invite_group_modal_data(group, GroupMember, 'false').merge(group_select_data(group)) } +.js-invite-groups-modal{ data: common_invite_group_modal_data(group, GroupMember, 'false') } diff --git a/app/views/groups/dependency_proxies/show.html.haml b/app/views/groups/dependency_proxies/show.html.haml index 940a504438d..082f637e854 100644 --- a/app/views/groups/dependency_proxies/show.html.haml +++ b/app/views/groups/dependency_proxies/show.html.haml @@ -1,7 +1,5 @@ - page_title _("Dependency Proxy") - @content_class = "limit-container-width" unless fluid_layout -- dependency_proxy_available = Feature.enabled?(:dependency_proxy_for_private_groups, default_enabled: true) || @group.public? #js-dependency-proxy{ data: { group_path: @group.full_path, - dependency_proxy_available: dependency_proxy_available.to_s, no_manifests_illustration: image_path('illustrations/docker-empty-state.svg'), group_id: @group.id } } diff --git a/app/views/groups/issues.html.haml b/app/views/groups/issues.html.haml index 8afa6316c56..209faa937dc 100644 --- a/app/views/groups/issues.html.haml +++ b/app/views/groups/issues.html.haml @@ -5,7 +5,7 @@ = content_for :meta_tags do = auto_discovery_link_tag(:atom, safe_params.merge(rss_url_options).to_h, title: "#{@group.name} issues") -- if Feature.enabled?(:vue_issues_list, @group, default_enabled: :yaml) +- if Feature.enabled?(:vue_issues_list, @group) .js-issues-list{ data: group_issues_list_data(@group, current_user) } - if @can_bulk_update = render_if_exists 'shared/issuable/group_bulk_update_sidebar', group: @group, type: :issues diff --git a/app/views/groups/milestones/index.html.haml b/app/views/groups/milestones/index.html.haml index 5c0487db0fc..50a1b474504 100644 --- a/app/views/groups/milestones/index.html.haml +++ b/app/views/groups/milestones/index.html.haml @@ -9,7 +9,7 @@ = render 'shared/milestones/search_form' = render 'shared/milestones_sort_dropdown' - if can?(current_user, :admin_milestone, @group) - = link_to _('New milestone'), new_group_milestone_path(@group), class: "btn gl-button btn-confirm", data: { qa_selector: "new_group_milestone_link" } + = link_to _('New milestone'), new_group_milestone_path(@group), class: "btn gl-button btn-confirm gl-ml-3", data: { qa_selector: "new_group_milestone_link" } - if @milestones.blank? = render 'shared/empty_states/milestones_tab', learn_more_path: help_page_path('user/project/milestones/index') do diff --git a/app/views/groups/new.html.haml b/app/views/groups/new.html.haml index 750030601b7..58a78a8adc1 100644 --- a/app/views/groups/new.html.haml +++ b/app/views/groups/new.html.haml @@ -15,7 +15,7 @@ #import-group-pane.tab-pane - if import_sources_enabled? - - if Feature.enabled?(:bulk_import, default_enabled: :yaml) + - if Feature.enabled?(:bulk_import) = render 'import_group_from_another_instance_panel' .gl-mt-7.gl-border-b-solid.gl-border-gray-100.gl-border-1 = render 'import_group_from_file_panel' diff --git a/app/views/groups/runners/_group_runners.html.haml b/app/views/groups/runners/_group_runners.html.haml deleted file mode 100644 index 876642474cd..00000000000 --- a/app/views/groups/runners/_group_runners.html.haml +++ /dev/null @@ -1,29 +0,0 @@ -- link = link_to _('Runner API'), help_page_path('api/runners.md') - -%h4 - = _('Group runners') - --# Proper policies should be implemented per --# https://gitlab.com/gitlab-org/gitlab-foss/issues/45894 -.bs-callout.help-callout - %p - = _('These runners are shared across projects in this group.') - = _('Group runners can be managed with the %{link}.').html_safe % { link: link } - - - if can?(current_user, :register_group_runners, @group) - - if params[:ci_runner_templates] - %hr - = render partial: 'ci/runner/setup_runner_in_aws', - locals: { registration_token: @group.runners_token } - %hr - = render partial: 'ci/runner/how_to_setup_runner', - locals: { registration_token: @group.runners_token, - type: 'group', - reset_token_url: reset_registration_token_group_settings_ci_cd_path, - project_path: '', - group_path: @group.full_path } - %br - - else - = _('Please contact an admin to register runners.') - = link_to _('Learn more.'), help_page_path('user/admin_area/settings/continuous_integration', anchor: 'prevent-users-from-registering-runners'), target: '_blank', rel: 'noopener noreferrer' - diff --git a/app/views/groups/runners/_runner.html.haml b/app/views/groups/runners/_runner.html.haml deleted file mode 100644 index b2d8b9668e7..00000000000 --- a/app/views/groups/runners/_runner.html.haml +++ /dev/null @@ -1,80 +0,0 @@ -.gl-responsive-table-row{ id: dom_id(runner) } - .table-section.section-10.section-wrap - .table-mobile-header{ role: 'rowheader' }= _('Type') - .table-mobile-content - - if runner.group_type? - = gl_badge_tag s_('Runners|group'), variant: :success, size: :sm - - else - = gl_badge_tag s_('Runners|specific'), variant: :info, size: :sm - - if runner.locked? - = gl_badge_tag s_('Runners|locked'), variant: :warning, size: :sm - - unless runner.active? - = gl_badge_tag s_('Runners|paused'), { variant: :danger, size: :sm }, { title: s_('Runners|Not accepting jobs'), data: { toggle: 'tooltip', container: 'body' } } - - .table-section.section-30 - .table-mobile-header{ role: 'rowheader' }= s_('Runners|Runner') - .table-mobile-content - = link_to("##{runner.id} (#{runner.short_sha})", group_runner_path(@group, runner)) - .gl-text-truncate - %span{ title: runner.description, data: { toggle: 'tooltip', container: 'body' } } - = runner.description - - .table-section.section-10 - .table-mobile-header{ role: 'rowheader' }= _('Version') - .table-mobile-content.str-truncated.has-tooltip{ title: runner.version } - = runner.version - - .table-section.section-10 - .table-mobile-header{ role: 'rowheader' }= _('IP Address') - .table-mobile-content.str-truncated.has-tooltip{ title: runner.ip_address } - = runner.ip_address - - .table-section.section-5 - .table-mobile-header{ role: 'rowheader' }= _('Projects') - .table-mobile-content - - if runner.group_type? - \- - - else - = runner.runner_projects.count(:all) - - .table-section.section-5 - .table-mobile-header{ role: 'rowheader' }= _('Jobs') - .table-mobile-content - = limited_counter_with_delimiter(runner.builds) - - .table-section.section-10.section-wrap - .table-mobile-header{ role: 'rowheader' }= _('Tags') - .table-mobile-content - - runner.tags.map(&:name).sort.each do |tag| - = gl_badge_tag tag, { variant: :info }, { class: 'str-truncated has-tooltip', title: tag } - - .table-section.section-10 - .table-mobile-header{ role: 'rowheader' }= _('Last contact') - .table-mobile-content - - contacted_at = runner_contacted_at(runner) - - if contacted_at - = time_ago_with_tooltip contacted_at - - else - = _('Never') - - .table-section.table-button-footer.section-10 - .btn-group.table-action-buttons - .btn-group - = link_to edit_group_runner_path(@group, runner), class: 'gl-button btn btn-default btn-icon has-tooltip', title: _('Edit'), ref: 'tooltip', aria: { label: _('Edit') }, data: { placement: 'top', container: 'body'} do - = sprite_icon('pencil', css_class: 'gl-icon') - .btn-group - - if runner.active? - = link_to pause_group_runner_path(@group, runner), method: :post, class: 'gl-button btn btn-default btn-icon', title: s_('Runners|Pause from accepting jobs'), ref: 'tooltip', aria: { label: _('Pause') }, data: { toggle: 'tooltip', container: 'body', confirm: _('Are you sure?') } do - = sprite_icon('pause', css_class: 'gl-icon') - - else - = link_to resume_group_runner_path(@group, runner), method: :post, class: 'gl-button btn btn-default btn-icon', title: s_('Runners|Resume accepting jobs'), ref: 'tooltip', aria: { label: _('Resume') }, data: { toggle: 'tooltip', container: 'body'} do - = sprite_icon('play', css_class: 'gl-icon') - - if runner.belongs_to_more_than_one_project? - - delete_runner_tooltip = _('Multi-project Runners cannot be removed') - .btn-group.has-tooltip{ data: { container: 'body', placement: 'top' }, title: delete_runner_tooltip } - .gl-button.btn.btn-danger.btn-icon{ 'aria-label' => delete_runner_tooltip, disabled: 'disabled' } - = sprite_icon('close', css_class: 'gl-icon') - - else - .btn-group - = link_to group_runner_path(@group, runner), method: :delete, class: 'gl-button btn btn-danger btn-icon has-tooltip', title: _('Remove'), ref: 'tooltip', aria: { label: _('Remove') }, data: { placement: 'top', container: 'body', confirm: _('Are you sure?'), confirm_btn_variant: "danger" } do - = sprite_icon('close', css_class: 'gl-icon') diff --git a/app/views/groups/runners/_settings.html.haml b/app/views/groups/runners/_settings.html.haml index 087b06ee37d..7716a2f125f 100644 --- a/app/views/groups/runners/_settings.html.haml +++ b/app/views/groups/runners/_settings.html.haml @@ -1,119 +1,14 @@ -- if Feature.enabled?(:runner_list_group_view_vue_ui, @group, default_enabled: :yaml) - .gl-mb-6 - #update-shared-runners-form{ data: group_shared_runners_settings_data(@group) } - .gl-card.gl-px-8.gl-py-6.gl-line-height-20 - .gl-card-body.gl-display-flex{ :class => "gl-p-0!" } - .gl-banner-illustration - = image_tag('illustrations/rocket-launch-md.svg', alt: s_('Runners|Rocket launch illustration')) - .gl-banner-content - %h1.gl-banner-title - = s_('Runners|New group runners view') - %p - = s_('Runners|The new view gives you more space and better visibility into your fleet of runners.') - %a.btn.btn-confirm.btn-md.gl-button{ :href => group_runners_path(@group) } - %span.gl-button-text - = s_('Runners|Take me there!') -- else - = render 'shared/runners/runner_description' - - %hr - - .row - .col-sm-6 - = render 'groups/runners/group_runners' - .col-sm-6 - = render 'groups/runners/shared_runners' - - %h4.underlined-title - = _('Available runners: %{runners}').html_safe % { runners: limited_counter_with_delimiter(@all_group_runners) } - - -# haml-lint:disable NoPlainNodes - .row - .col-sm-9 - = form_tag group_settings_ci_cd_path, id: 'runners-search', method: :get, class: 'filter-form js-filter-form' do - .filtered-search-wrapper.d-flex - .filtered-search-box - = dropdown_tag(_('Recent searches'), - options: { wrapper_class: 'filtered-search-history-dropdown-wrapper', - toggle_class: 'gl-button btn btn-default filtered-search-history-dropdown-toggle-button', - dropdown_class: 'filtered-search-history-dropdown', - content_class: 'filtered-search-history-dropdown-content' }) do - .js-filtered-search-history-dropdown{ data: { full_path: group_settings_ci_cd_path } } - .filtered-search-box-input-container.droplab-dropdown - .scroll-container - %ul.tokens-container.list-unstyled - %li.input-token - %input.form-control.filtered-search{ search_filter_input_options('runners') } - #js-dropdown-hint.filtered-search-input-dropdown-menu.dropdown-menu.hint-dropdown - %ul.filter-dropdown{ data: { dynamic: true, dropdown: true } } - %li.filter-dropdown-item{ data: {hint: "#{'{{hint}}'}", tag: "#{'{{tag}}'}", action: "#{'{{hint === \'search\' ? \'submit\' : \'\' }}'}" } } - = button_tag class: 'gl-button btn btn-link' do - -# Encapsulate static class name `{{icon}}` inside #{} to bypass - -# haml lint's ClassAttributeWithStaticValue - %svg - %use{ 'xlink:href': "#{'{{icon}}'}" } - %span.js-filter-hint - {{formattedKey}} - #js-dropdown-operator.filtered-search-input-dropdown-menu.dropdown-menu - %ul.filter-dropdown{ data: { dropdown: true, dynamic: true } } - %li.filter-dropdown-item{ data: { value: "{{ title }}" } } - = button_tag class: 'gl-button btn btn-link' do - {{ title }} - %span.btn-helptext - {{ help }} - #js-dropdown-admin-runner-status.filtered-search-input-dropdown-menu.dropdown-menu - %ul{ data: { dropdown: true } } - - Ci::Runner::AVAILABLE_STATUSES.each do |status| - %li.filter-dropdown-item{ data: { value: status } } - = button_tag class: 'gl-button btn btn-link' do - = status.titleize - - #js-dropdown-admin-runner-type.filtered-search-input-dropdown-menu.dropdown-menu - %ul{ data: { dropdown: true } } - - Ci::Runner::AVAILABLE_TYPES.each do |runner_type| - - next if runner_type == 'instance_type' - %li.filter-dropdown-item{ data: { value: runner_type } } - = button_tag class: 'gl-button btn btn-link' do - = runner_type.titleize - - #js-dropdown-runner-tag.filtered-search-input-dropdown-menu.dropdown-menu - %ul{ data: { dropdown: true } } - %li.filter-dropdown-item{ data: { value: 'none' } } - = button_tag class: 'gl-button btn btn-link' do - = _('No Tag') - %li.divider.droplab-item-ignore - %ul.filter-dropdown{ data: { dynamic: true, dropdown: true } } - %li.filter-dropdown-item - = button_tag class: 'gl-button btn btn-link js-data-value' do - %span.dropdown-light-content - {{name}} - - = button_tag class: 'clear-search hidden' do - = sprite_icon('close', size: 16, css_class: 'clear-search-icon') - .filter-dropdown-container - = render 'groups/runners/sort_dropdown' - - .col-sm-3.text-right-lg - = _('Runners currently online: %{active_runners_count}') % { active_runners_count: limited_counter_with_delimiter(@all_group_runners.online) } - - - - if @group_runners.any? - .content-list{ data: { testid: 'runners-table' } } - .table-holder - .gl-responsive-table-row.table-row-header{ role: 'row' } - .table-section.section-10{ role: 'rowheader' }= _('Type/State') - .table-section.section-30{ role: 'rowheader' }= s_('Runners|Runner') - .table-section.section-10{ role: 'rowheader' }= _('Version') - .table-section.section-10{ role: 'rowheader' }= _('IP Address') - .table-section.section-5{ role: 'rowheader' }= _('Projects') - .table-section.section-5{ role: 'rowheader' }= _('Jobs') - .table-section.section-10{ role: 'rowheader' }= _('Tags') - .table-section.section-10{ role: 'rowheader' }= _('Last contact') - .table-section.section-10{ role: 'rowheader' } - - - @group_runners.each do |runner| - - runner = runner.present(current_user: current_user) - = render 'groups/runners/runner', runner: runner - = paginate @group_runners, theme: 'gitlab', :params => { :anchor => 'runners-settings' } - - else - .nothing-here-block= _('No runners found') +.gl-mb-6 + #update-shared-runners-form{ data: group_shared_runners_settings_data(@group) } +.gl-card.gl-px-8.gl-py-6.gl-line-height-20 + .gl-card-body.gl-display-flex{ :class => "gl-p-0!" } + .gl-banner-illustration + = image_tag('illustrations/rocket-launch-md.svg', alt: s_('Runners|Rocket launch illustration')) + .gl-banner-content + %h1.gl-banner-title + = s_('Runners|New group runners view') + %p + = s_('Runners|The new view gives you more space and better visibility into your fleet of runners.') + %a.btn.btn-confirm.btn-md.gl-button{ :href => group_runners_path(@group) } + %span.gl-button-text + = s_('Runners|Take me there!') diff --git a/app/views/groups/runners/_shared_runners.html.haml b/app/views/groups/runners/_shared_runners.html.haml deleted file mode 100644 index 15b1199b8c9..00000000000 --- a/app/views/groups/runners/_shared_runners.html.haml +++ /dev/null @@ -1,3 +0,0 @@ -= render 'shared/runners/shared_runners_description' - -#update-shared-runners-form{ data: group_shared_runners_settings_data(@group) } diff --git a/app/views/groups/runners/_sort_dropdown.html.haml b/app/views/groups/runners/_sort_dropdown.html.haml deleted file mode 100644 index b7b10cecee8..00000000000 --- a/app/views/groups/runners/_sort_dropdown.html.haml +++ /dev/null @@ -1,3 +0,0 @@ -- runners_sort_options = runners_sort_options_hash.map { |value, text| { value: value, text: text, href: page_filter_path(sort: value) } } - -= gl_redirect_listbox_tag runners_sort_options, @sort, class: 'gl-ml-3', data: { display: 'static' } diff --git a/app/views/groups/runners/edit.html.haml b/app/views/groups/runners/edit.html.haml index 4a5bab94246..04b9d88723f 100644 --- a/app/views/groups/runners/edit.html.haml +++ b/app/views/groups/runners/edit.html.haml @@ -1,11 +1,7 @@ - breadcrumb_title _('Edit') - page_title _('Edit'), "##{@runner.id} (#{@runner.short_sha})" -- if Feature.enabled?(:runner_list_group_view_vue_ui, @group, default_enabled: :yaml) - - add_to_breadcrumbs _('Runners'), group_runners_path(@group) -- else - - add_to_breadcrumbs _('CI/CD Settings'), group_settings_ci_cd_path(@group) - +- add_to_breadcrumbs _('Runners'), group_runners_path(@group) - add_to_breadcrumbs "#{@runner.short_sha}", group_runner_path(@group, @runner) diff --git a/app/views/groups/runners/show.html.haml b/app/views/groups/runners/show.html.haml index 72701491c67..b6c0c8a707f 100644 --- a/app/views/groups/runners/show.html.haml +++ b/app/views/groups/runners/show.html.haml @@ -1,6 +1,3 @@ -- if Feature.enabled?(:runner_list_group_view_vue_ui, @group, default_enabled: :yaml) - - add_to_breadcrumbs _('Runners'), group_runners_path(@group) -- else - - add_to_breadcrumbs _('CI/CD Settings'), group_settings_ci_cd_path(@group) +- add_to_breadcrumbs _('Runners'), group_runners_path(@group) = render 'shared/runners/runner_details', runner: @runner diff --git a/app/views/groups/settings/_export.html.haml b/app/views/groups/settings/_export.html.haml index 62bc574231f..6cae416311e 100644 --- a/app/views/groups/settings/_export.html.haml +++ b/app/views/groups/settings/_export.html.haml @@ -3,8 +3,8 @@ .sub-section %h4= s_('GroupSettings|Export group') %p= _('Export this group with all related data.') - = render Pajamas::AlertComponent.new(variant: :warning, dismissible: false, alert_class: 'gl-mb-4') do - .gl-alert-body + = render Pajamas::AlertComponent.new(variant: :warning, dismissible: false, alert_class: 'gl-mb-4') do |c| + = c.body do - docs_link_start = '<a href="%{url}" target="_blank" rel="noopener noreferrer">'.html_safe % { url: help_page_path('user/group/import/index.md') } - docs_link_end = '</a>'.html_safe = s_('GroupsNew|This feature is deprecated and replaced by %{docs_link_start}group migration%{docs_link_end}.').html_safe % { docs_link_start: docs_link_start, docs_link_end: docs_link_end } @@ -12,8 +12,8 @@ - export_information = _('After the export is complete, download the data file from a notification email or from this page. You can then import the data file from the %{strong_text_start}Create new group%{strong_text_end} page of another GitLab instance.') % { strong_text_start: '<strong>'.html_safe, strong_text_end: '</strong>'.html_safe} = export_information.html_safe = link_to _('Learn more.'), help_page_path('user/group/settings/import_export.md'), target: '_blank', rel: 'noopener noreferrer' - = render Pajamas::AlertComponent.new(dismissible: false, alert_class: 'gl-mb-5') do - .gl-alert-body + = render Pajamas::AlertComponent.new(dismissible: false, alert_class: 'gl-mb-5') do |c| + = c.body do %p.gl-mb-0 %p= _('The following items will be exported:') %ul diff --git a/app/views/groups/settings/_permissions.html.haml b/app/views/groups/settings/_permissions.html.haml index 1a2f770cd59..ecb31b37fd3 100644 --- a/app/views/groups/settings/_permissions.html.haml +++ b/app/views/groups/settings/_permissions.html.haml @@ -34,7 +34,7 @@ = render 'groups/settings/ip_restriction_registration_features_cta', f: f = render_if_exists 'groups/settings/ip_restriction', f: f, group: @group = render_if_exists 'groups/settings/allowed_email_domain', f: f, group: @group - - if Feature.enabled?(:group_wiki_settings_toggle, @group, default_enabled: :yaml) + - if @group.licensed_feature_available?(:group_wikis) = render_if_exists 'groups/settings/wiki', f: f, group: @group = render 'groups/settings/lfs', f: f = render 'groups/settings/project_creation_level', f: f, group: @group diff --git a/app/views/groups/settings/_remove_button.html.haml b/app/views/groups/settings/_remove_button.html.haml index 66d6b516a86..e765638953a 100644 --- a/app/views/groups/settings/_remove_button.html.haml +++ b/app/views/groups/settings/_remove_button.html.haml @@ -1,8 +1,8 @@ - remove_form_id = local_assigns.fetch(:remove_form_id, nil) - if group.paid? - = render Pajamas::AlertComponent.new(dismissible: false, alert_class: 'gl-mb-5', alert_data: { testid: 'group-has-linked-subscription-alert' }) do - .gl-alert-body + = render Pajamas::AlertComponent.new(dismissible: false, alert_class: 'gl-mb-5', alert_data: { testid: 'group-has-linked-subscription-alert' }) do |c| + = c.body do = html_escape(_("This group can't be removed because it is linked to a subscription. To remove this group, %{linkStart}link the subscription%{linkEnd} with a different group.")) % { linkStart: "<a href=\"#{help_page_path('subscriptions/index', anchor: 'change-the-linked-namespace')}\">".html_safe, linkEnd: '</a>'.html_safe } .js-confirm-danger{ data: group_settings_confirm_modal_data(group, remove_form_id) } diff --git a/app/views/groups/settings/_transfer.html.haml b/app/views/groups/settings/_transfer.html.haml index f5d9d0e2587..e65c3cd13f6 100644 --- a/app/views/groups/settings/_transfer.html.haml +++ b/app/views/groups/settings/_transfer.html.haml @@ -13,7 +13,7 @@ %li= s_('GroupSettings|You will need to update your local repositories to point to the new location.') %li= s_("GroupSettings|If the parent group's visibility is lower than the group's current visibility, visibility levels for subgroups and projects will be changed to match the new parent group's visibility.") - if group.paid? - = render Pajamas::AlertComponent.new(dismissible: false, alert_class: 'gl-mb-5') do - .gl-alert-body + = render Pajamas::AlertComponent.new(dismissible: false, alert_class: 'gl-mb-5') do |c| + = c.body do = html_escape(_("This group can't be transferred because it is linked to a subscription. To transfer this group, %{linkStart}link the subscription%{linkEnd} with a different group.")) % { linkStart: "<a href=\"#{help_page_path('subscriptions/index', anchor: 'change-the-linked-namespace')}\">".html_safe, linkEnd: '</a>'.html_safe } .js-transfer-group-form{ data: initial_data } diff --git a/app/views/groups/settings/packages_and_registries/show.html.haml b/app/views/groups/settings/packages_and_registries/show.html.haml index 78ce981eb07..c4ce76c43ec 100644 --- a/app/views/groups/settings/packages_and_registries/show.html.haml +++ b/app/views/groups/settings/packages_and_registries/show.html.haml @@ -1,9 +1,7 @@ - breadcrumb_title _('Packages & Registries') - page_title _('Packages & Registries') - @content_class = 'limit-container-width' unless fluid_layout -- dependency_proxy_available = Feature.enabled?(:dependency_proxy_for_private_groups, default_enabled: true) || @group.public? %section#js-packages-and-registries-settings{ data: { default_expanded: expanded_by_default?.to_s, group_path: @group.full_path, - dependency_proxy_available: dependency_proxy_available.to_s, group_dependency_proxy_path: group_dependency_proxy_path(@group) } } |