1(function( $ ) 2{ 3 /* 4 * Cookie Hint 5 */ 6 $('.agp-cookie-hint').addClass('agp-cookie-hint--ready'); 7 8 $('.agp-cookie-hint__button--accept').click(function(event) { 9 $('.agp-cookie-hint').addClass('agp-cookie-hint--hidden'); 10 agpCookies_setCookie('agp-cookies-confirmed', 1, 121); 11 location.reload(); 12 }); 13 14 $('.agp-cookie-hint__button--accept-all').click(function(event) { 15 $('.agp-cookie-hint').addClass('agp-cookie-hint--hidden'); 16 $('#agp-cookie-hint__settings__option__input--statistics').attr('checked', 1); 17 $('#agp-cookie-hint__settings__option__input--thirdparty').attr('checked', 1); 18 19 agpCookies_setCookie('agp-cookies-allow-statistics', 1, 121); 20 agpCookies_setCookie('agp-cookies-allow-thirdparty', 1, 121); 21 agpCookies_setCookie('agp-cookies-confirmed', 1, 121); 22 location.reload(); 23 }); 24 25 $('.agp-cookie-hint__settings__option__toggle-infos').click(function(event) { 26 var info = $($(this).parent().parent().children('.agp-cookie-hint__settings__option__infos').first()); 27 28 if ($(window).width() > 920) { 29 $('.agp-cookie-hint__settings__option__infos').toggleClass('agp-cookie-hint__settings__option__infos--visible'); 30 if ($('.agp-cookie-hint__settings__option__infos').hasClass('agp-cookie-hint__settings__option__infos--visible')) { 31 $('.agp-cookie-hint__settings__option__toggle-infos').html($(this).attr('data-active-title')); 32 } else { 33 $('.agp-cookie-hint__settings__option__toggle-infos').html($(this).attr('data-inactive-title')); 34 } 35 } else { 36 var isVisible = info.hasClass('agp-cookie-hint__settings__option__infos--visible'); 37 $('.agp-cookie-hint__settings__option__infos').removeClass('agp-cookie-hint__settings__option__infos--visible'); 38 $('.agp-cookie-hint__settings__option__toggle-infos').html($(this).attr('data-inactive-title')); 39 40 if (isVisible) { 41 info.removeClass('agp-cookie-hint__settings__option__infos--visible'); 42 $(this).html($(this).attr('data-inactive-title')); 43 } else { 44 info.addClass('agp-cookie-hint__settings__option__infos--visible'); 45 $(this).html($(this).attr('data-active-title')); 46 } 47 } 48 }); 49 50 $('.agp-cookie-hint__button--toggle').click(function(event) { 51 event.preventDefault(); 52 event.stopPropagation(); 53 54 $('.agp-cookie-hint').toggleClass('agp-cookie-hint--hidden'); 55 var allows_third_party = agpCookies_getCookie('agp-cookies-allow-thirdparty'); 56 $('#agp-cookies-allow-thirdparty').prop('checked', allows_third_party == 1); 57 var allows_statistics = agpCookies_getCookie('agp-cookies-allow-statistics'); 58 $('#agp-cookies-allow-statistics').prop('checked', allows_statistics == 1); 59 }); 60 61 $('.agp-cookie-hint__settings__option__input').change(function(){ 62 var cookie_name = $(this).attr('data-cookie'); 63 var checked = $(this).attr('checked') != null ? 1 : '0'; 64 agpCookies_setCookie(cookie_name, checked, 121); 65 }); 66 67 /* 68 * Embeds 69 */ 70 $('.agp-cookie-embed-action').click(function(event) { 71 var embedID = $(this).attr('data-embed'); 72 var embedEl = $('#' + embedID); 73 74 if (embedEl) { 75 var provider = embedEl.attr('data-provider'); 76 var type = embedEl.attr('data-type'); 77 var url = embedEl.attr('data-src'); 78 79 if (url && type && provider) { 80 var iframe = agpCookie_iframe(url, type, provider); 81 82 if (type == 'video') { 83 var el = embedEl.find('.agp-cookie-embed-image').first(); 84 if (el) { 85 el.append(iframe); 86 } 87 } else { 88 embedEl.append(iframe); 89 90 if (provider == 'spotify') { 91 embedEl.find('.agp-cookie-embed-container').first().css('display', 'none'); 92 embedEl.css('height', '320px'); 93 } 94 } 95 96 // set cookie 97 agpCookies_setCookie('agp-cookies-confirmed', 1, 121); 98 agpCookies_setCookie('agp-cookies-allow-thirdparty', 1, 121); 99 // update settings ui 100 $('#agp-cookie-hint__settings__option__input--thirdparty').attr('checked', 1); 101 102 embedEl.addClass('agp-cookie-embed--loaded'); 103 $('.agp-cookie-hint').addClass('agp-cookie-hint--hidden'); 104 $('.agp-cookie-hint-toggle-button').removeClass('agp-cookie-hint-toggle-button--hidden'); 105 } 106 } 107 }); 108 109 /* 110 * Build the iframe 111 */ 112 function agpCookie_iframe(url, type, provider) { 113 114 var iframe = $('<iframe>'); 115 var classes = 'agp-cookie-embed-iframe agp-cookie-embed-iframe--' + type; 116 iframe.attr('class', classes); 117 iframe.attr('frameborder', 0); 118 119 if ( type == 'video' ) { 120 iframe.attr('encrypted-media', 1); 121 iframe.attr('allowfullscreen', 1); 122 url += '&autoplay=1'; 123 } else if (provider == 'soundcloud') { 124 url += '&auto_play=true'; 125 } 126 127 iframe.attr('src', url); 128 129 return iframe; 130 } 131 132 /* 133 * Statistics opt-out 134 */ 135 $('.agp-cookies-opt-out-button').click(function(event){ 136 event.preventDefault(); 137 event.stopPropagation(); 138 console.log('Statistics Opt-Out'); 139 agpCookies_setCookie('agp-cookies-allow-statistics', 0, 121); 140 location.reload(); 141 }); 142 143 /* 144 * Handle cookies 145 */ 146 function agpCookies_setCookie(name,value,days) { 147 var expires = ""; 148 if (days) { 149 var date = new Date(); 150 date.setTime(date.getTime() + (days*24*60*60*1000)); 151 expires = "; expires=" + date.toUTCString(); 152 } 153 document.cookie = name + "=" + (value || "") + expires + "; path=/"; 154 } 155 156 function agpCookies_getCookie(name) { 157 var nameEQ = name + "="; 158 var ca = document.cookie.split(';'); 159 160 for(var i=0;i < ca.length;i++) { 161 var c = ca[i]; 162 while (c.charAt(0)==' ') c = c.substring(1,c.length); 163 if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); 164 } 165 return null; 166 } 167
168 function agpCookies_eraseCookie(name) { 169 document.cookie = name+'=; Max-Age=-99999999;'; 170 } 171})( 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.