Sha256: 23e0026b5506ff7de985584fe3595488483764d495ea1a24a1df0df4b8480e6a

Contents?: true

Size: 1.1 KB

Versions: 62

Compression:

Stored size: 1.1 KB

Contents

module Workarea
  class Metadata::CatalogCategory < Metadata

    # Provides a default value for use as the html page title using
    # the name of the category and its top selling sub-categories
    #
    # @example Top selling categories
    #   Men: Shirts, Pants, Suits, and Coats
    #
    # @return [String]
    #
    def title
      if top_taxons.present?
        "#{model.name}: #{top_taxons.map(&:name).to_sentence}"
      end
    end

    # Provides a default value for use as the html content meta
    # tag using the top selling sub-categories (based on
    # navigation structure)
    #
    # @example Top selling categories
    #   Shop Men for a great selection including Shirts, Pants,
    #   Suits, and Coats
    #
    # @return [String]
    #
    def description
      if top_taxons.present?
        description = [
          I18n.t('workarea.metadata.shop_selection', name: model.name)
        ]

        description << top_taxons.map(&:name).to_sentence
        description.join(' ')
      end
    end

    private

    def top_taxons
      (model.try(:taxon).try(:children) || []).take(4)
    end
  end
end

Version data entries

62 entries across 62 versions & 1 rubygems

Version Path
workarea-core-3.5.15 app/queries/workarea/metadata/catalog_category.rb
workarea-core-3.4.36 app/queries/workarea/metadata/catalog_category.rb
workarea-core-3.5.14 app/queries/workarea/metadata/catalog_category.rb
workarea-core-3.4.35 app/queries/workarea/metadata/catalog_category.rb
workarea-core-3.5.13 app/queries/workarea/metadata/catalog_category.rb
workarea-core-3.4.34 app/queries/workarea/metadata/catalog_category.rb
workarea-core-3.5.12 app/queries/workarea/metadata/catalog_category.rb
workarea-core-3.4.33 app/queries/workarea/metadata/catalog_category.rb
workarea-core-3.5.11 app/queries/workarea/metadata/catalog_category.rb
workarea-core-3.5.10 app/queries/workarea/metadata/catalog_category.rb
workarea-core-3.4.32 app/queries/workarea/metadata/catalog_category.rb
workarea-core-3.5.9 app/queries/workarea/metadata/catalog_category.rb
workarea-core-3.4.31 app/queries/workarea/metadata/catalog_category.rb
workarea-core-3.5.8 app/queries/workarea/metadata/catalog_category.rb
workarea-core-3.4.30 app/queries/workarea/metadata/catalog_category.rb
workarea-core-3.5.7 app/queries/workarea/metadata/catalog_category.rb
workarea-core-3.4.29 app/queries/workarea/metadata/catalog_category.rb
workarea-core-3.5.6 app/queries/workarea/metadata/catalog_category.rb
workarea-core-3.4.28 app/queries/workarea/metadata/catalog_category.rb
workarea-core-3.5.5 app/queries/workarea/metadata/catalog_category.rb