100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
|
# File 'lib/role_authorization/roles/role.rb', line 100
def roles(scope = nil, creations = nil)
scoped_roles = if scope.nil? || scope.to_sym == :global
RoleAuthorization::Roles.manager.global_roles
else
scope = if scope.is_a?(Class)
scope.class.to_s.downcase.to_sym
else
scope.to_s.downcase.to_sym
end
RoleAuthorization::Roles.manager.object_roles[scope]
end
if creations.nil?
scoped_roles.flatten.uniq
else
creations.map do |creation|
scoped_roles & RoleAuthorization::Roles.creations[creation]
end.flatten.uniq
end
end
|