diff options
author | Robert Speicher <rspeicher@gmail.com> | 2016-09-20 22:03:35 +0300 |
---|---|---|
committer | Robert Speicher <rspeicher@gmail.com> | 2016-09-20 22:04:04 +0300 |
commit | 2908f17371802d570014181033f16f2f3ffd182c (patch) | |
tree | 684b2eff4f36de9cea1d2bc4cdcc243ec1525afd /app | |
parent | 6f558121b45f705624b76c2ba39491dc72810c13 (diff) |
Improve clarity of variable names in ProjectTeam#fetch_invited_members
Diffstat (limited to 'app')
-rw-r--r-- | app/models/project_team.rb | 26 |
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 |