Method: Rolify::Adapter::ResourceAdapter#resources_find

Defined in:
lib/rolify/adapters/mongoid/resource_adapter.rb,
lib/rolify/adapters/active_record/resource_adapter.rb

#resources_find(roles_table, relation, role_name) ⇒ Object



14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/rolify/adapters/mongoid/resource_adapter.rb', line 14

def resources_find(roles_table, relation, role_name)
  roles = roles_table.classify.constantize.where(:name.in => Array(role_name), :resource_type.in => self.relation_types_for(relation))
  resources = []
  roles.each do |role|
    if role.resource_id.nil?
      resources += relation.all
    else
      resources << role.resource
    end
  end
  resources.compact.uniq
end