/* * Template Name: Unify - Responsive Bootstrap Template * Author: @htmlstream * Website: http://htmlstream.com */ var App = function () { // We extend jQuery by method hasAttr jQuery.fn.hasAttr = function(name) { return this.attr(name) !== undefined; }; // Fixed Header function handleHeader() { if (jQuery(window).scrollTop() > 100) { jQuery('.header-fixed .header-sticky').addClass('header-fixed-shrink'); } jQuery(window).scroll(function() { if (jQuery(window).scrollTop() > 100) { jQuery('.header-fixed .header-sticky').addClass('header-fixed-shrink'); } else { jQuery('.header-fixed .header-sticky').removeClass('header-fixed-shrink'); } }); } // Header Mega Menu function handleMegaMenu() { jQuery(document).on('click', '.mega-menu .dropdown-menu', function(e) { e.stopPropagation(); }) } // Search Box (Header) function handleSearch() { jQuery('.search').on("click", function () { if(jQuery('.search-btn').hasClass('fa-search')){ jQuery('.search-open').fadeIn(500); jQuery('.search-btn').removeClass('fa-search'); jQuery('.search-btn').addClass('fa-times'); } else { jQuery('.search-open').fadeOut(500); jQuery('.search-btn').addClass('fa-search'); jQuery('.search-btn').removeClass('fa-times'); } }); } // Search Box v1 (Header v5) function handleSearchV1() { jQuery('.header-v5 .search-button').click(function () { jQuery('.header-v5 .search-open').slideDown(); }); jQuery('.header-v5 .search-close').click(function () { jQuery('.header-v5 .search-open').slideUp(); }); jQuery(window).scroll(function(){ if(jQuery(this).scrollTop() > 1) jQuery('.header-v5 .search-open').fadeOut('fast'); }); } // Search Box v2 (Header v8) function handleSearchV2() { jQuery(".blog-topbar .search-btn").on("click", function() { if (jQuery(".topbar-search-block").hasClass("topbar-search-visible")) { jQuery(".topbar-search-block").slideUp(); jQuery(".topbar-search-block").removeClass("topbar-search-visible"); } else { jQuery(".topbar-search-block").slideDown(); jQuery(".topbar-search-block").addClass("topbar-search-visible"); } }); jQuery(".blog-topbar .search-close").on("click", function() { jQuery(".topbar-search-block").slideUp(); jQuery(".topbar-search-block").removeClass("topbar-search-visible"); }); jQuery(window).scroll(function() { var isiPhone = /iphone/i.test(navigator.userAgent.toLowerCase()); if (!isiPhone) { jQuery(".topbar-search-block").slideUp(); jQuery(".topbar-search-block").removeClass("topbar-search-visible"); } }); } // TopBar (Header v8) function handleTopBar() { jQuery(".topbar-toggler").on("click", function() { if (jQuery(".topbar-toggler").hasClass("topbar-list-visible")) { jQuery(".topbar-menu").slideUp(); jQuery(this).removeClass("topbar-list-visible"); } else { jQuery(".topbar-menu").slideDown(); jQuery(this).addClass("topbar-list-visible"); } }); } // TopBar SubMenu (Header v8) function handleTopBarSubMenu() { jQuery(".topbar-list > li").on("click", function(e) { if (jQuery(this).children("ul").hasClass("topbar-dropdown")) { if (jQuery(this).children("ul").hasClass("topbar-dropdown-visible")) { jQuery(this).children(".topbar-dropdown").slideUp(); jQuery(this).children(".topbar-dropdown").removeClass("topbar-dropdown-visible"); } else { jQuery(this).children(".topbar-dropdown").slideDown(); jQuery(this).children(".topbar-dropdown").addClass("topbar-dropdown-visible"); } } //e.preventDefault(); }); } // Sidebar Navigation Toggle function handleToggle() { jQuery('.list-toggle').on('click', function() { jQuery(this).toggleClass('active'); }); } // Equal Height Columns function handleEqualHeightColumns() { var EqualHeightColumns = function () { jQuery(".equal-height-columns").each(function() { heights = []; jQuery(".equal-height-column", this).each(function() { jQuery(this).removeAttr("style"); heights.push(jQuery(this).height()); // write column's heights to the array }); jQuery(".equal-height-column", this).height(Math.max.apply(Math, heights)); //find and set max }); } EqualHeightColumns(); jQuery(window).resize(function() { EqualHeightColumns(); }); jQuery(window).load(function() { EqualHeightColumns(); }); } // Equal Height Image-Columns function handleEqualHeightColumns__Images() { var EqualHeightColumns__Images = function () { jQuery('.equal-height-columns-v2').each(function() { var heights = []; jQuery('.equal-height-column-v2', this).each(function() { jQuery(this).removeAttr('style'); heights.push(jQuery(this).height()); // Write column's heights to the array }); jQuery('.equal-height-column-v2', this).height(Math.max.apply(Math, heights)); // Find and set max jQuery('.equal-height-column-v2', this).each(function() { if (jQuery(this).hasAttr('data-image-src')) { jQuery(this).css('background', 'url('+jQuery(this).attr('data-image-src')+') no-repeat scroll 50% 0 / cover'); } }); }); } jQuery('.equal-height-columns-v2').ready(function() { EqualHeightColumns__Images(); }); jQuery(window).resize(function() { EqualHeightColumns__Images(); }); } // Full Screen var handleFullscreen = function() { var WindowHeight = jQuery(window).height(); var HeaderHeight = 0; if (jQuery(document.body).hasClass("promo-padding-top")) { HeaderHeight = jQuery(".header").height(); } else { HeaderHeight = 0; } jQuery(".fullheight").css("height", WindowHeight - HeaderHeight); jQuery(window).resize(function() { var WindowHeight = jQuery(window).height(); jQuery(".fullheight").css("height", WindowHeight - HeaderHeight); }); } // Align Middle var handleValignMiddle = function() { jQuery(".valign__middle").each(function() { jQuery(this).css("padding-top", jQuery(this).parent().height() / 2 - jQuery(this).height() / 2); }); jQuery(window).resize(function() { jQuery(".valign__middle").each(function() { jQuery(this).css("padding-top", jQuery(this).parent().height() / 2 - jQuery(this).height() / 2); }); }); } // Hover Selector function handleHoverSelector() { jQuery('.hoverSelector').on('click', function(e) { if (jQuery(this).children('ul').hasClass('languages')) { if (jQuery(this).children('ul').hasClass('languages-visible')) { jQuery(this).children('.languages').slideUp(); jQuery(this).children('.languages').removeClass('languages-visible'); } else { jQuery(this).children('.languages').slideDown(); jQuery(this).children('.languages').addClass('languages-visible'); } } }); } // Bootstrap Tooltips and Popovers function handleBootstrap() { /* Bootstrap Carousel */ jQuery('.carousel').carousel({ interval: 15000, pause: 'hover' }); /* Tooltips */ jQuery('.tooltips').tooltip(); jQuery('.tooltips-show').tooltip('show'); jQuery('.tooltips-hide').tooltip('hide'); jQuery('.tooltips-toggle').tooltip('toggle'); jQuery('.tooltips-destroy').tooltip('destroy'); /* Popovers */ jQuery('.popovers').popover(); jQuery('.popovers-show').popover('show'); jQuery('.popovers-hide').popover('hide'); jQuery('.popovers-toggle').popover('toggle'); jQuery('.popovers-destroy').popover('destroy'); } return { init: function () { handleBootstrap(); handleSearch(); handleSearchV1(); handleSearchV2(); handleTopBar(); handleTopBarSubMenu(); handleToggle(); handleHeader(); handleMegaMenu(); handleHoverSelector(); handleFullscreen(); handleValignMiddle(); handleEqualHeightColumns(); handleEqualHeightColumns__Images(); }, // Counters initCounter: function () { jQuery('.counter').counterUp({ delay: 10, time: 1000 }); }, // Parallax Backgrounds initParallaxBg: function () { jQuery(window).load(function() { jQuery('.parallaxBg').parallax("50%", 0.2); jQuery('.parallaxBg1').parallax("50%", 0.4); }); }, // Scroll Bar initScrollBar: function () { jQuery('.mCustomScrollbar').mCustomScrollbar({ theme:"minimal", scrollInertia: 200, scrollEasing: "linear" }); }, // Sidebar Menu Dropdown initSidebarMenuDropdown: function() { function SidebarMenuDropdown() { jQuery('.header-v7 .dropdown-toggle').on('click', function() { jQuery('.header-v7 .dropdown-menu').stop(true, false).slideUp(); jQuery('.header-v7 .dropdown').removeClass('open'); if (jQuery(this).siblings('.dropdown-menu').is(":hidden") == true) { jQuery(this).siblings('.dropdown-menu').stop(true, false).slideDown(); jQuery(this).parents('.dropdown').addClass('open'); } }); } SidebarMenuDropdown(); }, // Animate Dropdown initAnimateDropdown: function() { function MenuMode() { jQuery('.dropdown').on('show.bs.dropdown', function() { jQuery(this).find('.dropdown-menu').first().stop(true, true).slideDown(); }); jQuery('.dropdown').on('hide.bs.dropdown', function() { jQuery(this).find('.dropdown-menu').first().stop(true, true).slideUp(); }); } jQuery(window).resize(function() { if (jQuery(window).width() > 768) { MenuMode(); } }); if (jQuery(window).width() > 768) { MenuMode(); } }, }; }();