class Rack::Tracker::Criteo

Constants

TRACKER_EVENTS

Public Class Methods

track(name, event_name, event_args = {}) click to toggle source
# File lib/rack/tracker/criteo/criteo.rb, line 30
def self.track(name, event_name, event_args = {})
  { name.to_s => [{ 'class_name' => 'Event', 'event' => event_name.to_s.camelize(:lower) }.merge(event_args)] }
end

Public Instance Methods

tracker_events() click to toggle source

global events (setSiteType, setAccount, …) for each tracker instance

# File lib/rack/tracker/criteo/criteo.rb, line 20
def tracker_events
  @tracker_events ||= [].tap do |tracker_events|
    options.slice(*TRACKER_EVENTS.keys).each do |key, value|
      if option_value = value.respond_to?(:call) ? value.call(env) : value
        tracker_events << Event.new(:event => "#{key}".camelize(:lower),  TRACKER_EVENTS[key] => "#{option_value}")
      end
    end
  end
end