1(function (myCookies) { 2 3 myCookies.ALERT_ID = 'my-cookies-alert'; 4 var COOKIE_NAME = 'my-cookie-settings-2'; 5 6 myCookies.CK_REQD = 0; 7 myCookies.CK_FUNC = 2; 8 myCookies.CK_STAT = 4; 9 myCookies.CK_MRKT = 8; 10 myCookies.CK_ALL = myCookies.CK_FUNC | myCookies.CK_STAT | myCookies.CK_MRKT; 11 12 var getConsentVal = function () { 13 var _trimStart = function (s) { 14 for (j = 0; j < s.length; j++) { 15 if (s.substring(j, j + 1) != " ") 16 return s.substring(j, s.length); 17 } 18 return ''; 19 } 20 var name = COOKIE_NAME + "="; 21 var split = document.cookie.split(';'); 22 for (i = 0; i < split.length; i++) { 23 var s = _trimStart(split[i]); 24 if (s.indexOf(name) == 0) { 25 return s.substring(name.length, s.length); 26 } 27 } 28 return ''; 29 } 30 31 myCookies.Get = function () { 32 var valInt = parseInt(getConsentVal()); 33 var noVal = isNaN(valInt); 34 35 return { 36 requestConsent: noVal, 37 consent: noVal ? myCookies.CK_REQD : valInt 38 }; 39 } 40 41 myCookies.Set = function (value) { 42 var cookie = COOKIE_NAME + "=" + value; 43 44 var date = new Date(); 45 date.setTime(date.getTime() + (1000 * 60 * 60 * 24 * 365 * 20)); 46 cookie += "; expires=" + date.toGMTString(); 47 48 cookie += "; path=/"; 49 document.cookie = cookie; 50 } 51 52 var val = myCookies.Get(); 53 54 myCookies.LoadJS = function (src) { 55 var s = document.createElement('script'); 56 s.type = 'text/javascript'; 57 s.src = '/my-cookies/' + src; 58 document.getElementsByTagName('body')[0].appendChild(s); 59 }; 60 myCookies.LoadCSS = function (href) { 61 var link = document.createElement('link'); 62 link.rel = 'stylesheet'; 63 link.type = 'text/css'; 64 link.href = '/my-cookies/' + href; 65 document.getElementsByTagName('head')[0].appendChild(link); 66 }; 67 68 if (val.requestConsent) { 69 myCookies.LoadJS('my-cookies-alert-2.0.js'); 70 } 71 72 var _allowed = function (test) { return ((val.consent & test) == test); } 73 74 myCookies.AllowFunctionality = _allowed(myCookies.CK_FUNC); 75 myCookies.AllowStatistics = _allowed(myCookies.CK_STAT); 76 myCookies.AllowMarketing = _allowed(myCookies.CK_MRKT); 77 78 myCookies.ShowSettings = function () { 79 myCookies.SettingsInitPage = 'settings'; 80 myCookies.LoadJS('my-cookies-show-settings-2.0.js'); 81 }; 82 83 myCookies.ShowInformation = function () { 84 myCookies.SettingsInitPage = 'info'; 85 myCookies.LoadJS('my-cookies-show-settings-2.0.js'); 86 }; 87 88}
88)(window.myCookies = window.myCookies || {});
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.