mtLoginStatus = "|evar22=logged in"; } else if (dataLayer.mr_prof_authentication_state == "remembered") { mtLoginStatus = "|evar22=remembered"; } a = a + mtLoginStatus; /*check capitalization of event, eVar, prop*/ var regexE = /event/i; var regexV = /evar/i; var regexP = /prop/i; var regexL = /link/i; tempArray = a.split("|"); tempArray.forEach(function(value) { /*test which variable type*/ var varType = ""; if (/^event/i.test(value) == true) { varType = "event"; } else if (/^evar/i.test(value) == true) { varType = "eVar"; } else if (/^prop/i.test(value) == true) { varType = "prop"; } else if (/^list/i.test(value) == true) { varType = "list"; } switch (varType) { case "event": var eventVal = value.replace(regexE, "event"); events = s.apl(events, eventVal, ",", 2); /*grab only the event name in case there is an incrementor also passed*/ var eventName = value.split("="); linkTrackVars = s.apl(linkTrackVars, "events", ",", 2); linkTrackEvents = s.apl(linkTrackEvents, eventName[0], ",", 2); break; case "eVar": /*split the evar and value*/ var varName = value.split("="); linkTrackVars = s.apl(linkTrackVars, varName[0].replace(regexV, "eVar"), ",", 2); s[varName[0].replace(regexV, "eVar")] = varName[1]; variableArray.push(varName[0].replace(regexV, "eVar")); break; case "prop": /*split the prop and value*/ var propName = value.split("="); linkTrackVars = s.apl(linkTrackVars, propName[0].replace(regexP, "prop"), ",", 2); s[propName[0].replace(regexP, "prop")] = propName[1]; variableArray.push(propName[0].replace(regexP, "prop")); break; case "list": /*split the prop and value*/ var listName = value.replace("=", "@@").split("@@"); linkTrackVars = s.apl(linkTrackVars, listName[0].replace(regexL, "list"), ",", 2); s[listName[0].replace(regexL, "list")] = listName[1].replace(/\^/g, "|"); variableArray.push(listName[0].replace(regexL, "list")); break; default: // add nothing } }); } if (typeof visitor !== "undefined") { s.marketingCloudVisitorID = visitor.getMarketingCloudVisitorID(); } s.origLTV = s.linkTrackVars; s.origEvents = s.events; s.events = events; s.linkTrackVars = linkTrackVars; s.linkTrackEvents = linkTrackEvents; s.tl(this, "o", "Impression View"); /*clear impression specific variables*/ variableArray.forEach(function(value) { s[value] = ""; }); s.events = s.origEvents; s.linkTrackEvents = "None"; s.linkTrackVars = s.origLTV; }; } else {} }