summaryrefslogtreecommitdiff
path: root/app/models/group.rb
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2023-01-03 03:08:29 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2023-01-03 03:08:29 +0000
commitcd6db2c5b462479bf7d798acaf1f360def701c15 (patch)
tree1710498d02fd95ec83baf0d90b746273e19b955a /app/models/group.rb
parentef4e19965724e001e07820dabe8edfad3ea53aca (diff)
downloadgitlab-ce-cd6db2c5b462479bf7d798acaf1f360def701c15.tar.gz
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app/models/group.rb')
-rw-r--r--app/models/group.rb4
1 files changed, 4 insertions, 0 deletions
diff --git a/app/models/group.rb b/app/models/group.rb
index 37dcbf95e63..c7ad4d61ddb 100644
--- a/app/models/group.rb
+++ b/app/models/group.rb
@@ -30,6 +30,8 @@ class Group < Namespace
has_many :all_group_members, -> { where(requested_at: nil) }, dependent: :destroy, as: :source, class_name: 'GroupMember' # rubocop:disable Cop/ActiveRecordDependent
has_many :group_members, -> { where(requested_at: nil).where.not(members: { access_level: Gitlab::Access::MINIMAL_ACCESS }) }, dependent: :destroy, as: :source # rubocop:disable Cop/ActiveRecordDependent
+ has_many :namespace_members, -> { where(requested_at: nil).where.not(members: { access_level: Gitlab::Access::MINIMAL_ACCESS }).unscope(where: %i[source_id source_type]) },
+ foreign_key: :member_namespace_id, inverse_of: :group, class_name: 'GroupMember'
alias_method :members, :group_members
has_many :users, through: :group_members
@@ -39,6 +41,8 @@ class Group < Namespace
source: :user
has_many :requesters, -> { where.not(requested_at: nil) }, dependent: :destroy, as: :source, class_name: 'GroupMember' # rubocop:disable Cop/ActiveRecordDependent
+ has_many :namespace_requesters, -> { where.not(requested_at: nil).unscope(where: %i[source_id source_type]) },
+ foreign_key: :member_namespace_id, inverse_of: :group, class_name: 'GroupMember'
has_many :members_and_requesters, as: :source, class_name: 'GroupMember'
has_many :milestones