// Global variables let infoWindow, map, autocomplete, selectedItem = {}; const carrousel = '.owl-carousel-home'; const carrouselProducts = '.owl-carousel-products'; const mobileMenu = '#mobile-menu'; const nav = '.nav'; const navContainer = '.nav__container'; const navClass = 'nav--active'; const navNoScrollClass = 'nav--noscroll'; const askButton = '#lc-map-use'; const markerClose = '.map__close'; const homeCardSelector = 'options__side'; const cardSelector = 'products__card-side'; let activeNav = false; // Stores Map const mapId = 'lc-map'; const mapDialog = 'map__search-'; const mapDialogDiv = `.${mapDialog}result`; const mapDialogActive = `${mapDialog}result--active`; const mapMarkerIcon = 'https://mexico.littlecaesars.com//portals/0/Images/LittleCaesars/map-pin.png'; var userPosition = ''; var actualStore = ''; var directionsDisplay = ''; var directionsService = ''; $(window).on('load', () => { // Products hash if (window.location.hash) { $('html, body').animate({ scrollTop: $(window.location.hash).offset().top }, 'slow'); } }); // Resize $(window).on('resize', () => { $(mobileMenu).prop('checked', false); $(nav).removeClass(navClass); $('body').removeClass(navNoScrollClass); $('.carrousel__image').removeClass('animated bounceInDown slideInDown slideInUp fadeInDown fadeInLeft fadeInRight bounceInUp'); }); $(document).ready(() => { // Carrousel const homeCarousel = $(carrousel).owlCarousel({ nav: false, items: 1, loop: false, lazyLoad: true, autoplay: true, autoplayTimeout: 80000, autoplayHoverPause: true, onInitialize: function(){ $(carrousel).removeClass('loading'); } }); $(carrousel).trigger("to.owl.carousel", [0, 1]); // Change carousel homeCarousel.on('changed.owl.carousel', ({ page }) => { if (window.innerWidth <= 1000) return const { index } = page; $('.carrousel__image').removeClass('animated bounceInDown slideInDown slideInUp fadeInDown fadeInLeft fadeInRight bounceInUp'); switch (index) { case 0: $('.carrousel__image_lc').addClass('animated fadeInLeft'); $('.carrousel__image_title').addClass('animated slideInDown'); $('.carrousel__image_info').addClass('animated slideInUp'); break; /// Slide 0 case 1: $('.carrousel__image_cu4tro_pizza').addClass('animated slideInDown'); $('.carrousel__image_cu4tro_name').addClass('animated fadeInRight'); $('.carrousel__image_cu4tro_promo').addClass('animated slideInUp'); break; /// Slide 1 case 2: $('.carrousel__image-0--lc').addClass('animated bounceInDown'); $('.carrousel__image-0--title').addClass('animated slideInDown'); $('.carrousel__image-0--subtitle').addClass('animated slideInDown'); break; /// Slide 2 case 3: $('.carrousel__image-2--title').addClass('animated fadeInLeft'); $('.carrousel__image-2--subtitle').addClass('animated bounceInDown'); $('.carrousel__image-2--pizza').addClass('animated fadeInRight'); break; // Slide 3 } }); // Products carousel $(carrouselProducts).owlCarousel({ nav: false, items: 1, loop: true }); // Mobile navigations $(mobileMenu).change(function () { if ($(this).is(':checked')) { $(nav).addClass(navClass); activeNav = true; } else { $(nav).removeClass(navClass); $(nav).removeClass(navNoScrollClass); activeNav = false; } }); // Reset height of menu if height is too large if ($(window).height() > $(navContainer).height()) { $(nav).height($(window).height()); } // Mobile navigation prevent scroll $(window).on('scroll', () => { // const height = $(nav).height() - $(window).height(); const height = $(navContainer).height() - $(window).height(); if ($(window).scrollTop() > height && activeNav) { $(window).scrollTop(height); } }); // Home card flip $(`.${homeCardSelector}`).click(function () { $(this).parent().find(`.${homeCardSelector}--front`).toggleClass(`${homeCardSelector}--front-active`); $(this).parent().find(`.${homeCardSelector}--back`).toggleClass(`${homeCardSelector}--back-active`); }); // Products card flip $(`.${cardSelector}`).click(function (e) { e.preventDefault(); $(this).parent().find(`.${cardSelector}--front`).toggleClass(`${cardSelector}--front-active`); $(this).parent().find(`.${cardSelector}--back`).toggleClass(`${cardSelector}--back-active`); }); //Sucursales let sucursales = []; let cleanLocalities; let localities; let cleanSubLocalities; //$.getJSON('Portals/_default/skins/xcillion/js/sucursales5.json') $.getJSON('https://littlecaesarsapi.ktbo.mx/web/stores') .done(data => { sucursales = data; sucursales.sort(); let statesArray =[]; //clean states list of 'sucursales' sucursales.map(sucursal =>{ if(statesArray.indexOf(sucursal.state) == -1){ statesArray.push(sucursal.state); } }); statesArray.sort(); //Fill combobox states var html = ''; for(var i=0; i < statesArray.length; i++){ html += '