var componentVerifyCycle = 0;
var bottom_of_window = jQuery(window).scrollTop() + jQuery(window).height();
var lang_page = cmsPageParams.lang;
var bLazy;
var siteApp = {
params: {
homepage: {
images: [],
images_mobile: []
},
},
init: function () {
if (siteApp.allComponentIsLoaded()) {
siteApp.startApplication();
} else {
componentVerifyCycle++;
if (componentVerifyCycle < 200) {
setTimeout(function () {
siteApp.init();
}, 100);
} else {
console.warn('Init Application Error! waiting for: ' + siteApp.params.tmp);
return false;
}
}
},
allComponentIsLoaded: function () {
var loaded = true;
var msg = '';
if (typeof jQuery == 'undefined') {
loaded = false;
msg += '-jQuery';
}
if (typeof hs == 'undefined') {
loaded = false;
msg += '-hs';
}
if (typeof jQuery().slick == 'undefined') {
loaded = false;
msg += '-slick';
}
if (typeof jQuery().imageLightbox == 'undefined') {
loaded = false;
msg += '-imagelightbox';
}
if (typeof cms == 'undefined') {
loaded = false;
msg += 'cms';
}
if (!loaded) {
siteApp.params.tmp = msg;
return false;
} else {
return true;
}
},
startApplication: function () {
siteApp.loadGoogleFont("https://fonts.googleapis.com/css2?family=Questrial&family=Reenie+Beanie&display=swap");
siteApp.openMenuMobile();
if(window.innerWidth > 991){
siteApp.fadeInHeader(jQuery('.barra-fix'));
}else{
jQuery('.vantaggi').addClass('nasc');
}
siteApp.scrollAnimation();
siteApp.accordionTab();
jQuery(".comments_clear").remove();
jQuery('.testo.table-box').wrapInner("
");
if(window.innerWidth < 992){
jQuery("li.submenu-container > a").removeAttr("href");
}
if(window.innerWidth < 992){
siteApp.openSecondLevel();
}
var forms = document.querySelectorAll('form.form-booking');
for(var i=0;i767) {
siteApp.hresize('.box-servizi .txt');
}
}, 200);
jQuery('.slider-img-tab > div').slick({
arrows:false,
dots: false,
infinite: false,
speed: 800,
slidesToShow: 1,
autoplay: true,
autoplaySpeed: 3500
});
jQuery('.slider-img-tab > div').on('afterChange', function(event, slick, currentSlide, nextSlide){
bLazy.revalidate();
});
/* clicco tab */
cms.onEvent('so_tab_changed', function(data){
bLazy.revalidate();
//jQuery('.slider-img-tab > div').resize();
jQuery('.slider-img-tab > div').slick('setPosition');
//console.log('ok')
})
break;
case "1588927137": /* pag blog*/
jQuery('.blog-scorrevoli').slick('unslick');
break;
/* PAG AYAS */
case "1588933454":
jQuery('.slider-img-tab > div').slick({
arrows:false,
dots: false,
infinite: false,
speed: 800,
slidesToShow: 1,
autoplay: true,
autoplaySpeed: 3500
});
jQuery('.slider-img-tab > div').on('afterChange', function(event, slick, currentSlide, nextSlide){
bLazy.revalidate();
});
/* clicco tab */
cms.onEvent('so_tab_changed', function(data){
bLazy.revalidate();
//jQuery('.slider-img-tab > div').resize();
jQuery('.slider-img-tab > div').slick('setPosition');
//console.log('ok')
})
break;
case "1589292027":
case "1589294324": /* lastminute + blog dettaglio */
setTimeout(function () {
goToByScroll('.dett_offerte')
}, 150);
break;
case "1587739599": /* HOME */
setTimeout(function() {
if (window.innerWidth>767) {
siteApp.hresize('.box-servizi .txt');
}
}, 250);
jQuery('.slider-img-home > div').slick({
arrows:false,
dots: false,
infinite: true,
speed: 800,
slidesToShow: 1,
autoplay: true,
autoplaySpeed: 3500,
fade: true,
cssEase: 'linear'
});
jQuery('.slider-img-home > div').on('afterChange', function(event, slick, currentSlide, nextSlide){
bLazy.revalidate();
});
break;
case "1588919833": /*pagina offerte*/
if (window.innerWidth>767) {
siteApp.hresize('.offerte-column .cont');
}
jQuery(".btn").click(function(e){
e.preventDefault();
jQuery(".btn").removeClass('active');
jQuery(this).addClass("active");
var value = jQuery(this).attr('id');
if(value == "all")
{
jQuery('.filter').show('4000');
}
else
{
jQuery(".filter").not('.'+value).hide('slow');
jQuery('.filter').filter('.'+value).show('18000');
}
});
break;
default:
}
jQuery('.slider-commenti .so_backofficeFeedbackComments').slick({
arrows: true,
dots: false,
speed: 600,
slidesToShow: 2,
autoplay: true,
autoplaySpeed: 6000,
accessibility: false,
infinite: true,
responsive: [
{
breakpoint: 768,
settings: {
slidesToShow: 1
}
}]
});
jQuery('.slider-commenti .so_backofficeFeedbackComments').on('afterChange', function(event, slick, currentSlide, nextSlide){
bLazy.revalidate();
})
jQuery('.slider-home').slick({
arrows:false,
dots: false,
speed: 800,
slidesToShow: 1,
autoplay: true,
autoplaySpeed: 6000,
accessibility:false,
infinite:true,
fade: true,
cssEase: 'linear'
});
jQuery('.slider-home').on('afterChange', function(event, slick, currentSlide, nextSlide){
bLazy.revalidate();
})
jQuery('.slider-pag > div').slick({
arrows:false,
dots: false,
speed: 800,
slidesToShow: 1,
autoplay: true,
autoplaySpeed: 6000,
accessibility:false,
infinite:true,
fade: true,
cssEase: 'linear'
});
jQuery('.slider-pag > div').on('afterChange', function(event, slick, currentSlide, nextSlide){
bLazy.revalidate();
})
jQuery('.slider-img > div').slick({
arrows:false,
dots: false,
infinite: false,
speed: 800,
slidesToShow: 4,
autoplay: true,
autoplaySpeed: 3500,
responsive: [
{
breakpoint: 1200,
settings: {
slidesToShow: 3
}
},
{
breakpoint: 768,
settings: {
slidesToShow: 1
}
}]
});
jQuery('.slider-img > div').on('afterChange', function(event, slick, currentSlide, nextSlide){
bLazy.revalidate();
});
if (jQuery('.slider-img > div').children('.slick-slide').length <= 1) {
jQuery('.slider-img > div').children('.slick-dots').hide();
}
if (jQuery('.slider-img > div .slick-active').attr('data-slick-index') == '0') {
jQuery('.slider-img > div').find('.slick-prev').addClass('freccia-none');
} else {
jQuery('.slider-img > div').find('.slick-next').removeClass('freccia-none');
}
jQuery('.slider-img > div').on('afterChange', function (event, slick, currentSlide, nextSlide) {
bLazy.revalidate();
if (jQuery(this).find('.slick-slide:last-child').hasClass('slick-active')) {
jQuery(this).find('.slick-next').addClass('freccia-none');
} else {
jQuery(this).find('.slick-next').removeClass('freccia-none');
}
if (jQuery(this).find('.slick-active').attr('data-slick-index') == '0') {
jQuery(this).find('.slick-prev').addClass('freccia-none');
} else {
jQuery(this).find('.slick-prev').removeClass('freccia-none');
}
});
jQuery('.slick-slider').each(function(){
jQuery(this).children('.slick-dots').each(function() {
if(jQuery(this).children('li').length <= 1){
jQuery(this).hide();
};
});
});
var pathname = window.location.href;
var pathname = pathname.split('?id=');
var parametro = pathname[1];
var pathnameTab = window.location.href;
var pathnameTab = pathnameTab.split('?tab=');
var parametroTab = pathnameTab[1];
switch (cmsPageParams.relation_code) {
/* ayas + valley vacanze */
case "1588933454":
case "1589275248":
console.log(parametroTab);
if (parametroTab) {
setTimeout(function () {
siteApp.triggerGallery(parametroTab);
//goToByScroll('.tab-'+parametroTab);
goToByScroll('.tab-strutture');
}, 150);
jQuery('.slider-img-tab > div').slick('setPosition');
}
break;
default:
}
jQuery('.cont-tabs input').click(function () {
jQuery('.tab-content').hide();
var element = jQuery(this).attr('id');
jQuery(this).parent('.cont-tabs').siblings(jQuery('.' + element + '').show());
});
jQuery(window).on('scroll', function () {
siteApp.viewCheck();
siteApp.scrollAnimation();
});
/*jQuery('.image-container').each(function () {
var h_image = jQuery(this).find('img.foto').height();
jQuery(this).height(h_image);
});
jQuery(window).on('resize', function () {
if (window.innerWidth > 991) {
jQuery('.image-container').each(function () {
var h_image = jQuery(this).find('img.foto').height();
jQuery(this).height(h_image);
});
}
});*/
//tracciamento generico whatsapp
jQuery('.so_content a[href^="https://wa.me"]').attr("target","_blank");
jQuery('.so_content a[href^="https://wa.me"]').click(function(){
console.log("track whatsapp");
if(typeof GTracker == 'function') {
GTracker('Click_whatsapp');
}
});
siteApp.tracciamentoMobileTelefono();
bLazy = new Blazy({
offset: 6000,
loadInvisible: false,
selector: '.b-lazy',
breakpoints: [{
width: 767,
src: 'data-src-small'
}, {
width: 2000,
src: 'data-src'
}]
});
},
tracciamentoMobileTelefono: function(){
if (window.innerWidth < 992) {
console.log("tracciamentoMobileTelefono");
jQuery('.so_content').each(function () {
var sez = jQuery(this).find(".append_tel").val();
// console.log(sez);
jQuery(this).find('a[href^="tel:"]').attr("sez",sez);
})
jQuery('.so_content a[href^="tel:"]').click(function(){
})
}
},
openMenuMobile: function () {
var $id_menu = '.level1';
var $menu = jQuery($id_menu);
var $btn = jQuery('.op_block');
jQuery($btn).click(function () {
jQuery('.vedi-menu').toggleClass('slide-menu');
$btn.find('.click').toggleClass('open');
$btn.toggleClass('open');
if (jQuery($id_menu + ' .level2').hasClass('slide-menu')) {
jQuery($id_menu + ' .level2').removeClass('slide-menu')
}
});
jQuery(document).bind("click touchstart", function (event) {
if (jQuery(event.target).parents('.op_block').size() | (jQuery(event.target).hasClass('open')) | (jQuery(event.target).parents('ul.level1 li').size()) | jQuery(event.target).is('.tendina-lingue') | jQuery(event.target).parents(".blocco-lingue").size()) {
return;
}
jQuery(".op_block").removeClass('open');
$btn.find('.click').removeClass('open');
if (jQuery('.vedi-menu').hasClass('slide-menu')) {
jQuery(".vedi-menu").removeClass('slide-menu');
}
if (jQuery(".level2").hasClass('slide-menu')) {
jQuery(".level2").removeClass('slide-menu');
}
});
},
countAnimation: function(){
if(window.innerWidth > 991){
jQuery(window).on('scroll', function(){
jQuery('.numero').each(function () {
var bottom_of_object = jQuery(this).offset().top + jQuery(this).height();
var bottom_of_window = jQuery(window).scrollTop() + jQuery(window).height();
if( bottom_of_window > bottom_of_object ){
if(!jQuery(this).hasClass('fatto')){
jQuery(this).prop('Counter',0).animate({
Counter: jQuery(this).text()
}, {
duration: 4000,
easing: 'swing',
step: function (now) {
if (jQuery(this).hasClass('decimal')) {
jQuery(this).text(Math.ceil10(now, -1));
} else {
jQuery(this).text(Math.ceil(now));
}
}
});
jQuery(this).addClass('fatto');
}
}
});
});
}
},
triggerGallery: function(elem){
//console.log('si');
jQuery('.so_tab_buttons a:nth-of-type('+elem+')').trigger('click');
},
openBook: function (param) {
jQuery(param).toggleClass('open');
jQuery(param + ' .chiudi').click(function(){
jQuery(param).removeClass('open');
});
},
openSecondLevel: function () {
jQuery('.submenu-container > a').click(function (e) {
e.preventDefault();
jQuery(this).parents('li').children('.level2').addClass('slide-menu');
})
jQuery('.level2 li:first-child a').click(function (e) {
e.preventDefault();
jQuery(this).parents('li').parents('.level2').removeClass('slide-menu');
})
},
accordionTab: function (param) {
jQuery('.slider-titolo').click(function () {
if (!jQuery(this).hasClass('opened')) {
jQuery('.slider-titolo.opened').removeClass('opened');
jQuery(this).addClass('opened');
jQuery('.slider-corpo.opened').slideUp('fast', function () {
jQuery(this).removeClass('opened');
})
jQuery(this).next().slideDown('fast', function () {
jQuery(this).addClass('opened');
});
} else {
jQuery(this).removeClass('opened');
jQuery('.slider-corpo.opened').slideUp('fast', function () {
jQuery(this).removeClass('opened');
});
}
});
},
hresize: function (param, padding) {
var hm = '';
var maxh = '';
var arrH = [];
var sost = 0;
if (padding) {
sost = padding;
}
jQuery(param).each(function () {
hm = jQuery(this).height() + sost;
arrH.push(hm);
});
maxh = Math.max.apply(Math, arrH);
jQuery(param).height(maxh)
},
fadeInHeader: function(element){
jQuery(window).scroll(function(){
var scrollpos = (document.documentElement.scrollTop || document.body.scrollTop);
var h_w = jQuery(window).height();
if(scrollpos > 10){
element.addClass('fix');
} else {
element.removeClass('fix');
}
if(scrollpos > /*h_w*/ 200){
jQuery('.fixed-bar').addClass('fix-bg');
jQuery('.vantaggi').addClass('nasc');
}
else{
jQuery('.fixed-bar').removeClass('fix-bg');
jQuery('.vantaggi').removeClass('nasc');
}
});
},
viewCheck: function () {
if (window.innerWidth > 991) {
jQuery('.moveUp,.moveRight,.moveDown, .moveLeft, .moveLine, .hideme, .image-container, .highlight').viewportChecker({
classToAdd: 'visible', // Class to add to the elements when they are visible,
classToAddForFullView: 'full-visible', // Class to add when an item is completely visible in the viewport
repeat: false // Add the possibility to remove the class if the elements are not visible
});
} else {
jQuery('.highlight').viewportChecker({
classToAdd: 'visible', // Class to add to the elements when they are visible,
classToAddForFullView: 'full-visible', // Class to add when an item is completely visible in the viewport
repeat: false // Add the possibility to remove the class if the elements are not visible
});
}
},
showMe: function (elem) {
anim = jQuery(elem).attr('data-anim');
jQuery(elem).addClass('animated ' + anim);
jQuery(elem).animate({
opacity: 1
}, 300, function () {})
},
scrollAnimation: function () {
setTimeout(function () {
if (window.innerWidth > 991) {
jQuery('.hideme.visible').each(function (i) {
siteApp.showMe(this);
});
}
}, 150);
},
loadGoogleFont: function (url) {
var xhr = new XMLHttpRequest();
xhr.open('GET', url, true);
xhr.onreadystatechange = function () {
if (xhr.readyState == 4 && xhr.status == 200) {
var css = xhr.responseText;
css = css.replace(/}/g, 'font-display: swap; }');
var head = document.getElementsByTagName('head')[0];
var style = document.createElement('style');
style.appendChild(document.createTextNode(css));
head.appendChild(style);
}
};
xhr.send();
},
goToByScroll: function(param) {
bLazy.revalidate();
try {
jQuery('html, body').animate({
scrollTop: jQuery(param).offset().top - 100
}, 2000, "easeInOutQuad");
} catch (err) {}
}
}
window.addEventListener("load", function () {
siteApp.init();
siteApp.viewCheck();
siteApp.scrollAnimation();
if(jQuery('.box-giallo').length) {
siteApp.goToByScroll('.box-giallo');
}
});
jQuery(window).on('load resize', function () {
if (window.innerWidth > 991) {
jQuery('.adattHeight').each(function () {
$height = jQuery(this).next().height();
if ($height) {
jQuery(this).height($height);
} else if (!$height) {
$height = jQuery(this).next().height();
jQuery(this).height($height);
}
});
}
})
function frmcheck(frm) {
jQuery('#booking_gg').val(jQuery('#data_arrivo').val().substring(0, 2));
jQuery('#booking_mm').val(jQuery('#data_arrivo').val().substring(3, 5));
jQuery('#booking_aa').val(jQuery('#data_arrivo').val().substring(6, 10));
jQuery('#booking_ggf').val(jQuery('#data_partenza').val().substring(0, 2));
jQuery('#booking_mmf').val(jQuery('#data_partenza').val().substring(3, 5));
jQuery('#booking_aaf').val(jQuery('#data_partenza').val().substring(6, 10));
}
function goToByScroll(param) {
bLazy.revalidate();
try {
jQuery('html, body').animate({
scrollTop: jQuery(param).offset().top - 270
}, 2000, "easeInOutQuad");
} catch (err) {}
}
function createCookie(name, value, days) {
console.log('createCookie');
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) {
console.log('readCookie');
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for (var 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);
}