summaryrefslogtreecommitdiff
path: root/app/helpers/invite_members_helper.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/helpers/invite_members_helper.rb')
-rw-r--r--app/helpers/invite_members_helper.rb25
1 files changed, 10 insertions, 15 deletions
diff --git a/app/helpers/invite_members_helper.rb b/app/helpers/invite_members_helper.rb
index a682d2712be..e46270ab819 100644
--- a/app/helpers/invite_members_helper.rb
+++ b/app/helpers/invite_members_helper.rb
@@ -20,30 +20,17 @@ module InviteMembersHelper
end
end
- def group_select_data(group)
- # This should only be used for groups to load the invite group modal.
- # For instance the invite groups modal should not call this from a project scope
- # this is only to be called in scope of a group context as noted in this thread
- # https://gitlab.com/gitlab-org/gitlab/-/merge_requests/79036#note_821465513
- # the group sharing in projects disabling is explained there as well
- if group.root_ancestor.namespace_settings.prevent_sharing_groups_outside_hierarchy
- { groups_filter: 'descendant_groups', parent_id: group.root_ancestor.id }
- else
- {}
- end
- end
-
def common_invite_group_modal_data(source, member_class, is_project)
{
id: source.id,
- root_id: source.root_ancestor&.id,
+ root_id: source.root_ancestor.id,
name: source.name,
default_access_level: Gitlab::Access::GUEST,
invalid_groups: source.related_group_ids,
help_link: help_page_url('user/permissions'),
is_project: is_project,
access_levels: member_class.access_level_roles.to_json
- }
+ }.merge(group_select_data(source))
end
# Overridden in EE
@@ -68,6 +55,14 @@ module InviteMembersHelper
private
+ def group_select_data(source)
+ if source.root_ancestor.prevent_sharing_groups_outside_hierarchy
+ { groups_filter: 'descendant_groups', parent_id: source.root_ancestor.id }
+ else
+ {}
+ end
+ end
+
# Overridden in EE
def users_filter_data(group)
{}