summaryrefslogtreecommitdiff
path: root/app/helpers/groups_helper.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/helpers/groups_helper.rb')
-rw-r--r--app/helpers/groups_helper.rb32
1 files changed, 19 insertions, 13 deletions
diff --git a/app/helpers/groups_helper.rb b/app/helpers/groups_helper.rb
index 8f647a49a64..26a5df321cd 100644
--- a/app/helpers/groups_helper.rb
+++ b/app/helpers/groups_helper.rb
@@ -3,14 +3,16 @@
module GroupsHelper
def group_overview_nav_link_paths
%w[
- groups#show
- groups#details
groups#activity
groups#subgroups
].tap do |paths|
- break paths if Feature.disabled?(:sidebar_refactor, current_user, default_enabled: :yaml)
+ extra_routes = if sidebar_refactor_disabled?
+ ['groups#show', 'groups#details']
+ else
+ ['labels#index', 'group_members#index']
+ end
- paths.concat(['labels#index', 'group_members#index'])
+ paths.concat(extra_routes)
end
end
@@ -43,7 +45,7 @@ module GroupsHelper
end
def group_information_title(group)
- if Feature.enabled?(:sidebar_refactor, current_user)
+ if Feature.enabled?(:sidebar_refactor, current_user, default_enabled: :yaml)
group.subgroup? ? _('Subgroup information') : _('Group information')
else
group.subgroup? ? _('Subgroup overview') : _('Group overview')
@@ -75,6 +77,10 @@ module GroupsHelper
can?(current_user, :change_share_with_group_lock, group)
end
+ def can_change_prevent_sharing_groups_outside_hierarchy?(group)
+ can?(current_user, :change_prevent_sharing_groups_outside_hierarchy, group)
+ end
+
def can_disable_group_emails?(group)
can?(current_user, :set_emails_disabled, group) && !group.parent&.emails_disabled?
end
@@ -86,14 +92,6 @@ module GroupsHelper
.count
end
- def group_open_merge_requests_count(group)
- if Feature.enabled?(:cached_sidebar_merge_requests_count, group, default_enabled: :yaml)
- cached_issuables_count(@group, type: :merge_requests)
- else
- number_with_delimiter(group_merge_requests_count(state: 'opened'))
- end
- end
-
def group_merge_requests_count(state:)
MergeRequestsFinder
.new(current_user, group_id: @group.id, state: state, non_archived: true, include_subgroups: true)
@@ -194,6 +192,14 @@ module GroupsHelper
end
end
+ def link_to_group(group)
+ link_to(group.name, group_path(group))
+ end
+
+ def prevent_sharing_groups_outside_hierarchy_help_text(group)
+ s_("GroupSettings|This setting is only available on the top-level group and it applies to all subgroups. Groups that have already been shared with a group outside %{group} will still be shared, and this access will have to be revoked manually.").html_safe % { group: link_to_group(group) }
+ end
+
def parent_group_options(current_group)
exclude_groups = current_group.self_and_descendants.pluck_primary_key
exclude_groups << current_group.parent_id if current_group.parent_id