Module: MixpanelTracker

Defined in:
lib/spree_mixpanel/tracker/mixpanel_tracker.rb

Defined Under Namespace

Classes: MixpanelApiError

Class Method Summary collapse

Class Method Details

.track_charge(order_id) ⇒ Object



16
17
18
19
# File 'lib/spree_mixpanel/tracker/mixpanel_tracker.rb', line 16

def self.track_charge(order_id)
  order = Spree::Order.find(order_id)
  tracker.people.track_charge(order.email, order.mixpanel_total, {'$time' => I18n.l(DateTime.now, format: "%Y-%m-%dT%H:%M:%S")}.merge(order.mixpanel_charge_fields))
end

.track_event(user_email, name, opts = {}) ⇒ Object



21
22
23
# File 'lib/spree_mixpanel/tracker/mixpanel_tracker.rb', line 21

def self.track_event(user_email,name, opts={})
  tracker.track(user_email, name, opts)
end

.track_order(order_id) ⇒ Object



10
11
12
13
14
# File 'lib/spree_mixpanel/tracker/mixpanel_tracker.rb', line 10

def self.track_order(order_id)
  order = Spree::Order.find(order_id)
  tracker.track(order.email, order.mixpanel_event_message, order.mixpanel_fields.merge(order.mixpanel_personalized_fields))
  track_charge(order.id) if push_order_charges? && order.paid?
end

.track_user(email) ⇒ Object



5
6
7
8
# File 'lib/spree_mixpanel/tracker/mixpanel_tracker.rb', line 5

def self.track_user(email)
  user = Spree.user_class.find_by_email(email)
  tracker.people.set(email, user.mixpanel_opts)
end