Inserimento nuova gestione cookie policy
This commit is contained in:
@@ -0,0 +1,156 @@
|
||||
// Parametri di configurazione
|
||||
const cookiePolicyUrl = "https://www.gestionespiaggia.it/it/cookiepolicy";
|
||||
const cookieApiUrl = "https://cookie.adriaticasistemi.it/consensi";
|
||||
const cookieApiH = "d4c1b34181a4b565e9878ff5d579940ad0f308adc73fbfa02addc1f36fd5412a";
|
||||
const cookieExpiresDays = 90;
|
||||
|
||||
const cookieAcceptText = "Accetto tutti";
|
||||
const cookieDeclineText = "Rifiuto";
|
||||
const cookiePolicyMainColor = "#F4C058";
|
||||
const cookiePolicyMainColorContrast = "#FFFFFF";
|
||||
const cookiePolicyText = `Utilizziamo cookie, anche di terze parti, per consentire il funzionamento del nostro sito e dei servizi
|
||||
offerti e per misurare in forma aggregata il traffico e le prestazioni dello stesso e dei relativi servizi
|
||||
nonché, previo tuo consenso, per utilizzare dati sulla tua attività navigazione, al fine di migliorare le
|
||||
prestazioni, personalizzare la navigazione sulla base delle tue preferenze, inviare pubblicità mirata.
|
||||
Cliccando su “${cookieAcceptText}” acconsenti all’attivazione di tutti i cookie.
|
||||
Cliccando su "${cookieDeclineText}" permarranno le
|
||||
impostazioni di default e, dunque, continuerai a navigare in assenza di cookie o altri strumenti di
|
||||
tracciamento diversi da quelli tecnici. Per maggiori informazioni sui cookie utilizzati, consulta la <a
|
||||
class="cookie_link"
|
||||
href="${cookiePolicyUrl}"
|
||||
target="_blank">cookie policy</a>.`;
|
||||
|
||||
// Blocchi html e css
|
||||
const cookieBlockStyle = `<style>
|
||||
|
||||
/** COOKIE POLICY STYLE **/
|
||||
|
||||
#cookie_block {
|
||||
background-color: ${cookiePolicyMainColor};
|
||||
color: ${cookiePolicyMainColorContrast};
|
||||
bottom: 0;
|
||||
height: auto;
|
||||
padding: 16px 16px 12px;
|
||||
position: fixed;
|
||||
width: 100%;
|
||||
z-index: 1000;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
#cookie_block a {
|
||||
color: ${cookiePolicyMainColorContrast};
|
||||
}
|
||||
|
||||
#cookie_block a.cookie_link{
|
||||
text-decoration: underline !important;
|
||||
}
|
||||
|
||||
#cookie_block a.btn {
|
||||
border: 1px solid ${cookiePolicyMainColorContrast};
|
||||
border-radius: 0;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#cookie_block a.btn:hover {
|
||||
background-color: ${cookiePolicyMainColorContrast};
|
||||
color: ${cookiePolicyMainColor};
|
||||
text-decoration: none;
|
||||
}
|
||||
</style>`;
|
||||
const cookieBlockHtml = `<div id="cookie_block">
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-md-9 text-justify">
|
||||
${cookiePolicyText}
|
||||
</div>
|
||||
<div class="col-xs-12 col-md-3">
|
||||
<a data-cookie="all" href="#" class="btn pull-right btn-sm mt-2 cookie_btn"><i class="fa fa-check fa-fw"></i> ${cookieAcceptText}</a>
|
||||
<a data-cookie="tecnici" href="#" class="btn pull-right btn-sm mt-2 cookie_btn"><i class="fa fa-times fa-fw"></i> ${cookieDeclineText}</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>`;
|
||||
|
||||
// Funzioni per la gestione dei cookie
|
||||
function createCookie(name, value, days) {
|
||||
if (days) {
|
||||
var date = new Date();
|
||||
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
|
||||
var expires = "; expires=" + date.toGMTString();
|
||||
}
|
||||
else var expires = "";
|
||||
|
||||
document.cookie = name + "=" + value + expires + "; path=/";
|
||||
}
|
||||
|
||||
function readCookie(name) {
|
||||
let nameEQ = name + "=";
|
||||
let ca = document.cookie.split(';');
|
||||
for (let i = 0; i < ca.length; i++) {
|
||||
var c = ca[i];
|
||||
while (c.charAt(0) == ' ') c = c.substring(1, c.length);
|
||||
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
function eraseCookie(name) {
|
||||
createCookie(name, "", -1);
|
||||
}
|
||||
|
||||
// Controller
|
||||
|
||||
$(document).ready(function () {
|
||||
|
||||
$(document.head).append(cookieBlockStyle);
|
||||
$(document.body).append(cookieBlockHtml);
|
||||
const cookieBlock = $('#cookie_block');
|
||||
|
||||
// const cookiePolicyInfo = readCookie('cookiePolicyInfo');
|
||||
const displayCookiePolicy = readCookie('displayCookiePolicy');
|
||||
|
||||
if(displayCookiePolicy){
|
||||
cookieBlock.hide();
|
||||
}else{
|
||||
cookieBlock.show();
|
||||
}
|
||||
|
||||
}).delegate('.cookie_btn','click',(link) => {
|
||||
link.preventDefault();
|
||||
|
||||
const element = $(link.target);
|
||||
if(element.attr('disabled')) return;
|
||||
|
||||
const icon = element.children('i');
|
||||
|
||||
const CheckCookieTerzeParti = element.data('cookie') === "all";
|
||||
|
||||
const callSettings = {
|
||||
url: cookieApiUrl,
|
||||
type: 'POST',
|
||||
dataType: 'json',
|
||||
contentType: "application/json",
|
||||
data: JSON.stringify({
|
||||
CheckCookieTecnici: true,
|
||||
CheckCookieTerzeParti,
|
||||
UrlSito: window.location.host
|
||||
})
|
||||
};
|
||||
|
||||
const iconName = CheckCookieTerzeParti ? 'fa-check':'fa-times';
|
||||
icon.removeClass(iconName).addClass('fa-circle-o-notch fa-spin');
|
||||
$('.cookie_btn').attr('disabled', true);
|
||||
|
||||
if(cookieApiH) callSettings.headers = {Authorization: cookieApiH};
|
||||
|
||||
$.ajax(callSettings).done((res) => {
|
||||
createCookie('displayCookiePolicy', res.Identificativo, cookieExpiresDays);
|
||||
createCookie('cookiePolicyInfo', JSON.stringify(res), cookieExpiresDays);
|
||||
|
||||
$('#cookie_block').slideUp();
|
||||
}).fail(() => {
|
||||
eraseCookie('displayCookiePolicy');
|
||||
eraseCookie('cookiePolicyInfo');
|
||||
}).always(() => {
|
||||
$('.cookie_btn').removeAttr('disabled');
|
||||
icon.removeClass('fa-circle-o-notch fa-spin').addClass(iconName);
|
||||
});
|
||||
});
|
||||
Vendored
+56
@@ -0,0 +1,56 @@
|
||||
const cookiePolicyUrl="https://www.gestionespiaggia.it/it/cookiepolicy";const cookieApiUrl="https://cookie.adriaticasistemi.it/consensi";const cookieApiH="d4c1b34181a4b565e9878ff5d579940ad0f308adc73fbfa02addc1f36fd5412a";const cookieExpiresDays=90;const cookieAcceptText="Accetto tutti";const cookieDeclineText="Rifiuto";const cookiePolicyMainColor="#F4C058";const cookiePolicyMainColorContrast="#FFFFFF";const cookiePolicyText=`Utilizziamo cookie, anche di terze parti, per consentire il funzionamento del nostro sito e dei servizi
|
||||
offerti e per misurare in forma aggregata il traffico e le prestazioni dello stesso e dei relativi servizi
|
||||
nonché, previo tuo consenso, per utilizzare dati sulla tua attività navigazione, al fine di migliorare le
|
||||
prestazioni, personalizzare la navigazione sulla base delle tue preferenze, inviare pubblicità mirata.
|
||||
Cliccando su “${cookieAcceptText}” acconsenti all’attivazione di tutti i cookie.
|
||||
Cliccando su "${cookieDeclineText}" permarranno le
|
||||
impostazioni di default e, dunque, continuerai a navigare in assenza di cookie o altri strumenti di
|
||||
tracciamento diversi da quelli tecnici. Per maggiori informazioni sui cookie utilizzati, consulta la <a
|
||||
class="cookie_link"
|
||||
href="${cookiePolicyUrl}"
|
||||
target="_blank">cookie policy</a>.`;const cookieBlockStyle=`<style>
|
||||
|
||||
/** COOKIE POLICY STYLE **/
|
||||
|
||||
#cookie_block {
|
||||
background-color: ${cookiePolicyMainColor};
|
||||
color: ${cookiePolicyMainColorContrast};
|
||||
bottom: 0;
|
||||
height: auto;
|
||||
padding: 16px 16px 12px;
|
||||
position: fixed;
|
||||
width: 100%;
|
||||
z-index: 1000;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
#cookie_block a {
|
||||
color: ${cookiePolicyMainColorContrast};
|
||||
}
|
||||
|
||||
#cookie_block a.cookie_link{
|
||||
text-decoration: underline !important;
|
||||
}
|
||||
|
||||
#cookie_block a.btn {
|
||||
border: 1px solid ${cookiePolicyMainColorContrast};
|
||||
border-radius: 0;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#cookie_block a.btn:hover {
|
||||
background-color: ${cookiePolicyMainColorContrast};
|
||||
color: ${cookiePolicyMainColor};
|
||||
text-decoration: none;
|
||||
}
|
||||
</style>`;const cookieBlockHtml=`<div id="cookie_block">
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-md-9 text-justify">
|
||||
${cookiePolicyText}
|
||||
</div>
|
||||
<div class="col-xs-12 col-md-3">
|
||||
<a data-cookie="all" href="#" class="btn pull-right btn-sm mt-2 cookie_btn"><i class="fa fa-check fa-fw"></i> ${cookieAcceptText}</a>
|
||||
<a data-cookie="tecnici" href="#" class="btn pull-right btn-sm mt-2 cookie_btn"><i class="fa fa-times fa-fw"></i> ${cookieDeclineText}</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>`;function createCookie(name,value,days){if(days){var date=new Date;date.setTime(date.getTime()+days*24*60*60*1e3);var expires="; expires="+date.toGMTString()}else var expires="";document.cookie=name+"="+value+expires+"; path=/"}function readCookie(name){let nameEQ=name+"=";let ca=document.cookie.split(";");for(let i=0;i<ca.length;i++){var c=ca[i];while(c.charAt(0)==" ")c=c.substring(1,c.length);if(c.indexOf(nameEQ)==0)return c.substring(nameEQ.length,c.length)}return null}function eraseCookie(name){createCookie(name,"",-1)}$(document).ready(function(){$(document.head).append(cookieBlockStyle);$(document.body).append(cookieBlockHtml);const cookieBlock=$("#cookie_block");const displayCookiePolicy=readCookie("displayCookiePolicy");if(displayCookiePolicy){cookieBlock.hide()}else{cookieBlock.show()}}).delegate(".cookie_btn","click",link=>{link.preventDefault();const element=$(link.target);if(element.attr("disabled"))return;const icon=element.children("i");const CheckCookieTerzeParti=element.data("cookie")==="all";const callSettings={url:cookieApiUrl,type:"POST",dataType:"json",contentType:"application/json",data:JSON.stringify({CheckCookieTecnici:true,CheckCookieTerzeParti:CheckCookieTerzeParti,UrlSito:window.location.host})};const iconName=CheckCookieTerzeParti?"fa-check":"fa-times";icon.removeClass(iconName).addClass("fa-circle-o-notch fa-spin");$(".cookie_btn").attr("disabled",true);if(cookieApiH)callSettings.headers={Authorization:cookieApiH};$.ajax(callSettings).done(res=>{createCookie("displayCookiePolicy",res.Identificativo,cookieExpiresDays);createCookie("cookiePolicyInfo",JSON.stringify(res),cookieExpiresDays);$("#cookie_block").slideUp()}).fail(()=>{eraseCookie("displayCookiePolicy");eraseCookie("cookiePolicyInfo")}).always(()=>{$(".cookie_btn").removeAttr("disabled");icon.removeClass("fa-circle-o-notch fa-spin").addClass(iconName)})});
|
||||
Reference in New Issue
Block a user