logo4

Translate

itzh-CNenfrdejakoptrues

Inserire il banner per il consenso all'uso dei COOKIE

Google, che era il principale interessato alla nuova direttiva Europea, aveva avuto 18 mesi di tempo per adeguare i propri siti. Ovviamente Google, di tempo ne ha impiegato molto meno e in più,ha messo a disposizione dei webmaster due strumenti per aiutarli ad adeguare i loro siti in maniera semplice e veloce. La prima soluzione, prevede una “finestra di dialogo” (Dialog Box) che appare al visitatore prima di lasciare spazio alle pagine del sito web. La seconda soluzione invece, sovrappone un banner in basso o in alto nelle pagine in cui viene inserito lo script. In entrambe le soluzioni quando il visitatore clicca sul pulsante “Accetta” o “Chiudi” (possiamo scegliere liberamente il testo del pulsante), verrà generato un cookie dalla durata di 12 mesi permettendo al visitatore per un anno di non dover chiudere nuovamente il banner o la finestra.

Per prima cosa, dovete creare sul vostro sito una pagina dedicata alla cookie policy. Potete prendere spunto da qui.

Quindi se scegliete la prima soluzione e cioè visualizzare una finestra col messaggio, bisogna inserire il seguente codice all’interno del tag <body> delle pagine del vostro sito:

<scriptsrc="/cookiechoices.js"></script><script>//<![CDATA[
document.addEventListener('DOMContentLoaded',function(event){        
    cookieChoices.showCookieConsentDialog('Il tuo messaggio per i visitatori.',         
        'Chiudi','Maggiori Informazioni',                      
                 'http://indirizzo_pagina_cookie_policy'>);
   });//]]></script>

Copiate infine sul server, nella cartella principale del vostro sito il file cookiechoices.js (vi riporto di seguito il link dove scaricarlo) e assicuratevi che il percorso coincida con quello inserito nella prima riga del codice indicato sopraModificare inoltre l’indirizzo ‘http://indirizzo_pagina_cookie_policy’ inserendo l’indirizzo della pagina dedicata alla cookie policy che avete creato in precedenza.

Scarica cookiechoices.zip (prima di copiarlo sul server va scompattato!)

Se scegliete la soluzione del banner, il codice da inserire nelle pagine del vostro sito, all’interno della sezione <body> è quello riportato di seguito.

<scriptsrc="/cookiechoices.js"></script><script>//<![CDATA[
document.addEventListener('DOMContentLoaded',function(event){
    cookieChoices.showCookieConsentBar('Il tuo messaggio per i visitarori.',
        'Chiudi','Maggiori Informazioni',
                 'http://indirizzo_pagina_cookie_policy'>);
  });//]]></script>

Anche in questo caso, bisogna caricare sul server il file cookiechoices.js e inserire l’indirizzo corretto della vostra pagina dedicata all’uso dei cookie.

Scarica cookiechoices.zip (prima di copiarlo sul server va scompattato!)

Per chi usa blogspot, o non può caricare il file sul server, può sostituire la riga:

<scriptsrc="/cookiechoices.js"></script>

con :

