/* IT_COOKIE_LAW.js v.1.0.0b * Plugin che permette di adempiere alla normativa europea sui Cookie così come * receptia dallo Stato Italiano. * Per funzionare necessita di jQuery v.1 * Autori: Duccio Armenise e Marta Petrella, http://NemboWeb.com * Maggiori info: ** https://github.com/NemboWeb/it_cookie_law (repository online) ** http://nemboweb.com/blog/didattica/cookie-law-vademecum (cookie law vademecum) * Il codice è molto semplice, breve e ben commentato, * ti raccomandiamo vivamente di leggerlo e comprenderne il funzionamento. * LE PRIME VARIABILI SONO DA IMPOSTARE SECONDO LE TUE ESIGENZE! */ // QUESTO URL DEVE ESSERE QUELLO DELLA TUA Cookie policy (Informativa Estesa) sul TUO sito! var cookiePolicyURL = "http://www.webstorm.it/policy.html" // Nome del cookie impostato. Puoi cambiarlo a tuo piecere. var acceptedCookieName = 'cookie_policy_accepted' // Durata del cookie in giorni var acceptedCookieLife = 3000 // Deve essere univoco all'interno della pagina var infoBannerId = "cookie_info_breve" // Deve essere univoco all'interno della pagina var acceptButtonId = "cookie_accept_button" // testi dei pulsanti var acceptButtonText = "Accetto" var infoLinkText = "Leggi informativa" // Testo dell'informativa var infoText = "Questo sito utilizza cookie tecnici non profilatori: cliccando su '"+acceptButtonText+"', proseguendo nella navigazione, effettuando lo scroll della pagina o altro tipo di interazione col sito, acconsenti all'utilizzo dei cookie. Per maggiori informazioni o per negare il consenso a tutti o ad alcuni cookie, consulta l'informativa cliccando sul link relativo." // Stili CSS degli elementi var divEsternoCSS = "background-color: rgba(0, 0, 0, 0.7); font-size: 0.8em; font-family: verdana,arial,tahoma,sans-serif; padding: 1em 0px; margin: 0px; width: 100%; position: fixed; left: 0px; top: 0px; z-index: 999999;"; var divInternoCSS = "margin: 0px auto; width: 80%; position: relative;"; var divInfoTextCSS = "color: rgb(255, 255, 255); display: block; float:left; width: 70%; line-height: 1.5em;"; var divButtonsCSS = "color: rgb(255, 255, 255); display:block; float:right; block; width: 25%; text-align: right; line-height: 1.2em;"; var acceptButtonCSS = "color: rgb(255, 153, 0); font-size: 1.1em; font-weight: bold; text-decoration: none; display: block; margin-bottom:1em;"; var infoLinkCSS = "color: rgb(255, 255, 255); text-decoration: underline; display: block;"; // Costruttore del banner informativo var infoBanner = "
" + "
" + "
" + infoText + "
" + "
" + ""+acceptButtonText+"" + ""+infoLinkText+"" + "
" + "
" + "
"; // Programma principale $(document).ready(function() { // se è presente il cookie "acceptedCookieName" con valore 'true', allora if (getCookie(acceptedCookieName) === 'true') { // i cookie sono stati accettati optedIn(); // sblocca tutti gli elementi } else { // cookie non accettati optInHandler(); // mostra banner con informativa breve } }); // Gestione del visitatore che deve ancora dare il consenso function optInHandler(){ $('body').append(infoBanner); // Inserisci il banner informativo setTimeout(readUserInput, 2000) // aspetta due secondi per dar tempo all'utente di notare il banner } function readUserInput(){ // Accettazione mediante scroll var accepted = false; // questa variabile serve a rilevare l'accettamento solo una volta window.onscroll = function(e){ if (accepted == false){ accepted = true; cookieOptIn(); } } // Accettazione con click su acceptButton $('#'+acceptButtonId).click(function() { accepted = true; cookieOptIn(); }); } // Salvataggio del consenso con cookie tecnico 'acceptedCookieName' function cookieOptIn(){ setCookie(acceptedCookieName, 'true', acceptedCookieLife); //salvataggio del cookie sul browser dell'utente $('#'+infoBannerId).hide(); optedIn(); } // Sblocca gli script esterni ricaricandoli in fondo alla pagina HTML function reloadJs(src) { src = $('script[data-blocked="' + src + '"]').attr("data-blocked"); $('script[data-blocked="' + src + '"]').remove(); $('