window.dataLayer = window.dataLayer || [];
var GTM_ID = 'GTM-KVNSDL';
(function (w, d, s, l, i) {
w[l] = w[l] || [];
w[l].push({
'gtm.start':
new Date().getTime(), event: 'gtm.js'
});
var f = d.getElementsByTagName(s)[0],
j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : '';
j.async = true;
j.src =
'https://www.googletagmanager.com/gtm.js?id=' + i + dl;
f.parentNode.insertBefore(j, f);
})(window, document, 'script', 'dataLayer', GTM_ID);
function fillZeros(num){
if(num < 10) return '0'+num; else return ''+num;
}
function formatDate(date){
var date = new Date(date);
if(date === 'Invalid Date') return undefined;
var year = date.getFullYear(), month = fillZeros(date.getMonth() + 1), day = fillZeros(date.getDate());
return year+'-'+month+'-'+day
}
function parseOrder(orde,currency) {
if(order === undefined || order === null)
return undefined;
var items = order.items || [];
var totalTax = 0;
var orderItems = items.map(function(item){
totalTax += (item.tax || 0)*item.quantity;
return {
'basePrice': item.basePrice || undefined,
'name': item.name || undefined,
'price': item.price || undefined,
'quantity': item.quantity || undefined,
'eventPriceCode': item.regcode || undefined,
'eventPriceName': item.regcodeDescription || undefined,
'priceReason': item.basePriceReason || undefined
}
})
return {
'transactionId': order.orderId || undefined,
'transactionTotal': order.totalAmount || undefined,
'transactionTax': totalTax || undefined,
'transactionProducts': orderItems,
'transactionCurrency': currency || undefined,
}
}
var path = (window.location.pathname || '').split("/")
var pageName = '';
if(path.length > 0){
pageName = path[path.length - 1]
}
var attendee = data.attendee || {};
var event = data.event || {};
var order = data.order || {};
var GTM_uri = window.location.pathname.substr(1);
//user:
var GTM_userId = undefined; //in the future this will be the gartner user id
// var GTM_email = attendee.email;
// var GTM_companyName = attendee.companyName;
var GTM_companySize = attendee.TagCategory_19|| undefined; // TBD
var GTM_industrySize = attendee.firmSize|| undefined; // TBD firmSize
var GTM_country = attendee.countryId;
var GTM_primaryJobRole = attendee.primaryJobRole || undefined; // TBD
var GTM_secondaryJobRole = attendee.secondaryJobRole || undefined; // TBD
var GTM_jobTitle = attendee.jobTitle || undefined;
var GTM_Attendee_primary_category = attendee.gsync_PrimaryCategorization || undefined;
var GTM_Attendee_individual_category = attendee.gsync_IndCategorization || undefined;
//page
var GTM_event = "datalayer-initialized";
var GTM_language = navigator.language || navigator.userLanguage; // navigator or user set language ?? attendee.language
var GTM_categoryLevel1 = 'Registration Page' || undefined; // TBD
var GTM_categoryLevel2 = pageName || undefined; // TBD
var GTM_categoryLevel3; // TBD
var GTM_categoryLevel4; // TBD
var GTM_categoryLevel5; // TBD
//event
var GTM_eventCode = event.code !== undefined && event.code !== null ? event.code.toUpperCase() : undefined;
var GTM_eventLocation = event.location;
var GTM_eventTitle = event.name;
var GTM_eventStartDate = formatDate(event.startDate);
var GTM_eventVenueName ;// TBD
var GTM_eventCurrency = event.currency;
var orderItems = order.items;
var GTM_clientType; // TBD
var GTM_paymentType = order.methodOfPayment;
var GTM_dietaryRequirements; // TBD
var GTM_otherRequirements; // TBD
var GTM_registrationPackageName; // TBD
var GTM_leadScore_overall; // TBD
var GTM_leadScore_interest; // TBD
var GTM_leadScore_qualification; // TBD
var GTM_leadScore_rating; // TBD
var GTM_interests; // TBD
var GTM_invoiceNumber = order.invoiceNumber;
var GTM_eventQuantity = orderItems && orderItems.length > 0 ? orderItems.map(function(i){ return i.quantity }).join(','):undefined;
var GTM_eventPrice = orderItems && orderItems.length > 0 ? orderItems.map(function(i){ return i.price }).join(','):undefined;
var GTM_eventVAT; // TBD
var GTM_packagePurchased = orderItems && orderItems.length > 0 ? orderItems.map(function(i){ return i.name }).join(',') :undefined;
var GTM_pricePaid = order.totalAmount;
var GTM_isMobile;
//Setting isMobile true for mobile devices
if( /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) ) {
GTM_isMobile=true;
}
dataLayer.push({
'user':{
'userId':GTM_userId,
// 'email':GTM_email ,
'companySize': GTM_companySize,
// 'companyName': GTM_companyName,
'jobTitle':GTM_jobTitle,
'industrySize': GTM_industrySize,
'country': GTM_country,
'primaryJobRole': GTM_primaryJobRole,
'secondaryJobRole': GTM_secondaryJobRole,
'Attendee_primary_category': GTM_Attendee_primary_category,
'Attendee_individual_category': GTM_Attendee_individual_category,
'isLoggedIn': true,
},
'order': parseOrder(order,GTM_eventCurrency),
'event':GTM_event,
'page': {
originalLocation : document.location.protocol+'//'+document.location.hostname+document.location.pathname+document.location.search,
'language':GTM_language ,
'categoryLevel1':GTM_categoryLevel1 ,
'categoryLevel2':GTM_categoryLevel2 ,
'categoryLevel3':undefined, //GTM_categoryLevel3 ,
'categoryLevel4':undefined, //GTM_categoryLevel4 ,
'categoryLevel5':undefined, //GTM_categoryLevel5 ,
'uri':GTM_uri,
'isMobile':GTM_isMobile
},
'gartnerEvent':{
'eventCode':GTM_eventCode,
'eventGroup':undefined, //GTM_eventGroup || undefined,
'eventPrimaryRole': undefined, //GTM_eventPrimaryRole || undefined,
'eventSecondaryRole':undefined, //GTM_eventSecondaryRole || undefined,
'eventLocation':GTM_eventLocation,
'eventTitle':GTM_eventTitle,
'eventStartDate':GTM_eventStartDate,
'eventKeyword':undefined, //GTM_eventKeyword || undefined,
'eventRegion':undefined, //GTM_eventRegion || undefined,
'eventType':undefined, //GTM_eventType || undefined,
'eventVenueName':GTM_eventVenueName,
'eventCurrentMarketingMilestone':undefined, //GTM_eventCurrentMarketingMilestone || undefined,
'eventDaysUntilEventStart':undefined, //GTM_eventDaysUntilEventStart || undefined,
'eventWeeksUntilEventStart':undefined, //GTM_eventWeeksUntilEventStart || undefined,
'marketingManagerName':undefined, //GTM_marketingManagerName || undefined,
'eventPrice':undefined, //GTM_eventPrice || undefined,
'eventPriceUSD':undefined, //GTM_eventPriceUSD ||undefined,
'eventCurrency':undefined, //GTM_eventCurrency,
'eventKeynoteSpeakers':undefined, //GTM_eventKeynoteSpeakers || undefined,
'eventCountOfCurrentRegistrants':undefined, //GTM_eventCountOfCurrentRegistrants || undefined,
'attendee':{
// 'promotionCode':GTM_promotionCode || undefined,
'paymentType':GTM_paymentType,
'invoiceNumber':GTM_invoiceNumber,
'eventQuantity':GTM_eventQuantity,
'eventPrice':GTM_eventPrice,
'eventVAT':GTM_eventVAT,
'eventCurrency':GTM_eventCurrency,
'packagePurchased':GTM_packagePurchased,
'pricePaid':GTM_pricePaid,
'dietaryRequirements':GTM_dietaryRequirements || undefined,
'otherRequirements':GTM_otherRequirements || undefined,
'firmAnnualBudgetForIT':undefined, //GTM_firmAnnualBudgetForIT || undefined,
'involvmentInPurchasingDecisions':undefined, //GTM_involvmentInPurchasingDecisions || undefined,
'keyInitiatives':undefined, //GTM_keyInitiatives || undefined,
'solutionsCurrentlyEvaluating':undefined, //GTM_solutionsCurrentlyEvaluating || undefined,
'qualifyForCiso':undefined, //GTM_qualifyForCiso || undefined,
'registrationPackageName':GTM_registrationPackageName || undefined,
'clientType':GTM_clientType || undefined,
'leadScore_overall':GTM_leadScore_overall || undefined,
'leadScore_interest':GTM_leadScore_interest || undefined,
'leadScore_qualification':GTM_leadScore_qualification || undefined,
'leadScore_rating':GTM_leadScore_rating || undefined,
'interests':GTM_interests || undefined
}
}
});