Sha256: 34d4f5e46ccbab7fdc50a887371dabcfc7905739425374d34e383d97e23f7f68

Contents?: true

Size: 792 Bytes

Versions: 62

Compression:

Stored size: 792 Bytes

Contents

module Workarea
  module Storefront
    module ContentBlocks
      class NavigationViewModel < ContentBlockViewModel
        # Return a list of taxons to render in a navigation content block.
        #
        # @param [Workarea::Navigation::Taxon]
        # @return [Array<Workarea::Navigation::Taxon>]
        #
        def find_taxons_for(start)
          return [] if start.blank?

          if start.has_children?
            start.children.select(&:active?)
          elsif start.active?
            [start]
          else
            []
          end
        end

        def taxons
          @taxons ||= find_taxons_for(starting_taxon)
        end

        def starting_taxon
          @starting_taxon ||= Navigation::Taxon.find(data['start'])
        end
      end
    end
  end
end

Version data entries

62 entries across 62 versions & 1 rubygems

Version Path
workarea-storefront-3.4.27 app/view_models/workarea/storefront/content_blocks/navigation_view_model.rb
workarea-storefront-3.5.4 app/view_models/workarea/storefront/content_blocks/navigation_view_model.rb
workarea-storefront-3.4.26 app/view_models/workarea/storefront/content_blocks/navigation_view_model.rb
workarea-storefront-3.5.3 app/view_models/workarea/storefront/content_blocks/navigation_view_model.rb
workarea-storefront-3.4.25 app/view_models/workarea/storefront/content_blocks/navigation_view_model.rb
workarea-storefront-3.5.2 app/view_models/workarea/storefront/content_blocks/navigation_view_model.rb
workarea-storefront-3.4.24 app/view_models/workarea/storefront/content_blocks/navigation_view_model.rb
workarea-storefront-3.5.1 app/view_models/workarea/storefront/content_blocks/navigation_view_model.rb
workarea-storefront-3.4.23 app/view_models/workarea/storefront/content_blocks/navigation_view_model.rb
workarea-storefront-3.4.22 app/view_models/workarea/storefront/content_blocks/navigation_view_model.rb
workarea-storefront-3.5.0 app/view_models/workarea/storefront/content_blocks/navigation_view_model.rb
workarea-storefront-3.4.21 app/view_models/workarea/storefront/content_blocks/navigation_view_model.rb
workarea-storefront-3.5.0.beta.1 app/view_models/workarea/storefront/content_blocks/navigation_view_model.rb
workarea-storefront-3.4.20 app/view_models/workarea/storefront/content_blocks/navigation_view_model.rb
workarea-storefront-3.4.19 app/view_models/workarea/storefront/content_blocks/navigation_view_model.rb
workarea-storefront-3.4.18 app/view_models/workarea/storefront/content_blocks/navigation_view_model.rb
workarea-storefront-3.4.17 app/view_models/workarea/storefront/content_blocks/navigation_view_model.rb
workarea-storefront-3.4.16 app/view_models/workarea/storefront/content_blocks/navigation_view_model.rb
workarea-storefront-3.4.15 app/view_models/workarea/storefront/content_blocks/navigation_view_model.rb
workarea-storefront-3.4.14 app/view_models/workarea/storefront/content_blocks/navigation_view_model.rb