Module: RoleStrategy::Mongoid::OneRole::ClassMethods

Defined in:
lib/roles_mongoid/strategy/single/one_role.rb

Instance Method Summary collapse

Instance Method Details

#in_any_role(*role_names) ⇒ Object



27
28
29
30
31
32
33
34
35
# File 'lib/roles_mongoid/strategy/single/one_role.rb', line 27

def in_any_role(*role_names)
  begin                       
    the_roles = Role.where(:name.in => role_names.to_strings).to_a 
    role_ids = the_roles.map(&:_id).map(&:to_s)
    where(:"#{role_attribute_id}".in => role_ids)
  rescue 
    return []
  end
end

#in_role(role_name) ⇒ Object



23
24
25
# File 'lib/roles_mongoid/strategy/single/one_role.rb', line 23

def in_role(role_name)      
  in_any_role(role_name)
end

#role_attributeObject



15
16
17
# File 'lib/roles_mongoid/strategy/single/one_role.rb', line 15

def role_attribute
  strategy_class.roles_attribute_name.to_sym
end

#role_attribute_idObject



19
20
21
# File 'lib/roles_mongoid/strategy/single/one_role.rb', line 19

def role_attribute_id
  "#{role_attribute}_id"
end