Module: Monarchy::ActsAsUser::InstanceMethods
- Defined in:
- lib/monarchy/acts_as_user.rb
Instance Method Summary collapse
- #grant(role_name, resource) ⇒ Object
- #member_for(resource) ⇒ Object
- #revoke_access(resource, hierarchy_ids = nil) ⇒ Object
- #revoke_role(role_name, resource) ⇒ Object
- #revoke_role!(role_name, resource) ⇒ Object
- #roles_for(resource, inheritence = true) ⇒ Object
Instance Method Details
#grant(role_name, resource) ⇒ Object
30 31 32 33 34 |
# File 'lib/monarchy/acts_as_user.rb', line 30 def grant(role_name, resource) ActiveRecord::Base.transaction do grant_or_create_member(role_name, resource) end end |
#member_for(resource) ⇒ Object
26 27 28 |
# File 'lib/monarchy/acts_as_user.rb', line 26 def member_for(resource) resource.hierarchy.members.where(monarchy_members: { user_id: id }).first end |
#revoke_access(resource, hierarchy_ids = nil) ⇒ Object
36 37 38 39 |
# File 'lib/monarchy/acts_as_user.rb', line 36 def revoke_access(resource, hierarchy_ids = nil) hierarchy_ids ||= resource.hierarchy.self_and_descendant_ids members_for(hierarchy_ids).delete_all end |
#revoke_role(role_name, resource) ⇒ Object
41 42 43 |
# File 'lib/monarchy/acts_as_user.rb', line 41 def revoke_role(role_name, resource) revoking_role(role_name, resource) end |
#revoke_role!(role_name, resource) ⇒ Object
45 46 47 |
# File 'lib/monarchy/acts_as_user.rb', line 45 def revoke_role!(role_name, resource) revoking_role(role_name, resource, true) end |
#roles_for(resource, inheritence = true) ⇒ Object
21 22 23 24 |
# File 'lib/monarchy/acts_as_user.rb', line 21 def roles_for(resource, inheritence = true) return Monarchy.role_class.none unless resource.hierarchy accessible_roles_for(resource, inheritence) end |