Zurich = {}; Zurich.Airport = {}; Zurich.Airport.UI = {}; Zurich.Airport.UI.Init = function (container) { var _container = container || window.document; Zurich.Airport.UI.menu.Init(_container); //Zurich.Airport.UI.searchBox.Init(_container); Zurich.Airport.UI.SVG.Init(_container); Zurich.Airport.UI.attachMenu.Init(_container); Zurich.Airport.UI.contrast.Init(_container); Zurich.Airport.UI.zoom.Init(_container); Zurich.Airport.UI.Validation.Init(_container); Zurich.Airport.UI.Address.Init(_container); Zurich.Airport.UI.Language.Init(_container); // 100vh mobile fix let vh = window.innerHeight * 0.01; document.documentElement.style.setProperty('--vh', `${vh}px`); window.addEventListener('resize', () => { let vh = window.innerHeight * 0.01; document.documentElement.style.setProperty('--vh', `${vh}px`); }); // var optionsMaskfCnpj = { onKeyPress: function (value, e, field, options) { var masks = ['000.000.000-000', '00.000.000/0000-00']; var mask = (value.replace(/\D/g, '').length > 11) ? masks[1] : masks[0]; $('[data-type=f_cnpj]').mask(mask, options); } }; $('[data-type=f_cnpj]').mask('000.000.000-000', optionsMaskfCnpj); $('#form-FinancialStatements').on('tcmcFormDefault:messageCreated', function () { $('#modal-access').modal('hide'); }); $('[data-apply-input-mask=true]', _container).each(function () { TCM.Framework.ApplyInputMask(this); }); }; $(document).ready(function () { Zurich.Airport.UI.Init(); }); Zurich.Airport.UI.menu = {}; Zurich.Airport.UI.menu.Init = function (container) { $('header', container).each(function () { $(this).find('.sites .wrapper').on('click', function () { $(this).parents('header').find('.menu').removeClass('active'); $(this).parents('header').find('.menu-wrapper').removeClass('active'); $(this).parents('header').find('.language .wrapper').removeClass('active'); $(this).toggleClass('active'); }); $(this).find('.menu, .menu-close').on('click', function () { var menuHeight = $('header').outerHeight(); $(this).parents('header').find('.sites .wrapper').removeClass('active'); $(this).parents('header').find('.language .wrapper').removeClass('active'); $(this).parents('header').find('.menu-wrapper').css('top', menuHeight + 10); $(this).toggleClass('active'); $(this).parents('header').find('.menu-wrapper').toggleClass('active'); $('.mobile-menu').toggleClass('active'); }); $(this).find('.language .wrapper').on('click', function () { $(this).parents('header').find('.menu').removeClass('active'); $(this).parents('header').find('.menu-wrapper').removeClass('active'); $(this).parents('header').find('.sites .wrapper').removeClass('active'); $(this).toggleClass('active'); }); }); $('body').on('click', function (event) { var $this = $(event.target); if (!$this.parents('.sites, .menu, .language').length) { $('header').find('.active').removeClass('active'); }; }); $('.mobile header', container).each(function () { }); //$('.mobile .icon-menu ').on('click', function () { // $('header').removeClass('active'); // $('header').toggleClass('opened'); //}); //$('.mobile .menu-nav li').on('click', function (event) { // event.preventDefault(); // $(this).toggleClass('active'); //}); //$('.mobile .menu-nav .submenu a').on('click', function (event) { // window.location.href = $(this).attr('href'); //}); //$('.mobile .plane').on('click', function (event) { // event.preventDefault(); // $('html, body').animate({ // scrollTop: $('.home-section-flight-').offset().top - 110 // }); //}); }; Zurich.Airport.UI.searchBox = {}; Zurich.Airport.UI.searchBox.Init = function (container) { $('.toolbar .search a', container).each(function () { $(this).on('click', function () { $(this).parent().toggleClass('active'); }); }); $('.toolbar .language, .toolbar .sites').hover( function () { $('.toolbar .search').removeClass('active'); } ); $('body').on('click', function (event) { var $this = $(event.target); if (!$this.parents('.search').length) $('.search').removeClass('active'); }); }; Zurich.Airport.UI.SVG = {}; Zurich.Airport.UI.SVG.Init = function (container) { $('img.svg', container).each(function () { var $img = $(this); var imgID = $img.attr('id'); var imgClass = $img.attr('class'); var imgURL = $img.attr('src'); $.get(imgURL, function (data) { var $svg = $(data).find('svg'); if (typeof imgID !== 'undefined') { $svg = $svg.attr('id', imgID); } if (typeof imgClass !== 'undefined') { $svg = $svg.attr('class', imgClass + ' replaced-svg'); } $svg = $svg.removeAttr('xmlns:a'); $img.replaceWith($svg); }, 'xml'); }); }; Zurich.Airport.UI.attachMenu = {}; Zurich.Airport.UI.attachMenu.Init = function (container) { $('header', container).each(function () { $(document).on('scroll', function (event) { menuPosition(); }); function menuPosition() { menuHeight = $('header').outerHeight(); scroll = $(window).scrollTop(); if (scroll > menuHeight) { $('header').addClass('attached'); } if (scroll == 0) { $('header').removeClass('attached'); } } }); }; Zurich.Airport.UI.contrast = {}; Zurich.Airport.UI.contrast.Init = function (container) { var $contrast = localStorage.getItem('Contrast'); if ($contrast == 'on') { $('body').addClass('theme-contrast'); } $('.contrast').on('click', function () { $contrast = localStorage.getItem('Contrast'); if ($contrast == 'on') { $('body').removeClass('theme-contrast'); localStorage.setItem('Contrast', 'off'); } else { $('body').addClass('theme-contrast'); localStorage.setItem('Contrast', 'on'); } return false; }); }; Zurich.Airport.UI.zoom = {}; Zurich.Airport.UI.zoom.Init = function (container) { var $step = localStorage.getItem('Step'), $minStep = 0, $maxStep = 2, $steps = [0, 1.15, 1.5]; if ($step > 0) { $('body').css('zoom', $steps[$step]); } $('.zoom a').on('click', function () { if ($(window).width() < 1600) { $maxStep = 1; } if ($(this).hasClass('increase') & $step < $maxStep) { $step++; $('body').css('zoom', $steps[$step]); } else if ($(this).hasClass('decrease') & $step > $minStep) { $step--; $('body').css('zoom', $steps[$step]); } localStorage.setItem('Step', $step); return false; }); }; Zurich.Airport.UI.Validation = {}; Zurich.Airport.UI.Validation.Init = function (container) { Zurich.Airport.UI.Validation.F_CNPJ(); }; Zurich.Airport.UI.Validation.F_CNPJ = function () { // validationF jQuery.validator.addMethod('validationf', function (value, element, params) { value = value.replace(/[^0-9]/gi, ''); if (value.length === 0) return true; if (value.length <= 11) return TCM.Framework.IsF(value); return true; }, ''); jQuery.validator.unobtrusive.adapters.add('validationf', function (options) { options.rules['validationf'] = true; options.messages['validationf'] = options.message; }); // validationCNPJ jQuery.validator.addMethod('validationcnpj', function (value, element, params) { value = value.replace(/[^0-9]/gi, ''); if (value.length === 0) return true; if (value.length > 11) return TCM.Framework.IsCNPJ(value); return true; }, ''); jQuery.validator.unobtrusive.adapters.add('validationcnpj', function (options) { options.rules['validationcnpj'] = true; options.messages['validationcnpj'] = options.message; }); }; Zurich.Airport.UI.Address = {}; Zurich.Airport.UI.Address.Init = function (container) { Zurich.Airport.UI.Address.FillAddress(); }; Zurich.Airport.UI.Address.FillAddress = function () { $('[name=ZipCode]').on('keyup', function (event) { if (!event.ctrlKey) { event.preventDefault(); var zipCode = $(this).val().replace(/\D/g, ''); if (zipCode.length == 8) { TCM.UI.Loading.Start(); TCM.Location.ZipCode.Get('brasil', zipCode, function (rt) { if (rt.Status) { if (rt.Data.Street) $('[name=Street]').val(rt.Data.Street).prop('disabled', true); if (rt.Data.District) $('[name=District]').val(rt.Data.District).prop('disabled', true); if (rt.Data.City.Name) $('[name=City]').val(rt.Data.City.Name).prop('disabled', true); if (rt.Data.Province.ShortName) $('[name=StateAcronym]').val(rt.Data.Province.ShortName).prop('disabled', true); } else { $('[name=Street]').val('').prop('disabled', false); $('[name=District]').val('').prop('disabled', false); $('[name=City]').val('').prop('disabled', false); $('[name=StateAcronym]').val('').prop('disabled', false); } TCM.UI.Loading.Stop(); }); } else { $('[name=Street]').val('').prop('disabled', false); $('[name=District]').val('').prop('disabled', false); $('[name=City]').val('').prop('disabled', false); $('[name=StateAcronym]').val('').prop('disabled', false); } } }); }; Zurich.Airport.UI.Language = {}; Zurich.Airport.UI.Language.Init = function (container) { var currentLanguage = Zurich.Airport.UI.Language.GetLanguage(); $('[data-language]').each(function () { var language = $(this).data('language'); if (language == currentLanguage) $(this).addClass('set'); }); }; Zurich.Airport.UI.Language.GetLanguage = function () { var host = window.location.host; if (host.startsWith('en')) return 'en'; else if (host.startsWith('es')) return 'es'; else if (host.startsWith('de')) return 'de'; return 'pt'; }; 1c153i