diff options
Diffstat (limited to 'app/models/members/group_member.rb')
-rw-r--r-- | app/models/members/group_member.rb | 21 |
1 files changed, 5 insertions, 16 deletions
diff --git a/app/models/members/group_member.rb b/app/models/members/group_member.rb index 446f9f8f8a7..47040f95533 100644 --- a/app/models/members/group_member.rb +++ b/app/models/members/group_member.rb @@ -3,11 +3,16 @@ class GroupMember < Member belongs_to :group, foreign_key: 'source_id' + delegate :update_two_factor_requirement, to: :user + # Make sure group member points only to group as it source default_value_for :source_type, SOURCE_TYPE validates :source_type, format: { with: /\ANamespace\z/ } default_scope { where(source_type: SOURCE_TYPE) } + after_create :update_two_factor_requirement, unless: :invite? + after_destroy :update_two_factor_requirement, unless: :invite? + def self.access_level_roles Gitlab::Access.options_with_owner end @@ -16,26 +21,10 @@ class GroupMember < Member Gitlab::Access.sym_options_with_owner end - def self.add_users_to_group(group, users, access_level, current_user: nil, expires_at: nil) - self.transaction do - add_users_to_source( - group, - users, - access_level, - current_user: current_user, - expires_at: expires_at - ) - end - end - def group source end - def access_field - access_level - end - # Because source_type is `Namespace`... def real_source_type 'Group' |