Sha256: 593e45273e875d399862aa2b670ce480a83aff0cfa487a64c1822254e712968b

Contents?: true

Size: 920 Bytes

Versions: 62

Compression:

Stored size: 920 Bytes

Contents

module Workarea
  module Storefront
    module TaxonLookup
      # 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? && !show_starting_taxon?
          [start]
        else
          []
        end
      end

      def taxons
        return [] unless starting_taxon.present?
        @taxons ||= find_taxons_for(starting_taxon)
      end

      def starting_taxon
        @starting_taxon ||= Navigation::Taxon.find(data['start'])
      rescue Mongoid::Errors::DocumentNotFound
        nil
      end

      def show_starting_taxon?
        data['show_starting_taxon'] && starting_taxon.present?
      end
    end
  end
end

Version data entries

62 entries across 62 versions & 1 rubygems

Version Path
workarea-storefront-3.5.27 app/view_models/workarea/storefront/taxon_lookup.rb
workarea-storefront-3.5.26 app/view_models/workarea/storefront/taxon_lookup.rb
workarea-storefront-3.4.45 app/view_models/workarea/storefront/taxon_lookup.rb
workarea-storefront-3.5.25 app/view_models/workarea/storefront/taxon_lookup.rb
workarea-storefront-3.5.23 app/view_models/workarea/storefront/taxon_lookup.rb
workarea-storefront-3.4.44 app/view_models/workarea/storefront/taxon_lookup.rb
workarea-storefront-3.5.22 app/view_models/workarea/storefront/taxon_lookup.rb
workarea-storefront-3.4.43 app/view_models/workarea/storefront/taxon_lookup.rb
workarea-storefront-3.5.21 app/view_models/workarea/storefront/taxon_lookup.rb
workarea-storefront-3.4.42 app/view_models/workarea/storefront/taxon_lookup.rb
workarea-storefront-3.5.20 app/view_models/workarea/storefront/taxon_lookup.rb
workarea-storefront-3.4.41 app/view_models/workarea/storefront/taxon_lookup.rb
workarea-storefront-3.5.19 app/view_models/workarea/storefront/taxon_lookup.rb
workarea-storefront-3.4.40 app/view_models/workarea/storefront/taxon_lookup.rb
workarea-storefront-3.5.18 app/view_models/workarea/storefront/taxon_lookup.rb
workarea-storefront-3.4.39 app/view_models/workarea/storefront/taxon_lookup.rb
workarea-storefront-3.5.17 app/view_models/workarea/storefront/taxon_lookup.rb
workarea-storefront-3.4.38 app/view_models/workarea/storefront/taxon_lookup.rb
workarea-storefront-3.5.16 app/view_models/workarea/storefront/taxon_lookup.rb
workarea-storefront-3.4.37 app/view_models/workarea/storefront/taxon_lookup.rb