(function ($) { "use strict"; var $document = $(document); function strpos( haystack, needle, offset ) { var i = (haystack + '').indexOf(needle, (offset || 0)); return i === -1 ? false : i } // Initialize global variable var LAHFB = { core : {} }; window.LAHFB = LAHFB; LAHFB.core.init = function(){ var $header_builder = $('#lastudio-header-builder'); // Navigation Current Menu $('.menu li.current-menu-item, .menu li.current_page_item, #side-nav li.current_page_item, .menu li.current-menu-ancestor, .menu li ul li ul li.current-menu-item , .hamburger-nav li.current-menu-item, .hamburger-nav li.current_page_item, .hamburger-nav li.current-menu-ancestor, .hamburger-nav li ul li ul li.current-menu-item, .full-menu li.current-menu-item, .full-menu li.current_page_item, .full-menu li.current-menu-ancestor, .full-menu li ul li ul li.current-menu-item ').addClass('current'); $('.menu li ul li:has(ul)').addClass('submenu'); // Social modal var header_social = $('.header-social-modal-wrap').html(); $('.header-social-modal-wrap').remove(); $(".main-slide-toggle").append(header_social); // Search modal Type 2 var header_search_type2 = $('.header-search-modal-wrap').html(); $('.header-search-modal-wrap').remove(); $(".main-slide-toggle").append(header_search_type2); // Search Full var $header_search_typefull = $('.header-search-full-wrap').first(); if($header_search_typefull.length){ $('.searchform-fly > p').replaceWith($header_search_typefull.find('.searchform-fly-text')); $('.searchform-fly > .search-form').replaceWith($header_search_typefull.find('.search-form')); $('.header-search-full-wrap').remove(); LA.core.InstanceSearch(); } // Social dropdown $('.lahfb-social .js-social_trigger_dropdown').on('click', function (e) { e.preventDefault(); $(this).siblings('.header-social-dropdown-wrap').fadeToggle('fast'); }); $('.header-social-dropdown-wrap a').on('click', function (e) { $('.header-social-dropdown-wrap').css({ display: 'none' }); }); // Social Toggles $('.lahfb-social .js-social_trigger_slide').on('click', function (e) { e.preventDefault(); console.log('ok'); if( $header_builder.find('.la-header-social').hasClass('opened') ) { $header_builder.find('.main-slide-toggle').slideUp('opened'); $header_builder.find('.la-header-social').removeClass('opened'); } else{ $header_builder.find('.main-slide-toggle').slideDown(240); $header_builder.find('#header-search-modal').slideUp(240); $header_builder.find('#header-social-modal').slideDown(240); $header_builder.find('.la-header-social').addClass('opened'); $header_builder.find('.la-header-search').removeClass('opened'); } }); $document.on('click', function (e) { if( $(e.target).hasClass('js-social_trigger_slide')){ return; } if ($header_builder.find('.la-header-social').hasClass('opened')) { $header_builder.find('.main-slide-toggle').slideUp('opened'); $header_builder.find('.la-header-social').removeClass('opened'); } }); // Search full $('.lahfb-cart > a').on('click', function (e) { if(!$(this).closest('.lahfb-cart').hasClass('force-display-on-mobile')){ if($(window).width() > 767){ e.preventDefault(); $('body').toggleClass('open-cart-aside'); } } else{ e.preventDefault(); $('body').toggleClass('open-cart-aside'); } }); $('.lahfb-search.lahfb-header-full > a').on('click', function (e) { e.preventDefault() $('body').addClass('open-search-form'); setTimeout(function(){ $('.searchform-fly .search-field').focus(); }, 600); }); // Search Toggles $('.lahfb-search .js-search_trigger_slide').on('click', function (e) { if ($header_builder.find('.la-header-search').hasClass('opened')) { $header_builder.find('.main-slide-toggle').slideUp('opened'); $header_builder.find('.la-header-search').removeClass('opened'); } else { $header_builder.find('.main-slide-toggle').slideDown(240); $header_builder.find('#header-social-modal').slideUp(240); $header_builder.find('#header-search-modal').slideDown(240); $header_builder.find('.la-header-search').addClass('opened'); $header_builder.find('.la-header-social').removeClass('opened'); $header_builder.find('#header-search-modal .search-field').focus(); } }); $document.on('click', function (e) { if( $(e.target).hasClass('js-search_trigger_slide') || $(e.target).closest('.js-search_trigger_slide').length ) { return; } if($('.lahfb-search .js-search_trigger_slide').length){ if ($header_builder.find('.la-header-search').hasClass('opened')) { $header_builder.find('.main-slide-toggle').slideUp('opened'); $header_builder.find('.la-header-search').removeClass('opened'); } } }); if ($.fn.magnificPopup) { // Popup map or any iframe $('.popup-youtube, .popup-vimeo, .popup-gmaps').magnificPopup({ disableOn: 700, type: 'iframe', mainClass: 'mfp-fade', removalDelay: 160, preloader: false, fixedContentPos: false }); // Inline popups $('.lahfb-modal-element').each(function (index, el) { $(this).magnificPopup({ type: 'inline', removalDelay: 500, callbacks: { beforeOpen: function () { this.st.mainClass = this.st.el.attr('data-effect'); } }, midClick: true }); }); } if ($.fn.niceSelect) { $('.la-polylang-switcher-dropdown select').niceSelect(); } if ($.fn.superfish) { $('.lahfb-area:not(.lahfb-vertical) .lahfb-nav-wrap:not(.has-megamenu) ul#nav').superfish({ delay: 300, hoverClass: 'la-menu-hover', animation: { opacity: "show", height: 'show' }, animationOut: { opacity: "hide", height: 'hide' }, easing: 'easeOutQuint', speed: 100, speedOut: 0, pathLevels: 2, }); } $('.lahfb-nav-wrap #nav li a').addClass('hcolorf'); // Hamburger Menu var $hamurgerMenuWrapClone = $('.toggle').find('#hamburger-menu-wrap').clone().remove(); if ($hamurgerMenuWrapClone.length > 0) { $('body').find('.la-hamuburger-bg').remove(); $hamurgerMenuWrapClone.appendTo('body'); } if ($('#hamburger-menu-wrap').hasClass('toggle-right')) { $('body').addClass('la-body lahmb-right'); } else if ($('#hamburger-menu-wrap').hasClass('toggle-left')) { $('body').addClass('la-body lahmb-left'); } //Hamburger Nicescroll $('.hamburger-menu-main').niceScroll({ scrollbarid: 'lahfb-hamburger-scroll', cursorwidth: "5px", autohidemode: true }); $('.la-body').find('.lahfb-hamburger-menu.toggle').on('click', 'a.lahfb-icon-element', function (event) { event.preventDefault(); if ($(this).closest('.lahfb-hamburger-menu.toggle').hasClass('is-open')) { $(this).closest('.lahfb-hamburger-menu.toggle').removeClass('is-open'); $(this).closest('.la-body').find('#hamburger-menu-wrap').removeClass('hm-open'); $(this).closest('.la-body').removeClass('is-open'); $('.hamburger-menu-main').getNiceScroll().resize(); } else { $(this).closest('.lahfb-hamburger-menu.toggle').addClass('is-open'); $(this).closest('.la-body').find('#hamburger-menu-wrap').addClass('hm-open'); $(this).closest('.la-body').addClass('is-open'); $('.hamburger-menu-main').getNiceScroll().resize(); } }); $('#hamburger-nav.toggle-menu').find('li').each(function () { var $list_item = $(this); if ($list_item.children('ul').length) { $list_item.children('a').append(''); } $('> a > .hamburger-nav-icon', $list_item).on('click', function (e) { e.preventDefault(); var $that = $(this); if( $that.hasClass('active') ){ $that.removeClass('active fa-angle-up').addClass('fa-angle-down'); $('>ul', $list_item).stop().slideUp(350); } else{ $that.removeClass('fa-angle-down').addClass('fa-angle-up active'); $('>ul', $list_item).stop().slideDown(350); } }) }); //Full hamburger Menu $(document) .on('click', '.lahfb-hamburger-menu.full .lahfb-icon-element.close-button', function (e) { $(this).siblings('.la-hamburger-wrap').addClass('open-menu'); $(this).removeClass('close-button').addClass('open-button').find('.hamburger-icon').addClass('open'); }) .on('click', '.lahfb-hamburger-menu.full .lahfb-icon-element.open-button', function (e) { $(this).siblings('.la-hamburger-wrap').removeClass('open-menu'); $(this).removeClass('open-button').addClass('close-button').find('.hamburger-icon').removeClass('open'); }); $('.full-menu').find('li').each(function () { var $list_item = $(this); if ($list_item.children('ul').length) { $list_item.children('a').append(''); } $('> a > .hamburger-nav-icon', $list_item).on('click', function (e) { e.preventDefault(); var $that = $(this); if( $that.hasClass('active') ){ $that.removeClass('active fa-angle-up').addClass('fa-angle-down'); $('>ul', $list_item).stop().slideUp(350); } else{ $that.removeClass('fa-angle-down').addClass('fa-angle-up active'); $('>ul', $list_item).stop().slideDown(350); } }) }); $(document).on('click', function (e) { var target = $(e.target); if (e.target.id == 'la-hamburger-icon' || target.closest('#la-hamburger-icon').length) return; var $this = $('body'); if ($this.hasClass('is-open')) { $this.find('.lahfb-hamburger-menu.toggle').removeClass('is-open'); $this.removeClass('is-open'); } }); $(document).on('click', '#hamburger-menu-wrap', function (e) { e.stopPropagation(); }); // Topbar search form $('.top-search-form-icon').on('click', function () { $('.top-search-form-box').addClass('show-sbox'); $('#top-search-box').focus(); }); $(document).on('click', function (ev) { var myID = ev.target.id; if ((myID != 'top-searchbox-icon') && myID != 'top-search-box') { $('.top-search-form-box').removeClass('show-sbox'); } }); // Responsive Menu $('.lahfb-responsive-menu-icon-wrap').on('click', function () { var $toggleMenuIcon = $(this), uniqid = $toggleMenuIcon.data('uniqid'), $responsiveMenu = $('.lahfb-responsive-menu-wrap[data-uniqid="' + uniqid + '"]'), $closeIcon = $responsiveMenu.find('.close-responsive-nav'); if ($responsiveMenu.hasClass('open') === false) { $toggleMenuIcon.addClass('open-icon-wrap').children().addClass('open'); $closeIcon.addClass('open-icon-wrap').children().addClass('open'); $responsiveMenu.animate({'left': 0}, 350).addClass('open'); } else { $toggleMenuIcon.removeClass('open-icon-wrap').children().removeClass('open'); $closeIcon.removeClass('open-icon-wrap').children().removeClass('open'); $responsiveMenu.animate({'left': -265}, 350).removeClass('open'); } }); $('.lahfb-responsive-menu-wrap').each(function () { var $this = $(this), uniqid = $this.data('uniqid'), $responsiveMenu = $this.clone(), $closeIcon = $responsiveMenu.find('.close-responsive-nav'), $toggleMenuIcon = $('.lahfb-responsive-menu-icon-wrap[data-uniqid="' + uniqid + '"]'); // append responsive menu to lastudio header builder wrap $this.remove(); $('#lastudio-header-builder').append($responsiveMenu); // add arrow down to parent menus $responsiveMenu.find('li').each(function () { var $list_item = $(this); if ($list_item.children('ul').length) { $list_item.children('a').append(''); } $('> a > .respo-nav-icon', $list_item).on('click', function (e) { e.preventDefault(); var $that = $(this); if( $that.hasClass('active') ){ $that.removeClass('active fa-angle-up').addClass('fa-angle-down'); $('>ul', $list_item).stop().slideUp(350); } else{ $that.removeClass('fa-angle-down').addClass('fa-angle-up active'); $('>ul', $list_item).stop().slideDown(350); } }); }); // close responsive menu $closeIcon.on('click', function () { if ($toggleMenuIcon.hasClass('open-icon-wrap')) { $toggleMenuIcon.removeClass('open-icon-wrap').children().removeClass('open'); $closeIcon.removeClass('open-icon-wrap').children().removeClass('open'); } else { $toggleMenuIcon.addClass('open-icon-wrap').children().addClass('open'); $closeIcon.addClass('open-icon-wrap').children().addClass('open'); } if ($responsiveMenu.hasClass('open') === true) { $responsiveMenu.animate({'left': -265}, 350).removeClass('open'); } }); }); // Login Dropdown $('.lahfb-login').each(function (index, el) { $(this).find('.js--trigger-login-dropdown-icon').on('click', function (event) { $(this).siblings('#w-login').fadeToggle('fast', function () { if ($("#w-login").is(":visible")) { $(document).on('click', function (e) { var target = $(e.target); if (target.parents('.lahfb-login').length) return; $("#w-login").css({ display: 'none', }); }); } }); }); }); $('#loginform input[type="text"]').attr('placeholder', 'Username or Email'); $('#loginform input[type="password"]').attr('placeholder', 'Password'); // Contact Dropdown $('.lahfb-contact').each(function (index, el) { $(this).find('.js--trigger-contact-dropdown').on('click', function (event) { $(this).siblings('.la-contact-form-wrap').fadeToggle('fast', function () { if ($(".la-contact-form-wrap").is(":visible")) { $(document).on('click', function (e) { var target = $(e.target); if (target.parents('.lahfb-contact').length) return; $(".la-contact-form-wrap").css({ display: 'none', }); }); } }); }); }); // Icon Menu Dropdown $('.lahfb-icon-menu-wrap').each(function (index, el) { $(this).find('#la-icon-menu-trigger').on('click', function (event) { $(this).siblings('.lahfb-icon-menu-content').fadeToggle('fast', function () { if ($(".lahfb-icon-menu-content").is(":visible")) { $(document).on('click', function (e) { var target = $(e.target); if (target.parents('.lahfb-icon-menu-wrap').length) return; $(".lahfb-icon-menu-content").css({ display: 'none', }); }); } }); }); }); $('.la-header-wishlist-content-wrap').find('.la-wishlist-total').addClass('colorf'); /* Profile Socials */ $('.lahfb-profile-socials-text').hover(function () { $(this).closest('.lahfb-profile-socials-wrap').find('.lahfb-profile-socials-icons').removeClass('profile-socials-hide').addClass('profile-socials-show'); }, function () { $(this).closest('.lahfb-profile-socials-wrap').find('.lahfb-profile-socials-icons').removeClass('profile-socials-show').addClass('profile-socials-hide'); }); /* Vertical Header */ // #wrap Class vertical if ($('.lahfb-desktop-view').find('.lahfb-row1-area').hasClass('lahfb-vertical-toggle')) { $('#page').addClass('lahfb-header-vertical-toggle'); } else if ($('.lahfb-desktop-view').find('.lahfb-row1-area').hasClass('lahfb-vertical')) { $('#page').addClass('lahfb-header-vertical-no-toggle'); } $(window).on('load', function (e) { setTimeout(function () { $(window).trigger('resize'); }, 100) }); // Toggle Vertical $document.on('click', '.vertical-menu-icon-foursome', function (event) { event.preventDefault(); var $vertical_wrap = $('.lahfb-vertical.lahfb-vertical-toggle'); var $vertical_contact_wrap = $('.lahfb-vertical-contact-form-wrap'); if ($vertical_wrap.hasClass('is-open')) { $vertical_wrap.removeClass('is-open'); $vertical_wrap.removeClass('lahfb-open-with-delay'); $(this).siblings('.lahfb-vertical-logo-wrap,.vertical-contact-icon,.vertical-fullscreen-icon').removeClass('is-open'); $(this).removeClass('is-open'); } else { if ($vertical_contact_wrap.hasClass('is-open')) { $vertical_contact_wrap.removeClass('is-open'); $vertical_wrap.addClass('lahfb-open-with-delay'); $('.vertical-contact-icon i').removeClass('is-open colorf'); } $vertical_wrap.addClass('is-open'); $(this).siblings('.lahfb-vertical-logo-wrap,.vertical-contact-icon,.vertical-fullscreen-icon').addClass('is-open'); $(this).addClass('is-open'); } }) $document.on('click', '.vertical-menu-icon-triad', function (event) { event.preventDefault(); // Toggle Vertical var $vertical_wrap = $('.lahfb-vertical.lahfb-vertical-toggle'); var $vertical_contact_wrap = $('.lahfb-vertical-contact-form-wrap'); if ($vertical_wrap.hasClass('is-open')) { $vertical_wrap.removeClass('is-open'); $vertical_wrap.removeClass('lahfb-open-with-delay'); $(this).removeClass('is-open'); } else { if ($vertical_contact_wrap.hasClass('is-open')) { $vertical_contact_wrap.removeClass('is-open'); $vertical_wrap.addClass('lahfb-open-with-delay'); $('.vertical-contact-icon i').removeClass('is-open colorf'); } $vertical_wrap.addClass('is-open'); $(this).addClass('is-open'); } }); // Vertical Contact Icon $document.on('click', '.vertical-contact-icon i', function (event) { event.preventDefault(); var $vertical_wrap = $('.lahfb-vertical.lahfb-vertical-toggle'); var $vertical_contact_wrap = $('.lahfb-vertical-contact-form-wrap'); if ($vertical_contact_wrap.hasClass('is-open')) { $vertical_contact_wrap.removeClass('is-open'); $(this).removeClass('is-open colorf'); } else { if ($vertical_wrap.hasClass('is-open')) { $vertical_wrap.removeClass('is-open'); $vertical_contact_wrap.addClass('lahfb-open-with-delay'); $('.vertical-menu-icon-triad').removeClass('is-open colorf'); } $vertical_contact_wrap.addClass('is-open'); $(this).addClass('is-open colorf'); } }); // Vertical Nicescroll $('.lahfb-vertical-contact-form-wrap').niceScroll({ scrollbarid: 'lahfb-vertical-cf-scroll', cursorwidth: "5px", autohidemode: "hidden", }); $('.lahfb-vertical').find('.lahfb-content-wrap').niceScroll({ scrollbarid: 'lahfb-vertical-menu-scroll', cursorwidth: "5px", autohidemode: true }); // Fullscreen Icon $document.on('click', '.vertical-fullscreen-icon i', function (e) { e.preventDefault(); var $parent = $(this).closest('.vertical-fullscreen-icon'); if($parent.hasClass('is-open')){ $parent.removeClass('is-open'); $.fullscreen.exit(); } else{ var site_document = document.documentElement, site_screen = site_document.requestFullScreen || site_document.webkitRequestFullScreen || site_document.mozRequestFullScreen || site_document.msRequestFullscreen; if (typeof site_screen != "undefined" && site_screen) { site_screen.call(site_document); } else if (typeof window.ActiveXObject != "undefined") { // for Internet Explorer var wscript = new ActiveXObject("WScript.Shell"); if (wscript != null) { wscript.SendKeys("{F11}"); } } } }); // Vertical Menu $('.lahfb-vertical').find('#nav').find('li').each(function () { var $list_item = $(this); if ($list_item.children('ul').length) { $list_item.children('a').removeClass('sf-with-ul').append(''); } $('> a > .lahfb-vertical-nav-icon', $list_item).on('click', function (e) { e.preventDefault(); var $that = $(this); if( $that.hasClass('active') ){ $that.removeClass('active fa-angle-up').addClass('fa-angle-down'); $('>ul', $list_item).stop().slideUp(350); } else{ $that.removeClass('fa-angle-down').addClass('fa-angle-up active'); $('>ul', $list_item).stop().slideDown(350); } }); }); // Buddypress user messages $('.la-bp-messages').find('#message-threads').children('li').each(function (index, el) { var wrap_element = $(this).data('count'); }); }; LAHFB.core.reloadAllEvents = function(){ LAHFB.core.init(); console.log('ok -- reloadAllEvents!'); }; $(function () { LAHFB.core.init(); }); })(jQuery);