///Constants var propListDlm = ',', eventListDlm = ',', prodStrSep = ';', prodESep = '|', dM = ':', dC = '|'; ///Utilities function urlWithoutWWW(url){ return (url.startsWith('www.')?url.substring(4, url.length):url); } ///Functions function doesCookieExist(ckName){ return document.cookie.includes(ckName+'='); } function eVarOnce(eV,ck,dE){ return eVarOnceVal(eV,ck,getDE(dE)); } function eVarOnceVal(eV,ck,val){ return eV?s.getValOnce(eV, ck, 30, 'm'):s.getValOnce(val, ck, 30, 'm'); } function getDE(dE){ return _satellite.getVar(dE); } function getValuedPairStr(vName, val){ return vName+'='+ val; } function makeU(val){ return isDefined(val)?val.toUpperCase():''; } function makeL(val){ return isDefined(val)?val.toLowerCase():''; } function isDefined(val){ return val !== undefined; } function guaranteedVal(val){ return isDefined(val)?val:''; } ///Load script async function loadScriptAsync(url) { return loadScriptWithId(url, true, false, ''); } function loadScript(url, async, defer) { return loadScriptWithId(url, async, defer, ''); } function loadScriptWithId(url, async, defer, id) { var script = document.createElement('script'); script.src = url; script.async = async?true:false; script.defer = defer?true:false; script.id = id; document.getElementsByTagName('head')[0].appendChild(script); return getPromise(url, script); } function getPromise(url, script) { return new Promise(function(resolve, reject) { script.onload = function() {resolve(script)}; script.onerror = function() {reject(new Error('Failed to load script ' + url))}; }); } function setCookie(name,value,days) { var expires = ""; if (days) { var date = new Date(); date.setTime(date.getTime() + (days*24*60*60*1000)); expires = "; expires=" + date.toUTCString(); } document.cookie = name + "=" + (value || "") + expires + "; path=/"; } function getCookie(name) { var nameEQ = name + "="; var ca = document.cookie.split(';'); for(var i=0;i < ca.length;i++) { var c = ca[i]; while (c.charAt(0)==' ') c = c.substring(1,c.length); if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); } return null; }