class Mengpaneel::Tracker

Attributes

distinct_id[R]
remote_ip[R]
token[R]

Public Class Methods

new(token, remote_ip = nil) click to toggle source
Calls superclass method
# File lib/mengpaneel/tracker.rb, line 10
def initialize(token, remote_ip = nil)
  super(token)
  @people = People.new(self)

  @remote_ip = remote_ip

  @disable_all_events = false
  @disabled_events = []

  @properties = HashWithIndifferentAccess.new
  @properties["ip"] = @remote_ip if @remote_ip
end

Public Instance Methods

disable(events = nil) click to toggle source
# File lib/mengpaneel/tracker.rb, line 28
def disable(events = nil)
  if events
    @disabled_events += events
  else
    @disable_all_events = true
  end
end
get_property(property) click to toggle source
# File lib/mengpaneel/tracker.rb, line 54
def get_property(property)
  @properties[property]
end
identify(distinct_id) click to toggle source
# File lib/mengpaneel/tracker.rb, line 36
def identify(distinct_id)
  @distinct_id = distinct_id
end
push(item) click to toggle source
# File lib/mengpaneel/tracker.rb, line 23
def push(item)
  method_name, args = item
  send(method_name, *args)
end
register(properties) click to toggle source
# File lib/mengpaneel/tracker.rb, line 40
def register(properties)
  @properties.merge!(properties)
end
register_once(properties, default_value = "None") click to toggle source
# File lib/mengpaneel/tracker.rb, line 44
def register_once(properties, default_value = "None")
  @properties.merge!(properties) do |key, oldval, newval|
    oldval.nil? || oldval == default_value ? newval : oldval
  end
end
track(event, properties = {}) click to toggle source
Calls superclass method
# File lib/mengpaneel/tracker.rb, line 58
def track(event, properties = {})
  return if @disable_all_events || @disabled_events.include?(event)

  properties = @properties.merge(properties)

  super(@distinct_id, event, properties)
end
unregister(property) click to toggle source
# File lib/mengpaneel/tracker.rb, line 50
def unregister(property)
  @properties.delete(property)
end