1TrackingConsentManager=(function(){var consentCookieName="sf-tracking-consent"; 2var consentDialogHtml=""; 3var consentDialog=null; 4var eventListeners={AfterDialogDisplayed:[],BeforeDialogClosed:[],ConsentChanged:[],}; 5function closeConsentDialog(){if(consentDialog==null){return; 6}invokeEventListeners("BeforeDialogClosed",[consentDialog]); 7document.body.removeChild(consentDialog); 8consentDialog=null; 9}function openConsentDialog(){if(!document.body){return; 10}closeConsentDialog(); 11consentDialog=document.createElement("div"); 12var dialogHtml=document.getElementById("sf-tracking-consent-manager"); 13if(!dialogHtml||!dialogHtml.textContent){console.error("TrackingConsentManager is initialized with an empty value. This may mean that consent dialog file is missing or invalid. Please check server side logs for more details."); 14}consentDialogHtml=dialogHtml.textContent; 15consentDialog.innerHTML=consentDialogHtml; 16document.body.insertBefore(consentDialog,document.body.childNodes[0]); 17var scripts=consentDialog.getElementsByTagName("script"); 18for(var idx=0; 19idx<scripts.length; 20idx++){try{eval(scripts[idx].textContent); 21}catch(err){console.error(err); 22}}invokeEventListeners("AfterDialogDisplayed",[consentDialog]); 23}function openDialogIfConsentNotProvided(){var userConsent=readCookie(consentCookieName); 24if(userConsent!=null){return; 25}openConsentDialog(); 26}function createCookie(name,value,days){if(days){var date=new Date(); 27date.setTime(date.getTime()+(days*24*60*60*1000)); 28var expires="; expires="+date.toGMTString(); 29}else{var expires=""; 30}document.cookie=name+"="+value+expires+"; path=/"; 31}function readCookie(name){var nameEQ=name+"="; 32var ca=document.cookie.split(";"); 33for(var i=0; 34i<ca.length; 35i++){var c=ca[i]; 36while(c.charAt(0)==" "){c=c.substring(1,c.length); 37}if(c.indexOf(nameEQ)==0){return c.substring(nameEQ.length,c.length); 38}}return null; 39}function findChildById(root,id){if(!root){return null; 40}if(!root.childNodes){return null; 41}for(var index=0; 42index<root.childNodes.length; 43index++){var child=root.childNodes[index]; 44if(child.id==id){return child; 45}var subChild=findChildById(child,id); 46if(subChild!=null){return subChild; 47}}return null; 48}function invokeEventListeners(eventName,args){var collection=eventListeners[eventName]; 49if(!collection){return; 50}for(var index=0; 51index<collection.length; 52index++){try{collection[index].apply(this,args); 53}catch(err){console.error("TrackingConsentManager: Event listener of "+eventName+" event thew error: "+err); 54}}}if(window.addEventListener){window.addEventListener("DOMContentLoaded",openDialogIfConsentNotProvided,false); 55}else{if(window.attachEvent){window.attachEvent("onload",openDialogIfConsentNotProvided); 56}}return{canTrackCurrentUser:function(){return readCookie(consentCookieName)=="true"; 57},askForUserConsent:function(){openConsentDialog(); 58},updateUserConsent:function(consent){var accepted=Boolean(consent); 59var oldState=this.canTrackCurrentUser(); 60createCookie(consentCookieName,accepted,9999); 61if(accepted!=oldState){invokeEventListeners("ConsentChanged",[accepted]); 62}closeConsentDialog(); 63},addEventListener:function(eventName,listener){if(typeof listener!="function"){return; 64}var collection=eventListeners[eventName]; 65if(!collection){return; 66}collection.push(listener); 67},removeEventListener:function(eventName,listener){if(typeof listener!="function"){return; 68}var collection=eventListeners[eventName]; 69if(!collection){return; 70}var index=collection.indexOf(listener); 71if(index<0){return; 72}collection.splice(index,1); 73}}; 74})();
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.