Module: Monarchy::ActsAsResource::InstanceMethods
- Defined in:
- lib/monarchy/acts_as_resource.rb
Instance Method Summary collapse
- #accessible_for(user, options = {}) ⇒ Object
- #children ⇒ Object
- #children=(array) ⇒ Object
- #ensure_hierarchy(force = false) ⇒ Object
- #parent ⇒ Object
- #parent=(resource) ⇒ Object
Instance Method Details
#accessible_for(user, options = {}) ⇒ Object
102 103 104 105 |
# File 'lib/monarchy/acts_as_resource.rb', line 102 def accessible_for(user, = {}) Monarchy::Validators.user(user) hierarchy.accessible_for(user, ) end |
#children ⇒ Object
83 84 85 |
# File 'lib/monarchy/acts_as_resource.rb', line 83 def children @children ||= children_resources end |
#children=(array) ⇒ Object
87 88 89 90 |
# File 'lib/monarchy/acts_as_resource.rb', line 87 def children=(array) hierarchy&.update(children: children_hierarchies(array)) @children = array end |
#ensure_hierarchy(force = false) ⇒ Object
92 93 94 95 96 97 98 99 100 |
# File 'lib/monarchy/acts_as_resource.rb', line 92 def ensure_hierarchy(force = false) return nil unless self.class.automatic_hierarchy || force self.hierarchy ||= Monarchy.hierarchy_class.create( resource: self, parent: parent.try(:hierarchy), children: children_hierarchies(children) ) end |
#parent ⇒ Object
73 74 75 |
# File 'lib/monarchy/acts_as_resource.rb', line 73 def parent @parent = parent_resource || @parent end |
#parent=(resource) ⇒ Object
77 78 79 80 81 |
# File 'lib/monarchy/acts_as_resource.rb', line 77 def parent=(resource) Monarchy::Validators.resource(resource, true) hierarchy&.update(parent: resource.try(:ensure_hierarchy)) @parent = resource end |