<scripttype="text/javascript">//<![CDATA[(function(window){

  if(!!window.cookieChoices){
    return window.cookieChoices;
  }

  var document = window.document;
  // IE8 does not support textContent, so we should fallback to innerText.
  var supportsTextContent ='textContent' in document.body;

  var cookieChoices =(function(){

    var cookieName ='displayCookieConsent';
    var cookieConsentId ='cookieChoiceInfo';
    var dismissLinkId ='cookieChoiceDismiss';

    function _createHeaderElement(cookieText, dismissText, linkText, linkHref){
      var butterBarStyles ='position:fixed;width:100%;background-color:#eee;'+
          'margin:0; left:0; top:0;padding:4px;z-index:1000;text-align:center;';

      var cookieConsentElement = document.createElement('div');
      cookieConsentElement.id = cookieConsentId;
      cookieConsentElement.style.cssText = butterBarStyles;
      cookieConsentElement.appendChild(_createConsentText(cookieText));

      if(!!linkText &&!!linkHref){
        cookieConsentElement.appendChild(_createInformationLink(linkText, linkHref));
      }
      cookieConsentElement.appendChild(_createDismissLink(dismissText));
      return cookieConsentElement;
    }

    function _createDialogElement(cookieText, dismissText, linkText, linkHref){
      var glassStyle ='position:fixed;width:100%;height:100%;z-index:999;'+
          'top:0;left:0;opacity:0.5;filter:alpha(opacity=50);'+
          'background-color:#ccc;';
      var dialogStyle ='z-index:1000;position:fixed;left:50%;top:50%';
      var contentStyle ='position:relative;left:-50%;margin-top:-25%;'+
          'background-color:#fff;padding:20px;box-shadow:4px 4px 25px #888;';

      var cookieConsentElement = document.createElement('div');
      cookieConsentElement.id = cookieConsentId;

      var glassPanel = document.createElement('div');
      glassPanel.style.cssText = glassStyle;

      var content = document.createElement('div');
      content.style.cssText = contentStyle;

      var dialog = document.createElement('div');
      dialog.style.cssText = dialogStyle;

      var dismissLink = _createDismissLink(dismissText);
      dismissLink.style.display ='block';
      dismissLink.style.textAlign ='right';
      dismissLink.style.marginTop ='8px';

      content.appendChild(_createConsentText(cookieText));
      if(!!linkText &&!!linkHref){
        content.appendChild(_createInformationLink(linkText, linkHref));
      }
      content.appendChild(dismissLink);
      dialog.appendChild(content);
      cookieConsentElement.appendChild(glassPanel);
      cookieConsentElement.appendChild(dialog);
      return cookieConsentElement;
    }

    function _setElementText(element, text){
      if(supportsTextContent){
        element.textContent = text;
      }else{
        element.innerText = text;
      }
    }

    function _createConsentText(cookieText){
      var consentText = document.createElement('span');
      _setElementText(consentText, cookieText);
      return consentText;
    }

    function _createDismissLink(dismissText){
      var dismissLink = document.createElement('a');
      _setElementText(dismissLink, dismissText);
      dismissLink.id = dismissLinkId;
      dismissLink.href ='#';
      dismissLink.style.marginLeft ='24px';
      return dismissLink;
    }

    function _createInformationLink(linkText, linkHref){
      var infoLink = document.createElement('a');
      _setElementText(infoLink, linkText);
      infoLink.href = linkHref;
      infoLink.target ='_blank';
      infoLink.style.marginLeft ='8px';
      return infoLink;
    }

    function _dismissLinkClick(){
      _saveUserPreference();
      _removeCookieConsent();
      returnfalse;
    }

    function _showCookieConsent(cookieText, dismissText, linkText, linkHref, isDialog){
      if(_shouldDisplayConsent()){
        _removeCookieConsent();
        var consentElement =(isDialog)?
            _createDialogElement(cookieText, dismissText, linkText, linkHref):
            _createHeaderElement(cookieText, dismissText, linkText, linkHref);
        var fragment = document.createDocumentFragment();
        fragment.appendChild(consentElement);
        document.body.appendChild(fragment.cloneNode(true));
        document.getElementById(dismissLinkId).onclick = _dismissLinkClick;
      }
    }

    function showCookieConsentBar(cookieText, dismissText, linkText, linkHref){
      _showCookieConsent(cookieText, dismissText, linkText, linkHref,false);
    }

    function showCookieConsentDialog(cookieText, dismissText, linkText, linkHref){
      _showCookieConsent(cookieText, dismissText, linkText, linkHref,true);
    }

    function _removeCookieConsent(){
      var cookieChoiceElement = document.getElementById(cookieConsentId);
      if(cookieChoiceElement !=null){
        cookieChoiceElement.parentNode.removeChild(cookieChoiceElement);
      }
    }

    function _saveUserPreference(){
      // Set the cookie expiry to one year after today.
      var expiryDate =newDate();
      expiryDate.setFullYear(expiryDate.getFullYear()+1);
      document.cookie = cookieName +'=y; expires='+ expiryDate.toGMTString();
    }

    function _shouldDisplayConsent(){
      // Display the header only if the cookie has not been set.
      return!document.cookie.match(newRegExp(cookieName +'=([^;]+)'));
    }

    var exports ={};
    exports.showCookieConsentBar = showCookieConsentBar;
    exports.showCookieConsentDialog = showCookieConsentDialog;
    return exports;
  })();

  window.cookieChoices = cookieChoices;
  return cookieChoices;})(this);//]]> </script>

 
