summaryrefslogtreecommitdiff
path: root/app/models/member.rb
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2017-04-21 17:07:42 +0300
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2017-04-21 18:38:10 +0300
commitc6960ded8acc5f01a3b00aea2e1c1de6e6981af9 (patch)
tree361ac6653ad005e74d618d128911300202e10e44 /app/models/member.rb
parentc76812c79ffe3ca35b00faeaaf7fa1c362d1d27d (diff)
downloadgitlab-ce-c6960ded8acc5f01a3b00aea2e1c1de6e6981af9.tar.gz
Refactor add_users method for project and groupdz-cleanup-add-users
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Diffstat (limited to 'app/models/member.rb')
-rw-r--r--app/models/member.rb28
1 files changed, 16 insertions, 12 deletions
diff --git a/app/models/member.rb b/app/models/member.rb
index 0545bd4eedf..97fba501759 100644
--- a/app/models/member.rb
+++ b/app/models/member.rb
@@ -151,6 +151,22 @@ class Member < ActiveRecord::Base
member
end
+ def add_users(source, users, access_level, current_user: nil, expires_at: nil)
+ return [] unless users.present?
+
+ self.transaction do
+ users.map do |user|
+ add_user(
+ source,
+ user,
+ access_level,
+ current_user: current_user,
+ expires_at: expires_at
+ )
+ end
+ end
+ end
+
def access_levels
Gitlab::Access.sym_options
end
@@ -173,18 +189,6 @@ class Member < ActiveRecord::Base
# There is no current user for bulk actions, in which case anything is allowed
!current_user || current_user.can?(:"update_#{member.type.underscore}", member)
end
-
- def add_users_to_source(source, users, access_level, current_user: nil, expires_at: nil)
- users.each do |user|
- add_user(
- source,
- user,
- access_level,
- current_user: current_user,
- expires_at: expires_at
- )
- end
- end
end
def real_source_type