Class: Page
- Inherits:
-
Object
- Object
- Page
- Includes:
- Mongoid::Document, Mongoid::Timestamps, Mongoid::Tree, Mongoid::Tree::Ordering, Mongoid::Userstamp
- Defined in:
- lib/bolton_cms/models/page.rb
Instance Method Summary collapse
- #active_fragments ⇒ Object
- #find_fragment(label) ⇒ Object
- #inactive_fragments ⇒ Object
- #manage_fragments(configured_fragments = []) ⇒ Object
- #post? ⇒ Boolean
- #unused_assets ⇒ Object
Instance Method Details
#active_fragments ⇒ Object
49 50 51 |
# File 'lib/bolton_cms/models/page.rb', line 49 def active_fragments fragments.where(active: true) end |
#find_fragment(label) ⇒ Object
57 58 59 |
# File 'lib/bolton_cms/models/page.rb', line 57 def find_fragment(label) fragments.find_by(label: label) unless label.blank? end |
#inactive_fragments ⇒ Object
53 54 55 |
# File 'lib/bolton_cms/models/page.rb', line 53 def inactive_fragments fragments.where(active: false) end |
#manage_fragments(configured_fragments = []) ⇒ Object
61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 |
# File 'lib/bolton_cms/models/page.rb', line 61 def manage_fragments(configured_fragments = []) fragments.each do |fragment| if fragment.active = configured_fragments.include?(fragment.label) configured_fragments.delete fragment.label end end configured_fragments.each do |fragment| fragments << Fragment.new(label: fragment) end inactive_fragments.where(body: '').destroy_all save end |
#post? ⇒ Boolean
41 42 43 |
# File 'lib/bolton_cms/models/page.rb', line 41 def post? parent && parent.chronological? end |
#unused_assets ⇒ Object
45 46 47 |
# File 'lib/bolton_cms/models/page.rb', line 45 def unused_assets assets.where(used: false) end |