Live Desk is back up! Please click this link to refresh the page
window.uniqueTimeStamp = Date.now();
/** * options: { * enableLogs: Boolean, * intervalFrequency: Number, * logIdentifier: String, * maxIterations: Number, * onSuccess: () => void, * onTimeout: () => void, * successCheck: () => Boolean, * } */ function waitForX(options) { var log = function log() { if (options.enableLogs) console.log.apply(console, arguments) } var logSuffix = options.logIdentifier ? ' -- [' + options.logIdentifier + ']' : '' var intervalFrequency = options.intervalFrequency || 100 var maxIterations = options.maxIterations || 100 // Do 1 immediate check before the interval starts. if (options.successCheck()) { log('SUCCESS (immediate), no interval needed' + logSuffix) options.onSuccess() return; } log('every ' + intervalFrequency + 'ms, for ' + intervalFrequency * maxIterations + 'ms' + logSuffix) var iterations = 0 var waitTimer = window.setInterval(function () { if (options.successCheck.apply(options)) { log('SUCCESS, waited: ' + ((iterations + 1) * intervalFrequency) + 'ms (' + (iterations + 1) + ' iterations)' + logSuffix) options.onSuccess.apply(options) window.clearInterval(waitTimer); log('cleared interval' + logSuffix) } if (iterations >= maxIterations) { log('TIMED OUT' + logSuffix) // Safety net to ensure this interval won't run forever. window.clearInterval(waitTimer) log('cleared interval' + logSuffix) if (options.onTimeout) { options.onTimeout.apply(options) } } iterations++ }, options.intervalFrequency) } function getDefaultPayloadAdobeAC(attendee) { var payload = { events: { pageView: true, }, page: { detail: "", language: navigator.language, name: document.location.pathname, referrer: getReferrerAdobeAC(), section: "sanow", url: document.location.href, }, user: { loginStatus: getLoginStatusAdobeAC(attendee), }, form: {}, SMC: {}, }; return payload; } function getReferrerAdobeAC() { var referrer = document.referrer; if ( referrer === "https://accounts.sap.com/" || referrer === "https://accounts400.sap.com/" ) { referrer = window.localStorage.getItem("referrerUrl"); } if (typeof Storage !== "undefined") { localStorage.setItem("referrerUrl", document.location.href); } return referrer; } function getLoginStatusAdobeAC(attendee) { var loginStatus = "logN"; if ( (window.initialState && window.initialState.isAttendeeLoggedIn) || (attendee && attendee.attendeeId) ) { loginStatus = "logY"; } return loginStatus; } function getSAPRelationshipAdobeAC(attendee) { switch (attendee.relationshipToSAP) { case "Customer": return 01; case "Prospective Customer": return 02; case "Partner": return 03; case "Prospective Partner": return 04; case "Consultant": return 05; case "Press/Analyst": return 06; case "Investor/Shareholder": return 07; case "Student": return 08; case "SAP Employee": return 09; case "Competitor": return 10; } } function runTrackDataAdobeAC(payload) { if (window._trackData) { console.log("adobeDataLayerPayload", payload); window._trackData(payload); } else { console.warn("*** _trackData is not defined ***"); } }
var basicPagesAdobeAC = [ "all-tracks", "americasregionpage", "AmericasRegionPagePreKeynote", "AmericasShowAllSpeakerGallery", "asiapacificregionpage", "AsiaPacificRegionPagePreKeynote", "AsiaPacificShowAllSpeakerGallery", "calendar", "DashboardPreKeynote", "discovermore", "discovermoreprekeynote", "emearegionpage", "EMEARegionPagePreKeynote", "EMEAShowAllSpeakerGallery", "faq", "home", "HomePreKeynote", "instructions", "June2homepage", "June2Dashbaord", "SessionCatalog", "sessions", "sessionsprekeynote", "ShowAllFeaturedinMyRegionAmericas", "ShowAllFeaturedinMyRegionAsiaPacific", "ShowAllFeaturedinMyRegionEMEA", "ShowAllRecommendedSessions", "ShowAllSAPrunsSAP", "sponsors", "sponsorsprekeynote", "track-customer-experience", "track-finance", "track-hr", "track-industries", "track-it", "track-midmarket", "track-procurement", "track-supply-chain" ]; var attendeeAdobeAC = data.attendee || {}; if (basicPagesAdobeAC.indexOf(data.page) !== -1) { var payload = getDefaultPayloadAdobeAC(attendeeAdobeAC); runTrackDataAdobeAC(payload); } else if (data.page === "welcome") { var payload = getDefaultPayloadAdobeAC(attendeeAdobeAC); payload.user.loginStatus = "logY"; runTrackDataAdobeAC(payload); } else if (data.page === "dashboard") { var payload = getDefaultPayloadAdobeAC(attendeeAdobeAC); payload.user.loginStatus = "logY"; runTrackDataAdobeAC(payload); window.localStorage.removeItem("referrerUrl"); } else if (data.page === "regquestions" || data.page === "MyProfile" || data.page === 'unsubscribe' || data.page === "contactInfo") { var payload = getDefaultPayloadAdobeAC(attendeeAdobeAC); var trimTimestamp = uniqueTimeStamp.toString().substr(-10); var trimAttendeeId = attendeeAdobeAC.attendeeId.substr(-10); payload.user.loginStatus = "logY"; payload.events.formView = true; payload.events.formSubmit = false; payload.events.SMCInteraction = false; payload.form.uniqueID = trimAttendeeId + trimTimestamp; console.log("Unique ID - Reg Question:", trimTimestamp + trimAttendeeId); payload.form.name = "RF_G_2022_04_PME_EV_SAPPHIREVIRTUAL2022"; runTrackDataAdobeAC(payload); } else if (data.page === "Confirm") { var payload = getDefaultPayloadAdobeAC(attendeeAdobeAC); var trimTimestamp = uniqueTimeStamp.toString().substr(-10); var trimAttendeeId = attendeeAdobeAC.attendeeId.substr(-10); payload.user.loginStatus = "logY"; payload.events.formView = false; payload.events.formSubmit = true; payload.events.SMCInteraction = true; payload.form.uniqueID = trimAttendeeId + trimTimestamp; console.log("Unique ID - Confirm:", trimTimestamp + trimAttendeeId); payload.form.name = "RF_G_2022_04_PME_EV_SAPPHIREVIRTUAL2022"; payload.form.transactionID = "S-1649707982616001L21R-" + attendeeAdobeAC.attendeeId; payload.form.relationship = getSAPRelationshipAdobeAC(attendeeAdobeAC); payload.form.optinStatus = attendeeAdobeAC.marketingConsentSubscriptions && attendeeAdobeAC.marketingConsentSubscriptions.toLowerCase(); payload.form.country = attendeeAdobeAC.countryId && attendeeAdobeAC.countryId.toLowerCase(); payload.SMC.interactionType = "YY_ONLINE_EVENT_REG"; payload.SMC.itemsOfInterest = ["No Item of Interest Value"]; payload.SMC.interactionReason = "SAP_EVENT"; payload.SMC.interactionID = "S-1616776025591001kHdE-" + attendeeAdobeAC.attendeeId; runTrackDataAdobeAC(payload); /*var remainingID = ["1619829570585001Ex7x"]; for (var i = 0; i < remainingID.length; i++) { var payload2 = getDefaultPayloadAdobeAC(attendeeAdobeAC); payload2.user.loginStatus = "logY"; payload2.events.formView = false; payload2.events.formSubmit = false; payload2.events.SMCInteraction = true; payload2.form.transactionID = ""; payload2.SMC.interactionType = "YY_ONLINE_EVENT_REG"; payload2.SMC.itemsOfInterest = ["No Item of Interest Value"]; payload2.SMC.interactionReason = "SAP_EVENT"; payload2.SMC.interactionID = "S-" + remainingID[i] + "-" + attendeeAdobeAC.attendeeId; runTrackDataAdobeAC(payload2) } */ } else if ( data.app && data.app === "widgets" && data.page.match(/^(\d)+[a-zA-Z]+/g) ) { var payload = getDefaultPayloadAdobeAC(attendeeAdobeAC); waitForX({ enableLogs: false, intervalFrequency: 250, maxIterations: 60, onSuccess: () => { var titleEl = document.querySelector('.exhibitor-title h1, .catalog-result-title-text .title-text'); if (titleEl) payload.page.detail = titleEl.innerText; runTrackDataAdobeAC(payload); }, onTimeout: () => { runTrackDataAdobeAC(payload); }, successCheck: () => { return document.querySelector('.exhibitor-title h1, .catalog-result-title-text .title-text'); }, }); }