1(function ($) { 2 Drupal.behaviors.eu_cookie_compliance_popup = { 3 attach: function(context, settings) { 4 $('body').not('.sliding-popup-processed').addClass('sliding-popup-processed').each(function() { 5 try { 6 var enabled = Drupal.settings.eu_cookie_compliance.popup_enabled; 7 if(!enabled) { 8 return; 9 } 10 if (!Drupal.eu_cookie_compliance.cookiesEnabled()) { 11 return; 12 } 13 var status = Drupal.eu_cookie_compliance.getCurrentStatus(); 14 var clicking_confirms = Drupal.settings.eu_cookie_compliance.popup_clicking_confirmation; 15 var agreed_enabled = Drupal.settings.eu_cookie_compliance.popup_agreed_enabled; 16 var popup_hide_agreed = Drupal.settings.eu_cookie_compliance.popup_hide_agreed; 17 if (status == 0) { 18 var next_status = 1; 19 if (clicking_confirms) { 20 $('a, input[type=submit]').bind('click.eu_cookie_compliance', function(){ 21 if(!agreed_enabled) { 22 Drupal.eu_cookie_compliance.setStatus(1); 23 next_status = 2; 24 } 25 Drupal.eu_cookie_compliance.changeStatus(next_status); 26 }); 27 } 28 29 $('.agree-button').click(function(){ 30 if(!agreed_enabled) { 31 Drupal.eu_cookie_compliance.setStatus(1); 32 next_status = 2; 33 } 34 Drupal.eu_cookie_compliance.changeStatus(next_status); 35 }); 36 37 Drupal.eu_cookie_compliance.createPopup(Drupal.settings.eu_cookie_compliance.popup_html_info); 38 } else if(status == 1) { 39 Drupal.eu_cookie_compliance.createPopup(Drupal.settings.eu_cookie_compliance.popup_html_agreed); 40 if (popup_hide_agreed) { 41 $('a, input[type=submit]').bind('click.eu_cookie_compliance_hideagreed', function(){ 42 Drupal.eu_cookie_compliance.changeStatus(2); 43 }); 44 } 45 46 } else { 47 return; 48 } 49 } 50 catch(e) { 51 return; 52 } 53 }); 54 } 55 } 56 57 Drupal.eu_cookie_compliance = {}; 58 59 Drupal.eu_cookie_compliance.createPopup = function(html) { 60 var popup = $(html) 61 .attr({"id": "sliding-popup"}) 62 .height(Drupal.settings.eu_cookie_compliance.popup_height) 63 .width(Drupal.settings.eu_cookie_compliance.popup_width) 64 .hide(); 65 if(Drupal.settings.eu_cookie_compliance.popup_position) { 66 popup.prependTo("body"); 67 var height = popup.height(); 68 popup.show() 69 .attr({"class": "sliding-popup-top"}) 70 .css({"top": -1 * height}) 71 .animate({top: 0}, Drupal.settings.eu_cookie_compliance.popup_delay); 72 } else { 73 popup.appendTo("body"); 74 height = popup.height(); 75 popup.show() 76 .attr({"class": "sliding-popup-bottom"}) 77 .css({"bottom": -1 * height}) 78 .animate({bottom: 0}, Drupal.settings.eu_cookie_compliance.popup_delay) 79 } 80 Drupal.eu_cookie_compliance.attachEvents(); 81 } 82 83 Drupal.eu_cookie_compliance.attachEvents = function() { 84 var clicking_confirms = Drupal.settings.eu_cookie_compliance.popup_clicking_confirmation; 85 var agreed_enabled = Drupal.settings.eu_cookie_compliance.popup_agreed_enabled; 86 $('.find-more-button').click(function(){ 87 window.open(Drupal.settings.eu_cookie_compliance.popup_link); 88 }); 89 $('.agree-button').click(function(){ 90 var next_status = 1; 91 if(!agreed_enabled) { 92 Drupal.eu_cookie_compliance.setStatus(1); 93 next_status = 2; 94 } 95 if (clicking_confirms) { 96 $('a, input[type=submit]').unbind('click.eu_cookie_compliance'); 97 } 98 Drupal.eu_cookie_compliance.changeStatus(next_status); 99 }); 100 $('.hide-popup-button').click(function(){ 101 Drupal.eu_cookie_compliance.changeStatus(2); 102 }); 103 } 104 105 Drupal.eu_cookie_compliance.getCurrentStatus = function() { 106 var search = 'cookie-agreed-'+Drupal.settings.eu_cookie_compliance.popup_language+'='; 107 var offset = document.cookie.indexOf(search); 108 if (offset < 0) { 109 return 0; 110 } 111 offset += search.length; 112 var end = document.cookie.indexOf(';', offset); 113 if (end == -1) { 114 end = document.cookie.length; 115 } 116 var value = document.cookie.substring(offset, end); 117 return parseInt(value); 118 } 119 120 Drupal.eu_cookie_compliance.changeStatus = function(value) { 121 var status = Drupal.eu_cookie_compliance.getCurrentStatus(); 122 if (status == value) return; 123 if(Drupal.settings.eu_cookie_compliance.popup_position) { 124 $(".sliding-popup-top").animate({top: $("#sliding-popup").height() * -1}, Drupal.settings.eu_cookie_compliance.popup_delay, function () { 125 if(status == 0) { 126 $("#sliding-popup").html(Drupal.settings.eu_cookie_compliance.popup_html_agreed).animate({top: 0}, Drupal.settings.eu_cookie_compliance.popup_delay); 127 Drupal.eu_cookie_compliance.attachEvents(); 128 } 129 if(status == 1) { 130 $("#sliding-popup").remove(); 131 } 132 }) 133 } else { 134 $(".sliding-popup-bottom").animate({bottom: $("#sliding-popup").height() * -1}, Drupal.settings.eu_cookie_compliance.popup_delay, function () { 135 if(status == 0) { 136 $("#sliding-popup").html(Drupal.settings.eu_cookie_compliance.popup_html_agreed).animate({bottom: 0}, Drupal.settings.eu_cookie_compliance.popup_delay) 137 Drupal.eu_cookie_compliance.attachEvents(); 138 } 139 if(status == 1) { 140 $("#sliding-popup").remove(); 141 } 142 ;}) 143 } 144 Drupal.eu_cookie_compliance.setStatus(value); 145 } 146 147 Drupal.eu_cookie_compliance.setStatus = function(status) { 148 var date = new Date(); 149 date.setDate(date.getDate() + 100); 150 document.cookie = "cookie-agreed-"+Drupal.settings.eu_cookie_compliance.popup_language + "="+status+";expires=" + date.toUTCString() + ";path=" + Drupal.settings.basePath; 151 } 152 153 Drupal.eu_cookie_compliance.hasAgreed = function() { 154 var status = Drupal.eu_cookie_compliance.getCurrentStatus(); 155 if(status == 1 || status == 2) { 156 return true; 157 } 158 return false;
159 } 160 161 Drupal.eu_cookie_compliance.cookiesEnabled = function() { 162 var cookieEnabled = (navigator.cookieEnabled) ? true : false; 163 if (typeof navigator.cookieEnabled == "undefined" && !cookieEnabled) { 164 document.cookie="testcookie"; 165 cookieEnabled = (document.cookie.indexOf("testcookie") != -1) ? true : false; 166 } 167 return (cookieEnabled); 168 } 169 170})(jQuery);;
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.