Sha256: 53e4bdc745772df321d475c5ce1ed9cb4ad276949e0598a674d74d5e1a9a7b82
Contents?: true
Size: 980 Bytes
Versions: 12
Compression:
Stored size: 980 Bytes
Contents
class Rack::Tracker::Zanox < Rack::Tracker::Handler # name of the handler # everything after is passed as options class Mastertag < OpenStruct def write to_h.except(:id).map do |k,v| "var zx_#{k} = #{v.to_json};" end.join("\n") end end class Lead < OpenStruct # Example: OrderID=[[DEFC-4321]]&CurrencySymbol=[[EUR]]&TotalPrice=[[23.40]] def write to_h.map do |k,v| "#{k.to_s.camelize}=[[#{v}]]" end.join('&') end end Sale = Class.new(Lead) self.position = :body def mastertag # First event should be stronger, e.g. one signs up and gets redirected to homepage # "sign up" should be tracked instead of "view homepage" events.select{ |event| event.class.to_s.demodulize == 'Mastertag' }.first end def lead_events events.select{ |event| event.class.to_s.demodulize == 'Lead' } end def sale_events events.select{ |event| event.class.to_s.demodulize == 'Sale' } end end
Version data entries
12 entries across 12 versions & 1 rubygems