https://www.suellacabras.es/sites/all/modules/eu_cookie_compliance/js/eu_cookie_compliance.js?tk0hvh
1(function ($) { 2 'use strict'; 3 4 Drupal.behaviors.eu_cookie_compliance_popup = { 5 attach: function(context, settings) { 6 if (context !== document) { 7 return; 8 } 9 10 // If configured, check JSON callback to determine if in EU. 11 if (Drupal.settings.eu_cookie_compliance.popup_eu_only_js) { 12 if (Drupal.eu_cookie_compliance.showBanner()) { 13 var url = Drupal.settings.basePath + 'eu-cookie-compliance-check'; 14 var data = {}; 15 $.getJSON(url, data, function(data) { 16 // If in the EU, show the compliance popup. 17 if (data.in_eu) { 18 Drupal.eu_cookie_compliance.execute(); 19 } 20 // If not in EU, set an agreed cookie automatically. 21 else { 22 Drupal.eu_cookie_compliance.setStatus(2); 23 } 24 }); 25 } 26 } 27 // Otherwise, fallback to standard behavior which is to render the popup. 28 else { 29 Drupal.eu_cookie_compliance.execute(); 30 } 31 } 32 }; 33 34 Drupal.eu_cookie_compliance = {}; 35 36 Drupal.eu_cookie_compliance.execute = function() { 37 try { 38 if (!Drupal.settings.eu_cookie_compliance.popup_enabled) { 39 return; 40 } 41 if (!Drupal.eu_cookie_compliance.cookiesEnabled()) { 42 return; 43 } 44 Drupal.eu_cookie_compliance.updateCheck(); 45 var status = Drupal.eu_cookie_compliance.getCurrentStatus(); 46 if (status === 0 || status === null) { 47 if (!Drupal.settings.eu_cookie_compliance.disagree_do_not_show_popup || status === null) { 48 Drupal.eu_cookie_compliance.createPopup(Drupal.settings.eu_cookie_compliance.popup_html_info); 49 Drupal.eu_cookie_compliance.attachAgreeEvents(); 50 } 51 } else if (status === 1 && Drupal.settings.eu_cookie_compliance.popup_agreed_enabled) { 52 Drupal.eu_cookie_compliance.createPopup(Drupal.settings.eu_cookie_compliance.popup_html_agreed); 53 Drupal.eu_cookie_compliance.attachHideEvents(); 54 } 55 } 56 catch(e) { 57 } 58 }; 59 60 Drupal.eu_cookie_compliance.createPopup = function(html) { 61 // This fixes a problem with jQuery 1.9. 62 var $popup = $('<div></div>').html(html); 63 $popup.attr('id', 'sliding-popup'); 64 if (!Drupal.settings.eu_cookie_compliance.popup_use_bare_css) { 65 $popup.height(Drupal.settings.eu_cookie_compliance.popup_height) 66 .width(Drupal.settings.eu_cookie_compliance.popup_width); 67 } 68 $popup.hide(); 69 var height = 0; 70 if (Drupal.settings.eu_cookie_compliance.popup_position) { 71 $popup.prependTo('body'); 72 height = $popup.height(); 73 $popup.show() 74 .attr('class', 'sliding-popup-top clearfix') 75 .css('top', -1 * height) 76 .animate({top: 0}, Drupal.settings.eu_cookie_compliance.popup_delay); 77 } else { 78 if (Drupal.settings.eu_cookie_compliance.better_support_for_screen_readers) { 79 $popup.prependTo('body'); 80 } 81 else { 82 $popup.appendTo('body'); 83 } 84 height = $popup.height(); 85 $popup.show() 86 .attr('class', 'sliding-popup-bottom') 87 .css('bottom', -1 * height) 88 .animate({bottom: 0}, Drupal.settings.eu_cookie_compliance.popup_delay); 89 } 90 }; 91 92 Drupal.eu_cookie_compliance.attachAgreeEvents = function() { 93 var clickingConfirms = Drupal.settings.eu_cookie_compliance.popup_clicking_confirmation; 94 var scrollConfirms = Drupal.settings.eu_cookie_compliance.popup_scrolling_confirmation; 95 96 $('.agree-button').click(Drupal.eu_cookie_compliance.acceptAction); 97 98 if (clickingConfirms) { 99 $('a, input[type=submit], button[type=submit]').bind('click.euCookieCompliance', Drupal.eu_cookie_compliance.acceptAction); 100 } 101 102 if (scrollConfirms) { 103 $(window).bind('scroll', Drupal.eu_cookie_compliance.acceptAction); 104 } 105 106 $('.find-more-button').not('.find-more-button-processed').addClass('find-more-button-processed').click(Drupal.eu_cookie_compliance.moreInfoAction); 107 }; 108 109 Drupal.eu_cookie_compliance.attachHideEvents = function() { 110 var popupHideAgreed = Drupal.settings.eu_cookie_compliance.popup_hide_agreed; 111 var clickingConfirms = Drupal.settings.eu_cookie_compliance.popup_clicking_confirmation; 112 $('.hide-popup-button').click(function() { 113 Drupal.eu_cookie_compliance.changeStatus(2); 114 }); 115 if (clickingConfirms) { 116 $('a, input[type=submit], button[type=submit]').unbind('click.euCookieCompliance'); 117 } 118 if (popupHideAgreed) { 119 $('a, input[type=submit], button[type=submit]').bind('click.euCookieComplianceHideAgreed', function() { 120 Drupal.eu_cookie_compliance.changeStatus(2); 121 }); 122 } 123 $('.find-more-button').not('.find-more-button-processed').addClass('find-more-button-processed').click(Drupal.eu_cookie_compliance.moreInfoAction); 124 }; 125 126 Drupal.eu_cookie_compliance.acceptAction = function () { 127 var agreedEnabled = Drupal.settings.eu_cookie_compliance.popup_agreed_enabled; 128 var nextStatus = 1; 129 if(!agreedEnabled) { 130 Drupal.eu_cookie_compliance.setStatus(1); 131 nextStatus = 2; 132 } 133 Drupal.eu_cookie_compliance.changeStatus(nextStatus); 134 }; 135 136 Drupal.eu_cookie_compliance.moreInfoAction = function () { 137 if (Drupal.settings.eu_cookie_compliance.disagree_do_not_show_popup) { 138 Drupal.eu_cookie_compliance.setStatus(0); 139 $('#sliding-popup').remove(); 140 } 141 else { 142 if (Drupal.settings.eu_cookie_compliance.popup_link_new_window) { 143 window.open(Drupal.settings.eu_cookie_compliance.popup_link); 144 } 145 else { 146 window.location.href = Drupal.settings.eu_cookie_compliance.popup_link; 147 } 148 } 149 }; 150 151 Drupal.eu_cookie_compliance.getCurrentStatus = function() { 152 var value = $.cookie('cookie-agreed'); 153 value = parseInt(value); 154 if (isNaN(value)) { 155 value = null; 156 } 157 return value; 158 }; 159 160 Drupal.eu_cookie_compliance.changeStatus = function(value) { 161 var status = Drupal.eu_cookie_compliance.getCurrentStatus(); 162 if (status === value) { 163 return; 164 } 165 if (Drupal.settings.eu_cookie_compliance.popup_position) { 166 $('.sliding-popup-top').animate({top: $('#sliding-popup').height() * -1}, Drupal.settings.eu_cookie_compliance.popup_delay, function () { 167 if (status === null) { 168 $('#sliding-popup').html(Drupal.settings.eu_cookie_compliance.popup_html_agreed).animate({top: 0}, Drupal.settings.eu_cookie_compliance.popup_delay); 169 Drupal.eu_cookie_compliance.attachHideEvents(); 170 } 171 else if (status === 1) { 172 $('#sliding-popup').remove(); 173 Drupal.eu_cookie_compliance.reloadPage(); 174 } 175 }); 176 } else { 177 $('.sliding-popup-bottom').animate({bottom: $('#sliding-popup').height() * -1}, Drupal.settings.eu_cookie_compliance.popup_delay, function () { 178 if (status === null) { 179 $('#sliding-popup').html(Drupal.settings.eu_cookie_compliance.popup_html_agreed).animate({bottom: 0}, Drupal.settings.eu_cookie_compliance.popup_delay); 180 Drupal.eu_cookie_compliance.attachHideEvents(); 181 } 182 else if (status === 1) { 183 $('#sliding-popup').remove(); 184 Drupal.eu_cookie_compliance.reloadPage(); 185 } 186 }); 187 } 188 Drupal.eu_cookie_compliance.setStatus(value); 189 }; 190 191 Drupal.eu_cookie_compliance.setStatus = function(status) { 192 var date = new Date(); 193 var domain = Drupal.settings.eu_cookie_compliance.domain ? Drupal.settings.eu_cookie_compliance.domain : ''; 194 var path = Drupal.settings.basePath; 195 if(path.length > 1) { 196 var pathEnd = path.length - 1; 197 if (path.lastIndexOf('/') === pathEnd) { 198 path = path.substring(0, pathEnd); 199 } 200 } 201 date.setDate(date.getDate() + parseInt(Drupal.settings.eu_cookie_compliance.cookie_lifetime)); 202 $.cookie('cookie-agreed', status, {expires: date, path: path, domain: domain}); 203 }; 204 205 Drupal.eu_cookie_compliance.hasAgreed = function() { 206 var status = Drupal.eu_cookie_compliance.getCurrentStatus(); 207 return (status === 1 || status === 2); 208 }; 209 210 Drupal.eu_cookie_compliance.showBanner = function() { 211 var showBanner = false;
212 var status = Drupal.eu_cookie_compliance.getCurrentStatus(); 213 if (status === 0 || status === null) { 214 if (!Drupal.settings.eu_cookie_compliance.disagree_do_not_show_popup || status === null) { 215 showBanner = true; 216 } 217 } else if (status === 1 && Drupal.settings.eu_cookie_compliance.popup_agreed_enabled) { 218 showBanner = true; 219 } 220 return showBanner; 221 }; 222 223 Drupal.eu_cookie_compliance.cookiesEnabled = function() { 224 var cookieEnabled = navigator.cookieEnabled; 225 if (typeof navigator.cookieEnabled === 'undefined' && !cookieEnabled) { 226 document.cookie = 'testCookie'; 227 cookieEnabled = (document.cookie.indexOf('testCookie') !== -1); 228 } 229 return cookieEnabled; 230 }; 231 232 Drupal.eu_cookie_compliance.reloadPage = function() { 233 if (Drupal.settings.eu_cookie_compliance.reload_page) { 234 location.reload(); 235 } 236 }; 237 238 // This code upgrades the cookie agreed status when upgrading for an old version. 239 Drupal.eu_cookie_compliance.updateCheck = function () { 240 var legacyCookie = 'cookie-agreed-' + Drupal.settings.eu_cookie_compliance.popup_language; 241 var domain = Drupal.settings.eu_cookie_compliance.domain ? Drupal.settings.eu_cookie_compliance.domain : ''; 242 var path = Drupal.settings.basePath; 243 var cookie; 244 if ((cookie = $.cookie(legacyCookie)) !== null) { 245 $.cookie('cookie-agreed', cookie, { path: path, domain: domain }); 246 $.cookie(legacyCookie, null, { path: path, domain: domain }); 247 } 248 } 249 250})(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.