Non vi resta che personalizzare il messaggio da visualizzare per i vostri visitatori che potrebbe essere del tipo:

Questo sito utilizza i cookie per migliorare servizi e esperienza dei lettori.

Se decidi di continuare la navigazione consideriamo che accetti il loro uso.

 

Autore:

Commenti   

0 #19 canada drug 2018-02-25 14:46
Hey there! Someone in my Myspace group shared this website with us so I came to check it out.
I'm definitely enjoying the information. I'm bookmarking and will
be tweeting this to my followers! Outstanding blog and excellent style and design.
Citazione
0 #18 Michaelquark 2018-02-24 21:50
I truly love your blog.. Pleasant colors & theme. Did you make this website yourself? Please reply back as I'm looking to create my very own website and would love to learn where you got this from or just what the theme is called. Many thanks!
------------------------------------------
http://megasto.com.ua

f7rpf9Sg6L
Citazione
0 #17 Josephjappy 2018-02-22 05:05
It's an excellent post. This site is loaded with lots of useful things, it made it easier for me in many ways.
http://www.pkn-elburg.nl/?p=4652
Citazione
0 #16 MarianoWrign 2018-02-22 02:27
I'm sorry for off-topic, I am considering about making an instructive website for college kids. May probably commence with publishing interesting information such as"Americans on the average eat 18 acres of pizza every day."Please let me know if you know where I can find some related info like right here

http://athermisuites.com/essays-and-academic-writing-the-most-widely-4/
http://mobilestagerentals.com/?post_type=post&p=9176
Citazione
0 #15 NathanMok 2018-02-22 00:31
Great post\Nice post, I love it very much.I was pretty lucky to discover your website. It's got so much useful info!
http://www.metropolrussia.ru/professional-writing-service-9/
Citazione
0 #14 northwest Pharmacy 2018-02-21 19:20
Hi there, just became alert to your blog through Google,
and found that it is truly informative. I am going to watch out for brussels.
I'll be grateful if you continue this in future. Numerous people will be benefited from your writing.
Cheers!
Citazione
0 #13 DustinQuaks 2018-01-31 18:02
Thanks for helping people get the information they need. Good stuff as usual. Keep up the good work!!!
https://eduhelp945434737.wordpress.com/
Citazione
0 #12 specadieta.com 2018-01-13 17:41
I'm extremely impressed with your writing skills as well as with the layout on your weblog.
Is this a paid theme or did you customize it yourself?

Either way keep up the excellent quality writing, it
is rare to see a nice blog like this one nowadays.
Citazione
0 #11 specadieta.com 2018-01-05 13:12
This paragraph is actually a nice one it assists
new internet viewers, who are wishing in favor of blogging.
Citazione
0 #10 ed sheeran music 2017-08-30 19:38
Wow, fantastic blog layout! How long have you been blogging for?
you made blogging look easy. The overall look of your web site is fantastic, let alone the content!
Citazione

Aggiungi commento

Critiche e correzioni sono ben accette e anzi incoraggiate, purché espresse in modo civile. Gli insulti personali, a me o ad altri, no. Regolatevi di conseguenza, se non volete che i vostri commenti vengano rimossi o rifiutati.
Nei casi più estremi ed evidentemente irrecuperabili, cioè le persone che si rifiutano pervicacemente di rispettare le regole di buona educazione, nonostante gli inviti alla moderazione prima e le cancellazioni dei commenti poi, è previsto, a nostro insindacabile giudizio, il ban definitivo dal blog.


Codice di sicurezza
Aggiorna