@@ -216,8 +216,11 class Project < ActiveRecord::Base | |||
|
216 | 216 | end |
|
217 | 217 | |
|
218 | 218 | def override_roles(role) |
|
219 | @override_members ||= member_principals. | |
|
220 | where("#{Principal.table_name}.type IN (?)", ['GroupAnonymous', 'GroupNonMember']).to_a | |
|
221 | ||
|
219 | 222 | group_class = role.anonymous? ? GroupAnonymous : GroupNonMember |
|
220 | member = member_principals.where("#{Principal.table_name}.type = ?", group_class.name).first | |
|
223 | member = @override_members.detect {|m| m.principal.is_a? group_class} | |
|
221 | 224 | member ? member.roles.to_a : [role] |
|
222 | 225 | end |
|
223 | 226 |
General Comments 0
You need to be logged in to leave comments.
Login now