Class: Workarea::Storefront::ContentBlocks::NavigationViewModel
- Inherits:
-
Workarea::Storefront::ContentBlockViewModel
- Object
- ApplicationViewModel
- Workarea::Storefront::ContentBlockViewModel
- Workarea::Storefront::ContentBlocks::NavigationViewModel
- Defined in:
- app/view_models/workarea/storefront/content_blocks/navigation_view_model.rb
Instance Method Summary collapse
-
#find_taxons_for(start) ⇒ Array<Workarea::Navigation::Taxon>
Return a list of taxons to render in a navigation content block.
- #starting_taxon ⇒ Object
- #taxons ⇒ Object
Methods inherited from Workarea::Storefront::ContentBlockViewModel
#asset_alt_text, #assets, #find_asset, #locals, #partial, #series, wrap
Instance Method Details
#find_taxons_for(start) ⇒ Array<Workarea::Navigation::Taxon>
Return a list of taxons to render in a navigation content block.
10 11 12 13 14 15 16 17 18 19 20 |
# File 'app/view_models/workarea/storefront/content_blocks/navigation_view_model.rb', line 10 def find_taxons_for(start) return [] if start.blank? if start.has_children? start.children.select(&:active?) elsif start.active? [start] else [] end end |
#starting_taxon ⇒ Object
26 27 28 |
# File 'app/view_models/workarea/storefront/content_blocks/navigation_view_model.rb', line 26 def starting_taxon @starting_taxon ||= Navigation::Taxon.find(data['start']) end |
#taxons ⇒ Object
22 23 24 |
# File 'app/view_models/workarea/storefront/content_blocks/navigation_view_model.rb', line 22 def taxons @taxons ||= find_taxons_for(starting_taxon) end |