|
|
@ -818,6 +818,9 @@ class User < Principal
|
|
|
|
|
|
|
|
|
|
|
|
# authorize if user has at least one role that has this permission
|
|
|
|
# authorize if user has at least one role that has this permission
|
|
|
|
roles = memberships.collect {|m| m.roles}.flatten.uniq
|
|
|
|
roles = memberships.collect {|m| m.roles}.flatten.uniq
|
|
|
|
|
|
|
|
if roles.count == 0
|
|
|
|
|
|
|
|
roles = coursememberships.collect {|m| m.roles}.flatten.uniq
|
|
|
|
|
|
|
|
end
|
|
|
|
roles << (self.logged? ? Role.non_member : Role.anonymous)
|
|
|
|
roles << (self.logged? ? Role.non_member : Role.anonymous)
|
|
|
|
roles.any? {|role|
|
|
|
|
roles.any? {|role|
|
|
|
|
role.allowed_to?(action) &&
|
|
|
|
role.allowed_to?(action) &&
|
|
|
|