Create analytics.track

This commit is contained in:
Blade Barringer
2015-07-07 18:00:41 -05:00
parent e6ee4d303c
commit d2b74f11dd
2 changed files with 87 additions and 24 deletions

View File

@@ -6,7 +6,8 @@ var ga;
var amplitude;
var analytics = {
trackPurchase: trackPurchase
trackPurchase: trackPurchase,
track: track
}
function init(options) {
@@ -18,6 +19,23 @@ function init(options) {
return analytics;
}
function track(eventType, data) {
_sendDataToAmplitude(eventType, data);
_sendDataToGoogle(eventType, data);
}
function _sendDataToAmplitude(eventType, data) {
var amplitudeData = _formatDataForAmplitude(data);
amplitudeData.event_type = eventType;
amplitude.track(amplitudeData);
}
function _sendDataToGoogle(eventType, data) {
var category = data.gaCategory;
var label = data.gaLabel;
ga.event(category, eventType, label).send();
}
function trackPurchase(data) {
_sendPurchaseDataToAmplitude(data);
_sendPurchaseDataToGoogle(data);
@@ -32,7 +50,7 @@ function _sendPurchaseDataToAmplitude(data) {
}
function _formatDataForAmplitude(data) {
var PROPERTIES_TO_SCRUB = ['uuid', 'user', 'purchaseValue'];
var PROPERTIES_TO_SCRUB = ['uuid', 'user', 'purchaseValue', 'gaCategory', 'gaLabel'];
var event_properties = _.omit(data, PROPERTIES_TO_SCRUB);
var ampData = {