diff options
Diffstat (limited to 'app/helpers/invite_members_helper.rb')
-rw-r--r-- | app/helpers/invite_members_helper.rb | 25 |
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) {} |