"use strict"; const App = function () { var handleInit = function () { /** APLICA AS CLASSES PELA QUANTIDADE DE BANNERS **************************************************************** **/ if ($(".small-banners .row > div").length) { var bannerAmount = $(".small-banners .row > div").length; var bannerWrap = $(".small-banners .row > div"); if (bannerAmount == 1) { bannerWrap.addClass("col-xs-12"); }; if (bannerAmount == 2) { bannerWrap.addClass("col-sm-6"); }; if (bannerAmount == 3) { bannerWrap.addClass("col-sm-4"); }; } /** AJUSTE DA ALTURA DAS THUMBS **************************************************************** **/ function adjustThumbContainerHeight() { var maxHeight = 0; $(".product-item-container").height(""); $(".product-item-container").each(function (i) { maxHeight = Math.max(maxHeight, $(this).height()); }).height(maxHeight); } // adjustThumbContainerHeight(); $(window).resize(function () { // adjustThumbContainerHeight(); }); $(".product-item-container").matchHeight(); /** BOTÃO VOLTAR AO TOPO **************************************************************** **/ var headerHeight = $(".header-container-ldt").height(); $(window).scroll(function () { if ($(this).scrollTop() > headerHeight) { $('#scrolltop-ldt').fadeIn(); } else { $('#scrolltop-ldt').fadeOut(); } }); $('#scrolltop-ldt').click(function () { $('body,html').animate({ scrollTop: 0 }, 1000); return false; }); /** MENU HORIZONTAL **************************************************************** **/ $("#nav-ldt li") .mouseover(function () { $(this).addClass("over"); }) .mouseout(function () { $(this).removeClass("over"); }); $("#nav-ldt li").has("ul").addClass("parent"); $("#nav-ldt .search-link").on("click", function (e) { e.preventDefault(); $(this).toggleClass("active"); $(".search-box-overlay").toggleClass("active"); }); /** PAGE MENU **************************************************************** **/ var SIDEBAR_MENU = $('#sidebar-menu'); var pathArray = window.location.pathname.split('/'); SIDEBAR_MENU.find('a[href="' + pathArray.pop() + '"]').closest('li').addClass('current-page'); /** MENU MOBILE **************************************************************** **/ $("#mobile-menu-ldt li").has("ul").addClass("parent"); $("#mobile-menu-ldt li.parent").append(""); $("#mobile-menu-ldt .mobile-opener").click(function () { $(this).prev().slideToggle(); $(this).toggleClass("active"); }); $(".mobile-menu-trigger-ldt,.mobile-nav-overlay-ldt,.menu-closer-ldt").click(function () { $("html").toggleClass("mobile-nav-opened-ldt"); }); /** LINKS MOBILE **************************************************************** **/ $(".mobile-account-ldt").click(function () { $(".mobile-account-content-ldt").slideToggle(); }); /** MENU FIXO **************************************************************** **/ var containerWidth = $(".header-ldt > .container").outerWidth(); var navHeight = $(".nav-container-ldt").height(); if (containerWidth >= 970) { $(window).scroll(function () { if ($(this).scrollTop() > headerHeight) { $('body').addClass("fixed-menu-ldt"); $(".page-ldt").css("margin-top", navHeight); } else { $('body').removeClass("fixed-menu-ldt"); $(".page-ldt").removeAttr("style"); } ; }); } /** MODAL NEWSLETTER **************************************************************** **/ if ($("#iluria-popup-container").length) { var newsletterImage = $("#iluria-popup-container .iluria-popup img").attr("src"); $("#iluria-popup-container .iluria-popup").css("background-image", "url('" + newsletterImage + "')"); } /** PLACEHOLDER CAMPO CÁLCULO DE CEP CARRINHO **************************************************************** **/ if ($("#cart-zip-container #zip").length) { $("#cart-zip-container #zip").attr("placeholder", "Digite aqui o seu CEP"); } if ($('.pagination').length) { $('.iluria-pagination-previous a').html(''); $('.iluria-pagination-next a').html(''); } }; var handleScrollSpeed = function () { jQuery.scrollSpeed(150, 800); }; var handleSlider = function () { var swiper = new Swiper('.swiper-container', { centeredSlides: true, effect: 'fade', fadeEffect: { crossFade: true }, speed: 1200, preloadImages: true, autoplay: { delay: 7500, disableOnInteraction: false, }, pagination: { el: '.swiper-pagination', clickable: true, }, navigation: { nextEl: '.swiper-button-next', prevEl: '.swiper-button-prev', }, on: { init: function () { } } }); }; var handleShipping = function () { var priceGlobal = ""; $("#product-shipping-message").fadeOut('fast'); $("#product-shipping-form").fadeOut('fast', function () { $(".shipping-sub-container table > tbody").html(''); $("#product-page-shipping-loader").fadeIn('fast'); }); var zip = $("#product-shipping-zip").val(); var productWebCode = $("#productWebCode").val(); $.ajax({ url: "https://www.entretantosatelier.com.br/inlineCart.do?command=calculateProductShipping", type: "post", data: { zip: zip, productWebCode: productWebCode, productPrice: priceGlobal.substr(3).replace(',', '.') }, success: function (data, status) { var shipping = jQuery.parseJSON(data); $("#product-page-shipping-loader").fadeOut(250, function () { $('.shipping-type').remove(); if (typeof shipping === "object" && shipping !== null) { if (shipping.PAC == null && shipping.SEDEX == null && shipping.eSEDEX == null && shipping.FIXED == null && shipping.PRODUCT_FIXED == null) { var error = "Não foi possível calcular o frete para o CEP informado ou o sistema dos Correios está indisponível."; $("#product-shipping-message").text(error); $("#product-shipping-message").show(); } else { for (var type in shipping) { if (shipping[type].value !== null) { var description = type; var value = null; var time = null; if (shipping[type].description != null && shipping[type].description != "undefined") { description = shipping[type].description; } if (shipping[type].value === "") { value = shipping[type].details; } else { value = "R$ " + shipping[type].value; } } if (shipping[type].time != null && shipping[type].time != 0) { // text += " - prazo após postagem: " + shipping[type].time + " dias úteis"; time = (shipping[type].time === 1) ? shipping[type].time + ' dia útil' : shipping[type].time + ' dias úteis'; } if (description !== null) { $(".shipping-sub-container table > tbody").append("" + description + "" + value + "" + time + ""); $("#product-shipping-message").show(); } } } } else { var error = "Não foi possível calcular o frete para o CEP informado ou o sistema dos Correios está indisponível."; $("#product-shipping-message").text(error); $("#product-shipping-message").fadeIn('fast'); } $("#product-shipping-form").fadeIn('fast'); }); }, error: function () { $("#product-page-shipping-loader").fadeOut('fast', function () { var error = "Não foi possível calcular o frete para o CEP informado ou o sistema dos Correios está indisponível."; $("#product-shipping-message").text(error); $("#product-shipping-message").fadeIn('fast'); $("#product-shipping-form").fadeIn('fast'); }); } }); }; var formValidation = function () { if ($(".form-validation").length > 0 && $.fn.validate) { /* $.validator.addMethod("check", function(value, element, field_match) { console.log($.validator.messages); return ((value.length === 0 && $(field_match).val().length === 0) || value.length>0); }, $.validator.format($.validator.messages.required)); */ $(".form-validation").each(function () { var form = $(this); var success = $('.alert-success', form); var formValidation = $(this).validate({ success: 'valid', errorClass: 'help-inline', validClass: 'form-success', errorElement: 'span', focusInvalid: false, ignore: [], rules: {}, messages: {}, highlight: function (element, errorClass, validClass) { $(element).css('borderColor', '#cc0000'); $(element).closest('.form-group').addClass('bad item'); }, unhighlight: function (element, errorClass, validClass) { $(element).closest('.form-group').removeClass('bad item').find('.help-inline').remove(); }, errorPlacement: function (error, element) { if (element.hasClass('custom-file') || element.hasClass('checkbox-type') || element.hasClass('language')) { element.closest('.option-group').after(error); } else if (element.is(':radio') || element.is(':checkbox')) { element.closest('.option-group').after(error); } else if (element.parent().hasClass('input-group')) { element.parent().after(error); } else { console.log('error', error); error.appendTo(element.closest('.form-group')); // error.insertAfter($(element).parent()); } }, invalidHandler: function (event, validator) { var errors = validator.numberOfInvalids(); // $('.alert').find('span.text').text('Verifique o preenchimento dos campos destacados.'); // $('.alert').removeClass('hide').fadeIn(); }, submitHandler: function () { console.log('send'); switch (form.attr('id')) { case 'newsletter-form': var email = form.find('#newsletter-email').val(); return App.subscribe(email); case 'product-shipping-form': return App.shipping(); case 'clientDataForm': return true; default: return false; } } }); }); } }; var _ajaxContactSubmit = function () { var form = $('form#f-contact'); var lang = form.find('select[name="language"]').val(); var dataPost = form.serialize(); $.ajax({ url: $(window).location, type: 'POST', data: dataPost, async: false, dataType: 'json', beforeSend: function () { $('.modal-dialog', '#modal-loading').html('\
\
\
\
\
\
\ '); $('#modal-loading').modal({ backdrop: 'static', keyboard: false }); }, success: function (response) { if (response.data.code == 200) { form[0].reset(); } $('#modal-loading').find('.modal-dialog').fadeOut('fast', function () { $(this).html('\ '); $(this).fadeIn('fast'); }); }, error: function () { $('#modal-loading').modal('hide'); }, complete: function () { } }); return false; }; var _ajaxProfileSubmit = function () { var form = $('form#f-profile'); var dataPost = form.serialize(); var lang = form.find('select[name="language"]').val(); console.log(lang); $.ajax({ url: $(window).location, type: 'POST', data: dataPost, async: false, dataType: 'json', beforeSend: function () { $('.modal-dialog', '#modal-loading').html('\
\
\
\
\
\
\ '); $('#modal-loading').modal({ backdrop: 'static', keyboard: false }); }, success: function (response) { if (parseInt(response.data.code) === 200) { //form[0].reset(); } $('#modal-loading').find('.modal-dialog').fadeOut('fast', function () { $(this).html('\ '); if (response.data.reload === true) { $('#modal-loading .act-reload').on('click', function () { location.reload(true); }); } $(this).fadeIn('fast'); }); }, error: function () { $('#modal-loading').modal('hide'); }, complete: function () { } }); return false; }; return { init: function () { handleInit(); handleSlider(); formValidation(); //handleScrollSpeed(); }, subscribe: function (email) { Iluria.clientAccount.subscribeNewsletter(email); }, shipping: function () { handleShipping(); } }; }(); App.init();