Skip to content

Instantly share code, notes, and snippets.

@UsabillaSuccess
Created August 18, 2017 15:13
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save UsabillaSuccess/3c33cc27c80945757e450ebfbbc236c9 to your computer and use it in GitHub Desktop.
Save UsabillaSuccess/3c33cc27c80945757e450ebfbbc236c9 to your computer and use it in GitHub Desktop.
window.usabilla_live("setEventCallback", function(category, action, label, value){
function sendEvent(usblCategory, action, label, value){
var trackers = ga.getAll();
for(var i = 0; i < trackers.length; i++){
var trackerName = trackers[i].get('name');
ga(trackerName + '.send', 'event', usblCategory, action, label, value);
}
}
if(category === "feedback"){
sendEvent("Usabilla Feedback", action, label, value);
} else {
sendEvent("Usabilla Campaign", label, action, value);
window.addEventListener("message", function(event) {
// Listen to messages from the Usabilla Cloudfront domain
if(!/d6tizftlrpuof\.cloudfront\.net/.test(event.origin)) {
return;
}
try {
var data = JSON.parse(event.data);
// On the final page
if(data.type === "pageSwitch" && data.end) {
for(var key in data.data) {
sendEvent(
"Usabilla Campaign", // event category
label, // event action
key, // event label
data.data[key] // event value
);
}
}
} catch(e) {
// Ignore errors, usually JSON decode problems
}
});
};
})
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment