summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Speicher <rspeicher@gmail.com>2016-09-20 22:03:35 +0300
committerRobert Speicher <rspeicher@gmail.com>2016-09-20 22:04:04 +0300
commit2908f17371802d570014181033f16f2f3ffd182c (patch)
tree684b2eff4f36de9cea1d2bc4cdcc243ec1525afd
parent6f558121b45f705624b76c2ba39491dc72810c13 (diff)
downloadgitlab-ce-rs-simplify-fetch_members.tar.gz
Improve clarity of variable names in ProjectTeam#fetch_invited_membersrs-simplify-fetch_members
-rw-r--r--app/models/project_team.rb26
1 files changed, 12 insertions, 14 deletions
diff --git a/app/models/project_team.rb b/app/models/project_team.rb
index 04f4fa849c4..ca331e7645a 100644
--- a/app/models/project_team.rb
+++ b/app/models/project_team.rb
@@ -233,28 +233,26 @@ class ProjectTeam
return invited_members unless project_shared_with_group?
- project.project_group_links.includes(group: [:group_members]).each do |group_link|
- invited_group = group_link.group
- im = invited_group.members
+ project.project_group_links.includes(group: [:group_members]).each do |link|
+ invited_group_members = link.group.members
if level
- int_level = GroupMember.access_level_roles[level.to_s.singularize.titleize]
+ numeric_level = GroupMember.access_level_roles[level.to_s.singularize.titleize]
- # Skip group members if we ask for masters
- # but max group access is developers
- next if int_level > group_link.group_access
+ # If we're asked for a level that's higher than the group's access,
+ # there's nothing left to do
+ next if numeric_level > link.group_access
- # If we ask for developers and max
- # group access is developers we need to provide
- # both group master, developers as devs
- if int_level == group_link.group_access
- im = im.where("access_level >= ?", group_link.group_access)
+ # Make sure we include everyone _above_ the requested level as well
+ if numeric_level == link.group_access
+ invited_group_members = invited_group_members
+ .where("access_level >= ?", link.group_access)
else
- im = im.send(level)
+ invited_group_members = invited_group_members.send(level)
end
end
- invited_members << im
+ invited_members << invited_group_members
end
invited_members.flatten.compact