[JS] Bandeau d’autorisation d’utiliser des cookies
Cookieschoices.js - Création un bandeau d’autorisation pour l'utilisation des cookies sur son site Internet
Un cookie, qu’est-ce c’est ? A part le biscuit aux pépites de chocolat !!!
Il s’agit tout simplement d’un petit fichier que va déposer un site internet sur votre ordinateur pour y stocker des informations qui vous sont propres. Cela peut servir par exemple à analyser l’audience du site, cibler des publicités ou tout simplement mémoriser vos identifiant et mot de passe.
Il n’y a encore pas si longtemps, cela pouvait se faire de manière invisible pour le visiteur. Aujourd’hui, pour les cookies autres que ceux nécessaires au bon fonctionnement du site, il faut lui informer la finalité de leur usage, obtenir son consentement (validité de 13 mois maximum) ainsi que lui donner la possibilité de les refuser.
En savoir + : CNIL - Cookies & traceurs - Que dit la loi
Exemple de message :
Message pour statistiques :
Ce site utilise des cookies afin d'analyser le trafic et de mesurer les performances des annonces. [ACCEPTER] / [REFUSER]
Message pour publicité ou réseaux sociaux :
En poursuivant votre navigation, vous acceptez le dépôt de cookies tiers destinés à vous proposer des vidéos, des boutons de partage, des remontées de contenus de plateformes sociales. [ACCEPTER] / [REFUSER]
Message général :
Ce site utilise des cookies pour vous offrir le meilleur service. En poursuivant votre navigation, vous acceptez l’utilisation des cookies. [ACCEPTER] / [REFUSER]
Cookieschoices.js
<div id=
"cookiesAccept"
></div>
<div id=
"cookiesScript"
><!-- Your Script (ex : Google Analytics; facebook; twitter; ...) --></div>
<script>
/** PARAM ////////////////////// */
var
bndIdCookiesInfos =
'cookiesAccept'
;
var
bndIdCookiesScript =
'cookiesScript'
;
var
contentInfosMessage =
'Ce site utilise des cookies afin d\'analyser le trafic et de mesurer les performances des annonces. En poursuivant votre navigation sur ce site, vous en acceptez l\'utilisation.'
;
var
contentInfosMessageLinkMore =
''
;
/** .PARAM ////////////////////// */
var
blkInfos =
null
;
var
blkScript =
null
;
var
htmlChecked =
null
;
window.onload =
function
() {
if
((document.getElementById(bndIdCookiesInfos)) && (document.getElementById(bndIdCookiesScript))) {
var
cookiesAccepted =
null
;
blkInfos = document.getElementById(bndIdCookiesInfos);
blkScript = document.getElementById(bndIdCookiesScript);
htmlChecked =
true
;
if
(sessionStorage.getItem(
"cookiesAccepted"
)) {cookiesAccepted = sessionStorage.getItem(
"cookiesAccepted"
);}
else
{sessionStorage.setItem(
'cookiesAccepted'
,
'null'
);}
CookiesAreAccepted(cookiesAccepted);
}
};
function
CookiesAreAccepted(param) {
if
(htmlChecked ===
true
) {
if
(param ===
'true'
) {
sessionStorage.setItem(
'cookiesAccepted'
,
'true'
);
blkInfos.remove();
}
else
if
(param ===
'false'
) {
sessionStorage.setItem(
'cookiesAccepted'
,
'false'
);
blkInfos.remove(); blkScript.remove();
}
else
{
var
htmlContent =
'<div style="z-index: 9999 !important;position: fixed !important;background-color: rgba(51, 51, 51, 0.6);color:#fff;bottom: 0;width: 100%;padding: 10px;">'
;
htmlContent +=
'<div style="float: left;"><em>'
+ contentInfosMessage +
'</em>'
;
if
(contentInfosMessageLinkMore !=
''
) {
htmlContent +=
' <a href="'
+ contentInfosMessageLinkMore +
'" style="color:#fff;text-decoration: underline;">en savoir +</a>'
;
}
htmlContent +=
'</div>'
;
htmlContent +=
'<div style="float: right;">'
;
htmlContent +=
'<span id="btnAcceptCookies" style="padding:5px;background-color:green;cursor:pointer;" onclick="CookiesAreAccepted(\'true\');">ACCEPTER</span> '
;
htmlContent +=
'<span id="btnDeclineCookies" style="padding:5px;background-color:red;cursor:pointer;" onclick="CookiesAreAccepted(\'false\');">REFUSER</span> '
;
htmlContent +=
'</div></div>'
;
blkInfos.innerHTML = htmlContent;
}
}
}
function
ClearCookieschoices() {sessionStorage.removeItem(
'cookiesAccepted'
);}
</script>
Quoi de mieux qu’un exemple concret ! Voici un bandeau qui notifie l’utilisation de cookies en bas de page. Si vous appuyez sur le bouton « AUTORISER » le bandeau -div-"cookiesAccept" est masquée et le contenue de le -div-"cookiesScript" reste, par contre si vous cliquez sur "REFUSER" le bandeau est masqué ainsi que le -div-"cookiesScript".
Pour l’afficher à nouveau ce beandeu, utilisez la commande "ClearCookieschoices()" dans la console javascript de votre navigateur et rafraîchissez la page.
Voilà vous avez tous les éléments pour afficher un bandeau de notifications de l’utilisation des cookies sur l’ensemble des pages de votre site web. Grâce à ce simple tutoriel et ce petit code Cookieschoices.js, c’est à vous de jouer maintenant pour rendre votre site internet conforme aux législations européennes.