Sha256: ae73a43496fb53e27ad6409e35579836389b96fc9dd7c7605d409128d3608312

Contents?: true

Size: 922 Bytes

Versions: 13

Compression:

Stored size: 922 Bytes

Contents

module Staccato
  module Measurement
    # Measurement class for product impressions in a list
    class ProductImpression
      # lookup key for use in Hit#add_measurement
      # @return [Symbol]
      def self.lookup_key
        :product_impression
      end

      # product impress prefix
      # @return [String]
      def prefix
        'il' + list_index.to_s + 'pi' + index.to_s
      end

      # product impression allow custom dimensions and metrics
      def custom_fields_allowed?
        true
      end

      # Product impression measurement options fields
      FIELDS = {
        index: nil,
        list_index: nil,
        id: 'id', # text
        name: 'nm', # text
        brand: 'br', # text
        category: 'ca', # text
        variant: 'va', # text
        price: 'pr', # currency (looks like a double?)
        position: 'ps' # integer
      }.freeze

      include Measurable
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
staccato-0.5.3 lib/staccato/measurement/product_impression.rb
staccato-0.5.2 lib/staccato/measurement/product_impression.rb
staccato-0.5.1 lib/staccato/measurement/product_impression.rb
staccato-0.5.0 lib/staccato/measurement/product_impression.rb
staccato-0.4.7 lib/staccato/measurement/product_impression.rb
staccato-0.4.6 lib/staccato/measurement/product_impression.rb
staccato-0.4.5 lib/staccato/measurement/product_impression.rb
staccato-0.4.4 lib/staccato/measurement/product_impression.rb
staccato-0.4.3 lib/staccato/measurement/product_impression.rb
staccato-0.4.2 lib/staccato/measurement/product_impression.rb
staccato-0.4.1 lib/staccato/measurement/product_impression.rb
staccato-0.4.0 lib/staccato/measurement/product_impression.rb
staccato-0.3.1 lib/staccato/measurement/product_impression.rb