diff options
Diffstat (limited to 'app/models/group.rb')
-rw-r--r-- | app/models/group.rb | 17 |
1 files changed, 5 insertions, 12 deletions
diff --git a/app/models/group.rb b/app/models/group.rb index e66e04371b2..aec92e335e6 100644 --- a/app/models/group.rb +++ b/app/models/group.rb @@ -3,18 +3,11 @@ require 'carrierwave/orm/activerecord' class Group < Namespace include Gitlab::ConfigHelper include Gitlab::VisibilityLevel - include AccessRequestable include Referable has_many :group_members, dependent: :destroy, as: :source, class_name: 'GroupMember' alias_method :members, :group_members - has_many :users, -> { where(members: { requested_at: nil }) }, through: :group_members - - has_many :owners, - -> { where(members: { access_level: Gitlab::Access::OWNER }) }, - through: :group_members, - source: :user - + has_many :users, through: :group_members has_many :project_group_links, dependent: :destroy has_many :shared_projects, through: :project_group_links, source: :project has_many :notification_settings, dependent: :destroy, as: :source @@ -65,10 +58,6 @@ class Group < Namespace "#{self.class.reference_prefix}#{name}" end - def web_url - Gitlab::Routing.url_helpers.group_url(self) - end - def human_name name end @@ -94,6 +83,10 @@ class Group < Namespace end end + def owners + @owners ||= group_members.owners.includes(:user).map(&:user) + end + def add_users(user_ids, access_level, current_user = nil) user_ids.each do |user_id| Member.add_user(self.group_members, user_id, access_level, current_user) |