(function($){
"use strict";
/* ---------------------------------------------------------------------------
* Global vars
* --------------------------------------------------------------------------- */
var scrollticker; // Scroll Timer | don't need to set this in every scroll
var rtl = $('body').hasClass('rtl');
var simple = $('body').hasClass('style-simple');
var top_bar_top = '61px';
var header_H = 0;
var mobile_init_W = ( window.mfn.mobile_init ) ? window.mfn.mobile_init : 1240;
var pretty = false;
/* ---------------------------------------------------------------------------
* prettyPhoto
* --------------------------------------------------------------------------- */
if( ! window.mfn_prettyphoto.disable ){
if( ! ( window.mfn_prettyphoto.disableMobile && ( $(window).width() < 768 ) ) ){
pretty = {
default_width : window.mfn_prettyphoto.width ? window.mfn_prettyphoto.width : 500,
default_height : window.mfn_prettyphoto.height ? window.mfn_prettyphoto.height : 344,
show_title : window.mfn_prettyphoto.title ? window.mfn_prettyphoto.title : false,
theme : window.mfn_prettyphoto.style ? window.mfn_prettyphoto.style : 'pp_default',
deeplinking : false,
social_tools : false
};
}
}
/* ---------------------------------------------------------------------------
* Admin Bar & WooCommerce Store Notice
* --------------------------------------------------------------------------- */
function adminBarH(){
var height = 0;
// WP adminbar
if( $( 'body' ).hasClass( 'admin-bar' ) ){
height += $( '#wpadminbar' ).innerHeight();
}
// WC demo store
if( $( 'body' ).hasClass( 'woocommerce-demo-store' ) ){
height += $( 'body > p.demo_store' ).innerHeight();
}
return height;
}
/* ---------------------------------------------------------------------------
* Header | Sticky
* --------------------------------------------------------------------------- */
function mfn_sticky(){
if( $( 'body' ).hasClass( 'sticky-header' ) ){
if( ! ( $( 'body' ).hasClass( 'header-creative' ) && $(window).width() >= 768 ) ){
var start_y = header_H;
var window_y = $(window).scrollTop();
if( window_y > start_y ){
if( ! ( $( '#Top_bar' ).hasClass( 'is-sticky' ) ) ){
$( '.header_placeholder' ).css( 'height', $( '#Top_bar' ).height() );
$( '#Top_bar' )
.addClass( 'is-sticky' )
.css( 'top', -60 )
.animate({
'top': adminBarH() + 'px'
}, 300 );
// Header width
mfn_header();
}
} else {
if( $( '#Top_bar' ).hasClass( 'is-sticky' ) ){
$( '.header_placeholder' ).css( 'height', 0 );
$( '#Top_bar' )
.removeClass( 'is-sticky' )
.css( 'top', top_bar_top );
// Header width
mfn_header();
}
}
mfn_mobile_sticky();
}
}
}
/* ---------------------------------------------------------------------------
* Header | Sticky | Height
* --------------------------------------------------------------------------- */
function mfn_stickyH(){
if( $('body').hasClass( 'header-below' ) ){
// header below slider
header_H = $( '.mfn-main-slider' ).innerHeight() + $( '#Top_bar' ).innerHeight();
} else {
// default
header_H = $( '#Top_bar' ).innerHeight() + $( '#Action_bar' ).innerHeight();
}
}
/* ---------------------------------------------------------------------------
* Header | Sticky | Mobile
* --------------------------------------------------------------------------- */
function mfn_mobile_sticky(){
if( $( 'body' ).hasClass( 'mobile-sticky' ) && ( $( window ).width() < 768 ) ){
var windowH = $(window).height();
var offset = adminBarH() + $( '#Top_bar .logo' ).height();
if( ( ! $( '#Top_bar' ).hasClass( 'is-sticky' ) ) && $( '#Action_bar' ).is( ':visible' ) ){
offset += $( '#Action_bar' ).height();
}
var menuH = windowH - offset;
if( menuH < 176 ){
menuH = 176;
}
$( '#Top_bar #menu' ).css( 'max-height', menuH + 'px' );
}
}
/* ---------------------------------------------------------------------------
* Header | Top bar left | Width
* --------------------------------------------------------------------------- */
function mfn_header(){
var rightW = $('.top_bar_right').innerWidth();
if( rightW && ! $('body').hasClass('header-plain') ){
rightW += 10;
}
var parentW = $('#Top_bar .one').innerWidth();
var leftW = parentW - rightW;
$('.top_bar_left, .menu > li > ul.mfn-megamenu').css( 'width', leftW );
}
/* ---------------------------------------------------------------------------
* FIX | Header | Sticky | Height
* --------------------------------------------------------------------------- */
function fixStickyHeaderH(){
var stickyH = 0;
// FIX | sticky top bar height
var topBar = $( '.sticky-header #Top_bar' );
if( topBar.hasClass( 'is-sticky' ) ){
stickyH = $( '.sticky-header #Top_bar' ).innerHeight();
} else {
topBar.addClass( 'is-sticky' );
stickyH = $( '.sticky-header #Top_bar' ).innerHeight();
topBar.removeClass( 'is-sticky' );
}
// FIX | responsive
if( $( window ).width() < mobile_init_W ){
if( $(window).width() < 768 ){
// mobile
if( ! $( 'body' ).hasClass( 'mobile-sticky' ) ){
stickyH = 0;
}
} else {
// tablet
if( ! $( 'body' ).hasClass( 'tablet-sticky' ) ){
stickyH = 0;
}
}
}
return stickyH;
}
/* ---------------------------------------------------------------------------
* Sidebar | Height
* --------------------------------------------------------------------------- */
function mfn_sidebar(){
if( $('.with_aside .four.columns').length ){
var maxH = $('#Content .sections_group').outerHeight();
$('.with_aside .four.columns .widget-area').each(function(){
$(this).css( 'min-height', 0 );
if( $(this).height() > maxH ){
maxH = $(this).height();
}
});
$('.with_aside .four.columns .widget-area').css( 'min-height', maxH + 'px' );
}
}
/* ---------------------------------------------------------------------------
* Section | Full Screen
* --------------------------------------------------------------------------- */
function mfn_sectionH(){
var windowH = $(window).height();
// FIX | next/prev section
var offset = 0;
if( $( '.section.full-screen:not(.hide-desktop)' ).length > 1 ){
offset = 5;
}
$( '.section.full-screen' ).each( function(){
var section = $( this );
var wrapper = $( '.section_wrapper', section );
section
.css( 'padding', 0 )
.css( 'min-height', windowH + offset );
var padding = ( windowH + offset - wrapper.height() ) / 2;
if( padding < 50 ) padding = 50;
wrapper
.css( 'padding-top', padding + 10 ) // 20 = column margin-bottom / 2
.css( 'padding-bottom', padding - 10 );
});
}
/* ---------------------------------------------------------------------------
* Equal Height | Wraps
* --------------------------------------------------------------------------- */
function mfn_equalH_wrap(){
$('.section.equal-height-wrap .section_wrapper').each(function(){
var maxH = 0;
$('> .wrap', $(this) ).each(function(){
$(this).css( 'height', 'auto' );
if( $(this).innerHeight() > maxH ){
maxH = $(this).innerHeight();
}
});
$('> .wrap', $(this) ).css( 'height', maxH + 'px' );
});
}
/* ---------------------------------------------------------------------------
* Equal Height | Items
* --------------------------------------------------------------------------- */
function mfn_equalH(){
$('.section.equal-height .mcb-wrap-inner').each(function(){
var maxH = 0;
$('> .column', $(this) ).each(function(){
$(this).css( 'height', 'auto' );
if( $(this).height() > maxH ){
maxH = $(this).height();
}
});
$('> .column', $(this) ).css( 'height', maxH + 'px' );
});
}
/* ---------------------------------------------------------------------------
* Into | Full Screen
* --------------------------------------------------------------------------- */
function mfn_introH(){
var windowH = $(window).height() - $('#Header_wrapper').height() - adminBarH();
$('#Intro.full-screen').each(function(){
var el = $(this);
var inner = $( '.intro-inner', el );
el.css( 'padding', 0 ).css( 'min-height', windowH );
var padding = ( windowH - inner.height() ) / 2;
inner.css( 'padding-top', padding ).css( 'padding-bottom', padding );
});
}
/* ---------------------------------------------------------------------------
* Footer | Sliding | Height
* --------------------------------------------------------------------------- */
function mfn_footer(){
// Fixed, Sliding
if( $('.footer-fixed #Footer, .footer-sliding #Footer').length ){
var footerH = $('#Footer').height() - 1;
$('#Content').css( 'margin-bottom', footerH + 'px' );
}
// Stick to bottom
if( $('.footer-stick #Footer').length ){
var headerFooterH = $('#Header_wrapper').height() + $('#Footer').height();
var documentH = $(document).height() - adminBarH();
if( ( documentH <= $(window).height() ) && ( headerFooterH <= $(window).height() ) ){
$('#Footer').addClass('is-sticky');
} else {
$('#Footer').removeClass('is-sticky');
}
}
}
/* ---------------------------------------------------------------------------
* Back To Top | Sticky / Show on scroll
* --------------------------------------------------------------------------- */
function backToTopSticky(){
if( $('#back_to_top.sticky.scroll').length ){
var el = $('#back_to_top.sticky.scroll');
// Clear Timeout if one is pending
if( scrollticker ){
window.clearTimeout(scrollticker);
scrollticker = null;
}
el.addClass('focus');
// Set Timeout
scrollticker = window.setTimeout(function(){
el.removeClass('focus');
}, 1500); // Timeout in msec
}
}
/* ---------------------------------------------------------------------------
* niceScroll | Padding right fix for short content
* --------------------------------------------------------------------------- */
function niceScrollFix(){
var el = $('body > .nicescroll-rails');
if( el.length ){
if( el.is(":visible") ){
$('body').addClass('nice-scroll');
} else {
$('body').removeClass('nice-scroll');
}
}
}
/* ---------------------------------------------------------------------------
* # Hash smooth navigation
* --------------------------------------------------------------------------- */
function hashNav(){
// # window.location.hash
var hash = window.location.hash;
if( hash ){
// FIX | Master Slider
if( hash.indexOf( "&" ) > -1 || hash.indexOf( "/" ) > -1 ){
return false;
}
// Contact Form 7 in popup
if( hash.indexOf( "wpcf7" ) > -1 ){
cf7popup( hash );
}
if( $( hash ).length ){
var tabsHeaderH = $( hash ).siblings( '.ui-tabs-nav' ).innerHeight();
$( 'html, body' ).animate({
scrollTop: $( hash ).offset().top - fixStickyHeaderH() - tabsHeaderH - adminBarH()
}, 500 );
}
}
}
/* ---------------------------------------------------------------------------
* One Page | Scroll Active
* --------------------------------------------------------------------------- */
function onePageActive(){
if( $('body').hasClass('one-page') ){
var stickyH = $('.sticky-header #Top_bar').innerHeight();
var windowT = $(window).scrollTop();
var start = windowT + stickyH + adminBarH() + 1;
var first = false;
$('div[data-id]').each(function(){
if( $(this).visible( true ) ){
if( !first ){
first = $(this);
} else if( ( $(this).offset().top < start ) && ( $(this).offset().top > first.offset().top ) ) {
first = $(this);
}
}
if( first ){
var newActive = first.attr('data-id');
var active = '[data-hash="'+ newActive +'"]';
if( newActive ){
var menu = $('#menu');
menu.find('li').removeClass('current-menu-item current-menu-parent current-menu-ancestor current_page_item current_page_parent current_page_ancestor');
$( active, menu )
.closest('li').addClass('current-menu-item')
.closest('.menu > li').addClass('current-menu-item');
}
}
});
}
}
/* ---------------------------------------------------------------------------
* Contact Form 7 | Popup
* --------------------------------------------------------------------------- */
function cf7popup( hash ){
if( hash && $( hash ).length ){
var id = $( hash ).closest('.popup-content').attr('id');
$('a.popup-link[href="#'+ id +'"]:not(.once)')
.addClass('once')
.click();
}
}
/* ---------------------------------------------------------------------------
* Zoom Box | Vertical Align
* --------------------------------------------------------------------------- */
function zoomBoxVerticalAlign(){
$('.zoom_box').each(function(){
var el = $(this);
var elH = el.height();
var desc = el.find('.desc_wrap');
var descH = desc.height();
var padding = ( elH - descH ) / 2;
desc.css( 'padding-top', padding +'px' );
});
}
/* --------------------------------------------------------------------------------------------------------------------------
*
* $(document).ready
*
* ----------------------------------------------------------------------------------------------------------------------- */
$(document).ready(function(){
/* ---------------------------------------------------------------------------
* Top Bar
* --------------------------------------------------------------------------- */
$( '#Top_bar' ).removeClass( 'loading' );
top_bar_top = parseInt( $('#Top_bar').css('top'), 10 );
if( top_bar_top < 0 ) top_bar_top = 61;
top_bar_top = top_bar_top + 'px';
/* ---------------------------------------------------------------------------
* Menu | Overlay
* --------------------------------------------------------------------------- */
$( '.overlay-menu-toggle' ).click( function(e){
e.preventDefault();
$(this).toggleClass('focus');
$( '#Overlay' ).stop(true,true).fadeToggle(500);
var menuH = $('#Overlay nav').height() / 2;
$( '#Overlay nav' ).css( 'margin-top', '-' + menuH + 'px' );
});
/* ---------------------------------------------------------------------------
* Menu | Responsive | button
* --------------------------------------------------------------------------- */
$( '.responsive-menu-toggle' ).on( 'click', function(e){
e.preventDefault();
var el = $(this);
var menu = $('#Top_bar #menu');
var menuWrap = menu.closest('.top_bar_left');
el.toggleClass('active');
// sticky menu button
if( el.hasClass('is-sticky') && el.hasClass('active') && ( $(window).width() < 768 ) ){
var top = 0;
if( menuWrap.length ){
top = menuWrap.offset().top - adminBarH();
}
$('body,html').animate({
scrollTop: top
}, 200);
}
menu.stop(true,true).slideToggle(200);
});
/* ---------------------------------------------------------------------------
* Menu | Responsive | Side Slide
* --------------------------------------------------------------------------- */
function sideSlide(){
var slide = $( '#Side_slide' );
var overlay = $( '#body_overlay' );
var ss_mobile_init_W = mobile_init_W;
var pos = 'right';
// constructor ----------
var constructor = function(){
if( ! slide.hasClass( 'enabled' ) ){
$( 'nav#menu' ).detach().appendTo( '#Side_slide .menu_wrapper' );
slide.addClass( 'enabled' );
}
};
// destructor ----------
var destructor = function(){
if( slide.hasClass( 'enabled' ) ){
close();
$( 'nav#menu' ).detach().prependTo( '#Top_bar .menu_wrapper' );
slide.removeClass( 'enabled' );
}
};
// reload ----------
var reload = function(){
if( ( $(window).width() < ss_mobile_init_W ) ){
constructor();
} else {
destructor();
}
};
// init ----------
var init = function(){
if( slide.hasClass( 'left' ) ){
pos = 'left';
}
if( $( 'body' ).hasClass( 'header-simple' ) ){
ss_mobile_init_W = 9999;
}
reload();
};
// reset to default ----------
var reset = function( time ){
$( '.lang-active.active', slide ).removeClass('active').children('i').attr('class','icon-down-open-mini');
$( '.lang-wrapper', slide ).fadeOut(0);
$( '.icon.search.active', slide ).removeClass('active');
$( '.search-wrapper', slide ).fadeOut(0);
$( '.menu_wrapper, .social', slide ).fadeIn( time );
};
// menu button ----------
var button = function(){
// show
if( pos == 'left' ){
slide.animate({ 'left':0 },300);
$('body').animate({ 'right':-125 },300);
} else {
slide.animate({ 'right':0 },300);
$('body').animate({ 'left':-125 },300);
}
overlay.fadeIn(300);
// reset
reset(0);
};
// close ----------
var close = function(){
if( pos == 'left' ){
slide.animate({ 'left':-250 },300);
$('body').animate({ 'right':0 },300);
} else {
slide.animate({ 'right':-250 },300);
$('body').animate({ 'left':0 },300);
}
overlay.fadeOut(300);
};
// search ----------
$( '.icon.search', slide ).on( 'click', function(e){
e.preventDefault();
var el = $(this);
if( el.hasClass('active') ){
$( '.search-wrapper', slide ).fadeOut(0);
$( '.menu_wrapper, .social', slide ).fadeIn(300);
} else {
$( '.search-wrapper', slide ).fadeIn(300);
$( '.menu_wrapper, .social', slide ).fadeOut(0);
$( '.lang-active.active', slide ).removeClass('active').children('i').attr('class','icon-down-open-mini');
$( '.lang-wrapper', slide ).fadeOut(0);
}
el.toggleClass('active');
});
// search form submit ----------
$( 'a.submit', slide ).on( 'click', function(e){
e.preventDefault();
$('#side-form').submit();
});
// lang menu ----------
$( '.lang-active', slide ).on( 'click', function(e){
e.preventDefault();
var el = $(this);
if( el.hasClass('active') ){
$( '.lang-wrapper', slide ).fadeOut(0);
$( '.menu_wrapper, .social', slide ).fadeIn(300);
el.children('i').attr('class','icon-down-open-mini');
} else {
$( '.lang-wrapper', slide ).fadeIn(300);
$( '.menu_wrapper, .social', slide ).fadeOut(0);
el.children('i').attr('class','icon-up-open-mini');
$( '.icon.search.active', slide ).removeClass('active');
$( '.search-wrapper', slide ).fadeOut(0);
}
el.toggleClass('active');
});
// init, click, debouncedresize ----------
// init
init();
// click | menu button
$( '.responsive-menu-toggle' ).off( 'click' );
$( '.responsive-menu-toggle' ).on( 'click', function(e){
e.preventDefault();
button();
});
// click | close
overlay.on( 'click', function(e){
close();
});
$( '.close', slide ).on( 'click', function(e){
e.preventDefault();
close();
});
// click | below search or languages menu
$( slide ).on( 'click', function(e){
if( $( e.target ).is( slide ) ){
reset(300);
}
});
// debouncedresize
$( window ).on( 'debouncedresize', reload );
}
if( $( 'body' ).hasClass( 'mobile-side-slide' ) ){
sideSlide();
}
/* ---------------------------------------------------------------------------
* Menu | mfnMenu
* --------------------------------------------------------------------------- */
function mainMenu(){
var mm_mobile_init_W = mobile_init_W;
if( $( 'body' ).hasClass( 'header-simple' ) || $( '#Header_creative.dropdown' ).length ){
mm_mobile_init_W = 9999;
}
$( '#menu > ul.menu' ).mfnMenu({
addLast : true,
arrows : true,
mobileInit : mm_mobile_init_W,
responsive : window.mfn.responsive
});
$( '#secondary-menu > ul.secondary-menu' ).mfnMenu({
mobileInit : mm_mobile_init_W,
responsive : window.mfn.responsive
});
}
mainMenu();
mfn_stickyH();
mfn_sticky();
mfn_mobile_sticky();
/* ---------------------------------------------------------------------------
* Menu | NOT One Page | .scroll item
* Works with .scroll class
* Since 4.8 replaced with: Page Options > One Page | function: onePageMenu()
* --------------------------------------------------------------------------- */
function onePageScroll(){
if( ! $('body').hasClass('one-page') ){
var menu = $('#menu');
if( menu.find('li.scroll').length > 1 ){
menu.find('li.current-menu-item:not(:first)').removeClass('current-menu-item currenet-menu-parent current-menu-ancestor current-page-ancestor current_page_item current_page_parent current_page_ancestor');
// menu item click
menu.find('a').click(function(){
$(this).closest('li').siblings('li').removeClass('current-menu-item currenet-menu-parent current-menu-ancestor current-page-ancestor current_page_item current_page_parent current_page_ancestor');
$(this).closest('li').addClass('current-menu-item');
});
}
}
}
onePageScroll();
/* ---------------------------------------------------------------------------
* Menu | One Page | Active on Scroll & Click
* --------------------------------------------------------------------------- */
function onePageMenu(){
if( $('body').hasClass('one-page') ){
var menu = $('#menu');
// add attr [data-hash] & [data-id] ----------
$('a[href]', menu).each(function(){
var url = $(this).attr( 'href' );
if( url && url.split('#')[1] ){
// data-hash
var hash = '#' + url.split('#')[1];
if( hash && $(hash).length ){ // check if element with specified ID exists
$(this).attr( 'data-hash', hash );
$(hash).attr( 'data-id', hash );
}
// Visual Composer
var vcHash = '#' + url.split('#')[1];
var vcClass = '.vc_row.' + url.split('#')[1];
if( vcClass && $(vcClass).length ){ // check if element with specified Class exists
$(this).attr( 'data-hash', vcHash );
$(vcClass).attr( 'data-id', vcHash );
}
}
});
// active ----------
var hash;
var activeSelector = '.menu > li.current-menu-item, .menu > li.current-menu-parent, .menu > li.current-menu-ancestor, .menu > li.current-page-ancestor, .menu > li.current_page_item, .menu > li.current_page_parent, .menu > li.current_page_ancestor';
if( $( activeSelector, menu ).length ){
// remove duplicated
$( activeSelector, menu )
.not(':first').removeClass( 'current-menu-item current-menu-parent current-menu-ancestor current-page-ancestor current_page_item current_page_parent current_page_ancestor' );
// remove if 1st link to section & section is not visible
hash = $( activeSelector, menu ).find('a[data-hash]').attr( 'data-hash' );
if( hash ){
hash = '[data-id="'+ hash +'"]';
if( $(hash).length && $( hash ).visible( true ) ){
// do nothing
} else {
$( activeSelector, menu ).removeClass( 'current-menu-item current-menu-parent current-menu-ancestor current-page-ancestor current_page_item current_page_parent current_page_ancestor' )
.closest('.menu > li').removeClass( 'current-menu-item current-menu-parent current-menu-ancestor current-page-ancestor current_page_item current_page_parent current_page_ancestor' );
}
} else {
// do nothing
}
} else {
// add to first if none is active
var first = $( '.menu > li:first-child', menu );
var firstA = first.children('a');
if( firstA.attr( 'data-hash' ) ){
hash = firstA.attr( 'data-hash' );
hash = '[data-id="'+ hash +'"]';
if( $(hash).length && ( $(hash).offset().top == adminBarH() ) ){
first.addClass( 'current-menu-item' );
}
}
}
// click ----------
$('#menu a[data-hash]').click(function(e){
e.preventDefault(); // only with: body.one-page
// active
menu.find('li').removeClass('current-menu-item');
$(this)
.closest('li').addClass('current-menu-item')
.closest('.menu > li').addClass('current-menu-item');
var hash = $(this).attr('data-hash');
hash = '[data-id="'+ hash +'"]';
// mobile - sticky header - close menu
if( $(window).width() < 768 ){
$('.responsive-menu-toggle').removeClass('active');
$('#Top_bar #menu').hide();
}
// offset
var headerFixedAbH = $('.header-fixed.ab-show #Action_bar').innerHeight();
var tabsHeaderH = $(hash).siblings('.ui-tabs-nav').innerHeight();
var offset = headerFixedAbH - tabsHeaderH - adminBarH();
// sticky height
var stickyH = fixStickyHeaderH();
// FIX | Header below | 1st section
if( $( 'body' ).hasClass( 'header-below' ) && $( '#Content' ).length ){
if( $( hash ).offset().top < ( $( '#Content' ).offset().top + 60 ) ){
stickyH = -1;
}
}
// animate scroll
$( 'html, body' ).animate({
scrollTop: $( hash ).offset().top - offset - stickyH
}, 500);
});
}
}
onePageMenu();
/* ---------------------------------------------------------------------------
* Header | Creative
* --------------------------------------------------------------------------- */
var cHeader = 'body:not( .header-open ) #Header_creative';
var cHeaderEl = $( cHeader );
var cHeaderCurrnet;
function creativeHeader(){
$( '.creative-menu-toggle' ).click( function(e){
e.preventDefault();
cHeaderEl.addClass( 'active' );
$( '.creative-menu-toggle, .creative-social', cHeaderEl ).fadeOut( 500 );
});
}
creativeHeader();
$(document).on( 'mouseenter', cHeader, function(){
cHeaderCurrnet = 1;
});
$(document).on( 'mouseleave', cHeader, function(){
cHeaderCurrnet = null;
setTimeout(function(){
if ( ! cHeaderCurrnet ){
cHeaderEl.removeClass( 'active' );
$( '.creative-menu-toggle, .creative-social', cHeaderEl ).fadeIn( 500 );
}
}, 1000);
});
/* ---------------------------------------------------------------------------
* Header | Search
* --------------------------------------------------------------------------- */
$("#search_button:not(.has-input), #Top_bar .icon_close").click(function(e){
e.preventDefault();
$('#Top_bar .search_wrapper').fadeToggle()
.find('.field').focus();
});
/* ---------------------------------------------------------------------------
* WPML | Language switcher in the WP Menu
* --------------------------------------------------------------------------- */
function mfn_wpml(){
$('#menu .menu-item-language:not(.menu-item-language-current)').each(function(){
var el = $(this).children('a');
if( ! el.children('span:not(.icl_lang_sel_bracket)').length ){
el.wrapInner('');
}
});
$('#menu span.icl_lang_sel_bracket').each(function(){
var el = $(this);
el.replaceWith( el.html() );
});
}
mfn_wpml();
/* ---------------------------------------------------------------------------
* Breadcrumbs | Remove last item link
* --------------------------------------------------------------------------- */
function breadcrumbsRemoveLastLink(){
var el = $('.breadcrumbs.no-link').find('li').last();
var text = el.text();
el.html( text );
}
breadcrumbsRemoveLastLink();
/* ---------------------------------------------------------------------------
* Downcount
* --------------------------------------------------------------------------- */
$( '.downcount' ).each( function(){
var el = $(this);
el.downCount({
date : el.attr('data-date'),
offset : el.attr('data-offset')
});
});
/* ---------------------------------------------------------------------------
* Hover | on Touch | .tooltip, .hover_box
* --------------------------------------------------------------------------- */
$( '.tooltip, .hover_box' )
.bind( 'touchstart', function(){
$( this ).toggleClass( 'hover' );
})
.bind( 'touchend', function(){
$( this ).removeClass( 'hover' );
});
/* ---------------------------------------------------------------------------
* Popup | Contact Form | Button
* --------------------------------------------------------------------------- */
$("#popup_contact > a.button").click(function(e){
e.preventDefault();
$(this).parent().toggleClass('focus');
});
/* ---------------------------------------------------------------------------
* Scroll | niceScroll
* --------------------------------------------------------------------------- */
if( $('body').hasClass('nice-scroll-on') && $(window).width() >= 768 && ! navigator.userAgent.match(/(Android|iPod|iPhone|iPad|IEMobile|Opera Mini)/))
{
$('html').niceScroll({
autohidemode : false,
cursorborder : 0,
cursorborderradius : 5,
cursorcolor : '#222222',
cursorwidth : 10,
horizrailenabled : false,
mousescrollstep : ( window.mfn.nicescroll ) ? window.mfn.nicescroll : 40,
scrollspeed : 60
});
$('body').removeClass('nice-scroll-on').addClass('nice-scroll');
niceScrollFix();
}
if( ('#Header_creative.scroll').length && $(window).width() >= 1240 ){
$('#Header_creative.scroll').niceScroll({
autohidemode : false,
cursorborder : 0,
cursorborderradius : 5,
cursorcolor : '#222222',
cursorwidth : 0,
horizrailenabled : false,
mousescrollstep : 40,
scrollspeed : 60
});
}
/* ---------------------------------------------------------------------------
* Gallery | WordPress Gallery
* --------------------------------------------------------------------------- */
$('.gallery').each(function(){
var el = $(this);
var parentID = el.attr('id');
$('> br', el).remove();
$('.gallery-icon > a', el)
.wrap('
')
.prepend('')
.children('img' )
.css('height', 'auto')
.css('width', '100%');
// Link | Media File
if( el.hasClass( 'file' ) ){
$('.gallery-icon a', el ).attr('rel', 'prettyphoto['+ parentID +']');
}
// Masonry
if( el.hasClass( 'masonry' ) ){
el.isotope({
itemSelector : '.gallery-item',
layoutMode : 'masonry',
isOriginLeft : rtl ? false : true
});
}
});
/* ---------------------------------------------------------------------------
* Lightbox | PrettyPhoto
* --------------------------------------------------------------------------- */
$('a[rel^="prettyphoto[portfolio]"]').each(function(){
var el = $(this);
var parent = el.closest('.column');
var index = $( ".column" ).index( parent );
el.attr( 'rel', 'prettyphoto[portfolio-'+ index +']' );
});
function mfn_pretty(){
if( pretty ){
$( 'a[rel^="prettyphoto"], .prettyphoto' ).prettyPhoto( pretty );
}
}
mfn_pretty();
/* ---------------------------------------------------------------------------
* Black & White
* --------------------------------------------------------------------------- */
function mfn_greyscale(){
$('.greyscale .image_wrapper > a, .greyscale .image_wrapper_tiles, .greyscale.portfolio-photo a, .greyscale .client_wrapper .gs-wrapper').has('img').BlackAndWhite({
hoverEffect : false,
intensity : 1 // opacity: 0, 0.1, ... 1
});
}
mfn_greyscale();
/* ---------------------------------------------------------------------------
* Sliding Top
* --------------------------------------------------------------------------- */
$( '.sliding-top-control' ).click(function(e){
e.preventDefault();
$('#Sliding-top .widgets_wrapper').slideToggle();
$('#Sliding-top').toggleClass('active');
});
/* ---------------------------------------------------------------------------
* Alert
* --------------------------------------------------------------------------- */
$(this).on('click', '.alert .close', function(e) {
e.preventDefault();
$(this).closest('.alert').hide(300);
});
/* ---------------------------------------------------------------------------
* Button | mark buttons with icon & label
* --------------------------------------------------------------------------- */
$( 'a.button_js' ).each(function(){
var btn = $(this);
if( btn.find('.button_icon').length && btn.find('.button_label').length ){
btn.addClass('kill_the_icon');
}
});
/* ---------------------------------------------------------------------------
* Navigation Arrows | Sticky
* --------------------------------------------------------------------------- */
$('.fixed-nav').appendTo( 'body' );
/* ---------------------------------------------------------------------------
* Feature List
* --------------------------------------------------------------------------- */
$('.feature_list').each(function(){
var col = $(this).attr('data-col') ? $(this).attr('data-col') : 4;
$(this).find('li:nth-child('+ col +'n):not(:last-child)').after('
');
});
/* ---------------------------------------------------------------------------
* IE Fixes
* --------------------------------------------------------------------------- */
function checkIE(){
// IE 9
var ua = window.navigator.userAgent;
var msie = ua.indexOf("MSIE ");
if( msie > 0 && parseInt(ua.substring(msie + 5, ua.indexOf(".", msie))) == 9 ){
$("body").addClass("ie");
}
}
checkIE();
/* ---------------------------------------------------------------------------
* Parallax
* --------------------------------------------------------------------------- */
var ua = navigator.userAgent,
isMobileWebkit = /WebKit/.test(ua) && /Mobile/.test(ua);
if( ! isMobileWebkit && $(window).width() >= 768 ){
if( window.mfn.parallax == 'stellar' ){
// Stellar
$.stellar({
horizontalScrolling : false,
responsive : true
});
} else {
// Enllax
$(window).enllax();
}
} else {
$('div[data-enllax-ratio], div[data-stellar-ratio]').css( 'background-attachment' , 'scroll' );
}
/* ---------------------------------------------------------------------------
* Load More | Ajax
* --------------------------------------------------------------------------- */
$( '.pager_load_more' ).click(function(e){
e.preventDefault();
var el = $(this);
var pager = el.closest( '.pager_lm' );
var href = el.attr( 'href' );
// index | for many items on the page
var index = $( '.lm_wrapper' ).index(el.closest( '.isotope_wrapper' ).find( '.lm_wrapper' ));
el.fadeOut(50);
pager.addClass( 'loading' );
$.get( href, function( data ){
// content
var content = $( '.lm_wrapper:eq('+ index +')', data ).wrapInner('').html();
if( $( '.lm_wrapper:eq('+ index +')' ).hasClass( 'isotope' ) ){
// isotope
$( '.lm_wrapper:eq('+ index +')' ).append( $(content) ).isotope( 'reloadItems' ).isotope({ sortBy: 'original-order' });
} else {
// default
$( content ).hide().appendTo( '.lm_wrapper:eq('+ index +')' ).fadeIn( 1000 );
}
// next page link
href = $( '.lm_wrapper:eq('+ index +')', data ).next().find( '.pager_load_more' ).attr( 'href' );
pager.removeClass( 'loading' );
if( href ){
el.fadeIn();
el.attr( 'href', href );
}
// refresh some staff -------------------------------
mfn_greyscale();
mfn_jPlayer();
mfn_pretty();
// isotope fix: second resize
$( '.lm_wrapper.isotope' ).imagesLoaded().progress( function() {
$( '.lm_wrapper.isotope' ).isotope( 'layout' );
});
});
});
/* ---------------------------------------------------------------------------
* Filters | Blog & Portfolio
* --------------------------------------------------------------------------- */
$('.filters_buttons .open').click(function(e){
e.preventDefault();
var type = $(this).closest('li').attr('class');
$('.filters_wrapper').show(200);
$('.filters_wrapper ul.'+ type).show(200);
$('.filters_wrapper ul:not(.'+ type +')').hide();
});
$('.filters_wrapper .close a').click(function(e){
e.preventDefault();
$('.filters_wrapper').hide(200);
});
/* ---------------------------------------------------------------------------
* Portfolio List | Next v / Prev ^ buttons
* --------------------------------------------------------------------------- */
$('.portfolio_next_js').click(function(e){
e.preventDefault();
var item = $(this).closest('.portfolio-item').next();
if( item.length ){
$('html, body').animate({
scrollTop: item.offset().top - fixStickyHeaderH()
}, 500);
}
});
$('.portfolio_prev_js').click(function(e){
e.preventDefault();
var item = $(this).closest('.portfolio-item').prev();
if( item.length ){
$('html, body').animate({
scrollTop: item.offset().top - fixStickyHeaderH()
}, 500);
}
});
/* ---------------------------------------------------------------------------
* Link | Smooth Scroll | .scroll
* --------------------------------------------------------------------------- */
$( '.scroll > a, a.scroll' ).click( function(e){
// prevent default if link directs to the current page
var urlL = location.href.replace(/\/#.*|#.*/, '');
var urlT = this.href.replace(/\/#.*|#.*/, '');
if( urlL == urlT ) e.preventDefault();
var hash = this.hash;
var tabsHeaderH = $( hash ).siblings( '.ui-tabs-nav' ).innerHeight();
if( hash && $(hash).length ){
$( 'html, body' ).animate({
scrollTop: $( hash ).offset().top - fixStickyHeaderH() - tabsHeaderH
}, 500 );
}
});
/* ---------------------------------------------------------------------------
* Tabs
* --------------------------------------------------------------------------- */
$(".jq-tabs").tabs();
/* ---------------------------------------------------------------------------
* Accordion & FAQ
* --------------------------------------------------------------------------- */
$('.mfn-acc').each(function(){
var el = $(this);
if( el.hasClass('openAll') ){
// show all -----------
el.find('.question')
.addClass("active")
.children(".answer")
.show();
} else {
// show one -----------
var active_tab = el.attr('data-active-tab');
if( el.hasClass('open1st') ) active_tab = 1;
if( active_tab ){
el.find('.question').eq( active_tab - 1 )
.addClass("active")
.children(".answer")
.show();
}
}
});
$(".mfn-acc .question > .title").click(function(){
if($(this).parent().hasClass("active")) {
$(this).parent().removeClass("active").children(".answer").slideToggle(100);
} else {
if( ! $(this).closest('.mfn-acc').hasClass('toggle') ){
$(this).parents(".mfn-acc").children().each(function() {
if($(this).hasClass("active")) {
$(this).removeClass("active").children(".answer").slideToggle(100);
}
});
}
$(this).parent().addClass("active");
$(this).next(".answer").slideToggle(100);
}
setTimeout(function(){
$(window).trigger('resize');
},50);
});
/* ---------------------------------------------------------------------------
* Helper
* --------------------------------------------------------------------------- */
$('.helper .link.toggle').click( function(e){
e.preventDefault();
var el = $(this);
var id = el.attr('data-rel');
var parent = el.closest('.helper');
if( el.hasClass('active') ){
el.removeClass('active');
parent.find('.helper_content > .item-' + id ).removeClass('active').slideUp(200);
} else {
parent.find('.links > .link.active').removeClass('active');
parent.find('.helper_content > .item.active').slideUp(200);
el.addClass('active');
parent.find('.helper_content > .item-' + id ).addClass('active').slideDown(200);
}
setTimeout(function(){
$(window).trigger('resize');
},50);
});
/* ---------------------------------------------------------------------------
* HTML5 Video | jPlayer
* --------------------------------------------------------------------------- */
function mfn_jPlayer(){
$('.mfn-jplayer').each(function(){
var m4v = $(this).attr('data-m4v');
var poster = $(this).attr('data-img');
var swfPath = $(this).attr('data-swf');
var cssSelectorAncestor = '#' + $(this).closest('.mfn-jcontainer').attr('id');
$(this).jPlayer({
ready : function () {
$(this).jPlayer('setMedia', {
m4v : m4v,
poster : poster
});
},
play : function () { // To avoid both jPlayers playing together.
$(this).jPlayer('pauseOthers');
},
size: {
cssClass : 'jp-video-360p',
width : '100%',
height : '360px'
},
swfPath : swfPath,
supplied : 'm4v',
cssSelectorAncestor : cssSelectorAncestor,
wmode : 'opaque'
});
});
}
mfn_jPlayer();
/* ---------------------------------------------------------------------------
* Love
* --------------------------------------------------------------------------- */
$('.mfn-love').click(function() {
var el = $( this );
if( el.hasClass( 'loved' ) ){
return false;
}
el.addClass( 'loved' );
var post = {
action: 'mfn_love',
post_id: el.attr( 'data-id' )
};
$.post( window.mfn_ajax, post, function( data ){
el.find( '.label' ).html( data );
});
return false;
});
/* ---------------------------------------------------------------------------
* Go to top
* --------------------------------------------------------------------------- */
$('#back_to_top').click(function(){
$('body,html').animate({
scrollTop: 0
}, 500);
return false;
});
/* ---------------------------------------------------------------------------
* Section | Next v / Prev ^ arrows
* --------------------------------------------------------------------------- */
$('.section .section-nav').click(function(){
var el = $(this);
var section = el.closest('.section');
if( el.hasClass('prev') ){
// Previous Section -------------
if( section.prev().length ){
$('html, body').animate({
scrollTop: section.prev().offset().top
}, 500);
}
} else {
// Next Section -----------------
if( section.next().length ){
$('html, body').animate({
scrollTop: section.next().offset().top
}, 500);
}
}
});
/* ---------------------------------------------------------------------------
* Intro | Scroll v arrow
* --------------------------------------------------------------------------- */
$('#Intro .intro-next').click(function(){
var intro = $(this).closest('#Intro');
if( intro.next().length ){
$('html, body').animate({
scrollTop: intro.next().offset().top - fixStickyHeaderH() - adminBarH()
}, 500);
}
});
/* ---------------------------------------------------------------------------
* Widget | Muffin Menu | Hover on click
* --------------------------------------------------------------------------- */
$('.widget_mfn_menu ul.submenus-click').each(function(){
var el = $(this);
$( 'a', el ).click(function(e){
var li = $(this).closest('li');
if( li.hasClass('hover') || ! li.hasClass('menu-item-has-children') ){
// link click
} else {
e.preventDefault();
li.siblings('li').removeClass('hover')
.find('li').removeClass('hover');
$(this).closest('li').addClass('hover');
}
});
});
/* ---------------------------------------------------------------------------
* WooCommerce | Add to cart
* --------------------------------------------------------------------------- */
function addToCart(){
$('body').on('click', '.add_to_cart_button', function(){
$(this)
.closest('.product')
.addClass('adding-to-cart')
.removeClass('added-to-cart');
});
$('body').bind('added_to_cart', function() {
$('.adding-to-cart')
.removeClass('adding-to-cart')
.addClass('added-to-cart');
});
}
addToCart();
/* ---------------------------------------------------------------------------
* Ajax | Complete
* --------------------------------------------------------------------------- */
$(document).ajaxComplete( function() {
setTimeout(function(){
$(window).trigger('resize');
},100);
});
/* ---------------------------------------------------------------------------
* Isotope
* --------------------------------------------------------------------------- */
// Isotope | Fiters ----------
function isotopeFilter( domEl, isoWrapper ){
var filter = domEl.attr('data-rel');
isoWrapper.isotope({ filter: filter });
}
// Isotope | Fiters | Click ----------
$('.isotope-filters .filters_wrapper').find('li:not(.close) a').click(function(e){
e.preventDefault();
var isoWrapper = $('.isotope');
var filters = $(this).closest('.isotope-filters');
var parent = filters.attr('data-parent');
if( parent ){
parent = filters.closest( '.' + parent );
isoWrapper = parent.find('.isotope').first();
}
filters.find('li').removeClass('current-cat');
$(this).closest('li').addClass('current-cat');
isotopeFilter( $(this), isoWrapper );
});
// Isotope | Fiters | Reset ----------
$('.isotope-filters .filters_buttons').find('li.reset a').click(function(e){
e.preventDefault();
$('.isotope-filters .filters_wrapper').find('li').removeClass('current-cat');
isotopeFilter( $(this), $('.isotope') );
});
/* --------------------------------------------------------------------------------------------------------------------------
*
* $(window).resize | Debouncedresize
*
* ----------------------------------------------------------------------------------------------------------------------- */
$(window).bind("debouncedresize", function(){
// Isotope | Relayout
$('.masonry.isotope').isotope();
$('.masonry.gallery').isotope( 'layout');
// Sliding Footer | Height
mfn_footer();
// Header Width
mfn_header();
// Sidebar Height
mfn_sidebar();
// Full Screen Section
mfn_sectionH();
// Full Screen Intro
mfn_introH();
// niceScroll | Padding right fix for short content
niceScrollFix();
// Zoom Box | Vertical Align
zoomBoxVerticalAlign();
// Equal | Height
mfn_equalH_wrap();
mfn_equalH();
});
/* --------------------------------------------------------------------------------------------------------------------------
*
* document.ready | Init
*
* ----------------------------------------------------------------------------------------------------------------------- */
mfnSliderOffer();
mfnSliderOfferThumb();
mfnSliderBlog();
mfnSliderClients();
mfnSliderShop();
sliderPortfolio();
sliderSlider();
sliderTestimonials();
// Sidebar | Height
mfn_sidebar();
// Sliding Footer | Height
mfn_footer();
// Header | Width
mfn_header();
// Full Screen Section
mfn_sectionH();
// Navigation | Hash
hashNav();
// Full Screen Intro
mfn_introH();
// Equal | Height
mfn_equalH_wrap();
mfn_equalH();
});
/* --------------------------------------------------------------------------------------------------------------------------
*
* $(window).scroll
*
* ----------------------------------------------------------------------------------------------------------------------- */
$(window).scroll(function(){
// Header | Sticky
mfn_sticky();
// Back to top | Sticky
backToTopSticky();
// One Page | Scroll | Active Section
onePageActive();
});
/* --------------------------------------------------------------------------------------------------------------------------
*
* $(window).load
*
* ----------------------------------------------------------------------------------------------------------------------- */
$(window).load(function(){
/* ---------------------------------------------------------------------------
* Isotope
* --------------------------------------------------------------------------- */
// Portfolio - Isotope
$('.portfolio_wrapper .isotope:not( .masonry-flat, .masonry-hover, .masonry-minimal )').isotope({
itemSelector : '.portfolio-item',
layoutMode : 'fitRows',
isOriginLeft : rtl ? false : true
});
// Portfolio - Masonry Flat
$('.portfolio_wrapper .masonry-flat').isotope({
itemSelector : '.portfolio-item',
percentPosition : true,
masonry : {
columnWidth: 1
},
isOriginLeft : rtl ? false : true
});
// Blog & Portfolio - Masonry
$('.isotope.masonry, .isotope.masonry-hover, .isotope.masonry-minimal').isotope({
itemSelector : '.isotope-item',
layoutMode : 'masonry',
isOriginLeft : rtl ? false : true
});
// Portfolio | Active Category
function portfolioActive(){
var el = $('.isotope-filters .filters_wrapper');
var active = el.attr('data-cat');
if( active ){
el.find('li.'+active).addClass('current-cat');
$('.isotope').isotope({ filter: '.category-' + active });
}
}
portfolioActive();
/* ---------------------------------------------------------------------------
* Chart
* --------------------------------------------------------------------------- */
$( '.chart' ).waypoint({
offset : '100%',
triggerOnce : true,
handler : function(){
var el = $( this.element ).length ? $( this.element ) : $( this );
var lineW = simple ? 4 : 8;
el.easyPieChart({
animate : 1000,
lineCap : 'circle',
lineWidth : lineW,
size : 140,
scaleColor : false,
trackColor : '#f8f8f8'
});
if( typeof this.destroy !== 'undefined' && $.isFunction( this.destroy ) ){
this.destroy();
}
}
});
/* ---------------------------------------------------------------------------
* Skills
* --------------------------------------------------------------------------- */
$( '.bars_list' ).waypoint({
offset : '100%',
triggerOnce : true,
handler : function(){
var el = $( this.element ).length ? $( this.element ) : $( this );
el.addClass( 'hover' );
if( typeof this.destroy !== 'undefined' && $.isFunction( this.destroy ) ){
this.destroy();
}
}
});
/* ---------------------------------------------------------------------------
* Progress Icons
* --------------------------------------------------------------------------- */
$('.progress_icons').waypoint({
offset : '100%',
triggerOnce : true,
handler : function(){
var el = $( this.element ).length ? $( this.element ) : $( this );
var active = el.attr( 'data-active' );
var color = el.attr( 'data-color' );
var icon = el.find( '.progress_icon' );
var timeout = 200; // timeout in milliseconds
icon.each( function(i){
if( i < active ){
var time = ( i+1 ) * timeout;
setTimeout( function(){
$( icon[i] )
.addClass( 'themebg' )
.css( 'background-color', color );
},time );
}
});
if( typeof this.destroy !== 'undefined' && $.isFunction( this.destroy ) ){
this.destroy();
}
}
});
/* ---------------------------------------------------------------------------
* Animate Math | Counter, Quick Fact, etc.
* --------------------------------------------------------------------------- */
$('.animate-math .number').waypoint({
offset : '100%',
triggerOnce : true,
handler : function(){
var el = $( this.element ).length ? $( this.element ) : $( this );
var duration = Math.floor( ( Math.random() * 1000 ) + 1000 );
var to = el.attr( 'data-to' );
$({ property:0 }).animate({ property:to }, {
duration : duration,
easing :'linear',
step : function() {
el.text( Math.floor( this.property ) );
},
complete : function() {
el.text( this.property );
}
});
if( typeof this.destroy !== 'undefined' && $.isFunction( this.destroy ) ){
this.destroy();
}
}
});
/* ---------------------------------------------------------------------------
* Before After | TwentyTwenty
* --------------------------------------------------------------------------- */
$('.before_after.twentytwenty-container').twentytwenty();
/* --------------------------------------------------------------------------------------------------------------------------
*
* window.load | Init
*
* ----------------------------------------------------------------------------------------------------------------------- */
// Full Screen Section
mfn_sectionH();
// Navigation | Hash
hashNav();
// Full Screen Intro
mfn_introH();
// FIX | Revolution Slider Width OnLoad
$(window).trigger( 'resize' );
// Sidebar | Height
setTimeout(function(){
mfn_sidebar();
},10);
});
/* --------------------------------------------------------------------------------------------------------------------------
*
* $(document).mouseup
*
* ----------------------------------------------------------------------------------------------------------------------- */
$(document).mouseup(function(e){
// Widget | Muffin Menu | Hover on click
if( $(".widget_mfn_menu ul.submenus-click").length ){
if( $(".widget_mfn_menu ul.submenus-click").has(e.target).length === 0 ){
$('.widget_mfn_menu ul.submenus-click li').removeClass('hover');
}
}
});
/* --------------------------------------------------------------------------------------------------------------------------
*
* Sliders configuration
*
* ----------------------------------------------------------------------------------------------------------------------- */
// Slick Slider | Auto responsive -----------------------------------------
function slickAutoResponsive( slider, max, size ){
if( ! max ) max = 5;
if( ! size ) size = 380;
var width = slider.width();
var count = Math.ceil( width / size );
if( count < 1 ) count = 1;
if( count > max ) count = max;
return count;
}
// --- Offer Thumb -----------------------------------------------------------------
function mfnSliderOfferThumb(){
var pager = function( el, i ){
var img = $( el.$slides[i] ).children( '.thumbnail' ).html();
return ''+ img +'';
};
$('.offer_thumb_ul').each(function(){
var slider = $(this);
slider.slick({
cssEase : 'ease-out',
arrows : false,
dots : true,
infinite : true,
touchThreshold : 10,
speed : 300,
adaptiveHeight : true,
appendDots : slider.siblings( '.slider_pagination' ),
customPaging : pager,
rtl : rtl ? true : false,
autoplay : window.mfn_sliders.offer ? true : false,
autoplaySpeed : window.mfn_sliders.offer ? window.mfn_sliders.offer : 5000,
slidesToShow : 1,
slidesToScroll : 1
});
});
}
// --- Offer -----------------------------------------------------------------
function mfnSliderOffer(){
$('.offer_ul').each( function(){
var slider = $(this);
slider.slick({
cssEase : 'ease-out',
dots : false,
infinite : true,
touchThreshold : 10,
speed : 300,
prevArrow : '',
nextArrow : '',
adaptiveHeight : true,
//customPaging : pager,
rtl : rtl ? true : false,
autoplay : window.mfn_sliders.offer ? true : false,
autoplaySpeed : window.mfn_sliders.offer ? window.mfn_sliders.offer : 5000,
slidesToShow : 1,
slidesToScroll : 1
});
// Pagination | Show (css)
slider.siblings('.slider_pagination').addClass('show');
// Pager | Set slide number after change
slider.on( 'afterChange', function( event, slick, currentSlide, nextSlide ){
slider.siblings('.slider_pagination').find('.current').text( currentSlide + 1 );
});
});
}
// --- Shop ------------------------------------------------------------------
function mfnSliderShop(){
var pager = function( el, i ){
return ''+ i +'';
};
$('.shop_slider_ul').each(function(){
var slider = $(this);
slider.slick({
cssEase : 'ease-out',
dots : true,
infinite : true,
touchThreshold : 10,
speed : 300,
prevArrow : '',
nextArrow : '',
appendArrows : slider.siblings( '.blog_slider_header' ),
appendDots : slider.siblings( '.slider_pager' ),
customPaging : pager,
rtl : rtl ? true : false,
autoplay : window.mfn_sliders.shop ? true : false,
autoplaySpeed : window.mfn_sliders.shop ? window.mfn_sliders.shop : 5000,
slidesToShow : slickAutoResponsive( slider, 4 ),
slidesToScroll : slickAutoResponsive( slider, 4 )
});
// Bind | debouncedresize
$(window).bind( 'debouncedresize', function(){
slider.slick( 'slickSetOption', 'slidesToShow', slickAutoResponsive( slider, 4 ), false );
slider.slick( 'slickSetOption', 'slidesToScroll', slickAutoResponsive( slider, 4 ), true );
});
});
}
// --- Blog ------------------------------------------------------------------
function mfnSliderBlog(){
var pager = function( el, i ){
return ''+ i +'';
};
$('.blog_slider_ul').each(function(){
var slider = $(this);
var slidesToShow = 4;
var count = slider.closest( '.blog_slider' ).data( 'count' );
if( slidesToShow > count ){
slidesToShow = count;
if( slidesToShow < 1 ){
slidesToShow = 1;
}
}
slider.slick({
cssEase : 'ease-out',
dots : true,
infinite : true,
touchThreshold : 10,
speed : 300,
prevArrow : '',
nextArrow : '',
appendArrows : slider.siblings( '.blog_slider_header' ),
appendDots : slider.siblings( '.slider_pager' ),
customPaging : pager,
rtl : rtl ? true : false,
autoplay : window.mfn_sliders.blog ? true : false,
autoplaySpeed : window.mfn_sliders.blog ? window.mfn_sliders.blog : 5000,
slidesToShow : slickAutoResponsive( slider, slidesToShow ),
slidesToScroll : slickAutoResponsive( slider, slidesToShow )
});
// Bind | debouncedresize
$(window).bind( 'debouncedresize', function(){
slider.slick( 'slickSetOption', 'slidesToShow', slickAutoResponsive( slider, slidesToShow ), false );
slider.slick( 'slickSetOption', 'slidesToScroll', slickAutoResponsive( slider, slidesToShow ), true );
});
});
}
// --- Clients ------------------------------------------------------------------
function mfnSliderClients(){
$('.clients_slider_ul').each(function(){
var slider = $(this);
slider.slick({
cssEase : 'ease-out',
dots : false,
infinite : true,
touchThreshold : 10,
speed : 300,
prevArrow : '',
nextArrow : '',
appendArrows : slider.siblings( '.clients_slider_header' ),
rtl : rtl ? true : false,
autoplay : window.mfn_sliders.clients ? true : false,
autoplaySpeed : window.mfn_sliders.clients ? window.mfn_sliders.clients : 5000,
slidesToShow : slickAutoResponsive( slider, 4 ),
slidesToScroll : slickAutoResponsive( slider, 4 )
});
// Bind | debouncedresize
$(window).bind( 'debouncedresize', function(){
slider.slick( 'slickSetOption', 'slidesToShow', slickAutoResponsive( slider, 4 ), false );
slider.slick( 'slickSetOption', 'slidesToScroll', slickAutoResponsive( slider, 4 ), true );
});
});
}
// --- Portfolio -------------------------------------------------------------
function sliderPortfolio(){
$('.portfolio_slider_ul').each(function(){
var slider = $(this);
var size = 380;
var scroll = 5;
if( slider.closest( '.portfolio_slider' ).data( 'size' ) ){
size = slider.closest( '.portfolio_slider' ).data( 'size' );
}
if( slider.closest( '.portfolio_slider' ).data( 'size' ) ){
scroll = slider.closest( '.portfolio_slider' ).data( 'scroll' );
}
slider.slick({
cssEase : 'ease-out',
dots : false,
infinite : true,
touchThreshold : 10,
speed : 300,
prevArrow : '',
nextArrow : '',
rtl : rtl ? true : false,
autoplay : window.mfn_sliders.portfolio ? true : false,
autoplaySpeed : window.mfn_sliders.portfolio ? window.mfn_sliders.portfolio : 5000,
slidesToShow : slickAutoResponsive( slider, 5, size ),
slidesToScroll : slickAutoResponsive( slider, scroll, size )
});
// Bind | debouncedresize
$(window).bind( 'debouncedresize', function(){
slider.slick( 'slickSetOption', 'slidesToShow', slickAutoResponsive( slider, 5, size ), false );
slider.slick( 'slickSetOption', 'slidesToScroll', slickAutoResponsive( slider, scroll, size ), true );
});
// prettyPhoto | disable on dragstart
slider.on( 'dragstart', '.slick-slide a[rel="prettyphoto"]', function( event ){
if( pretty ){
$(this).addClass( 'unbind-pretty' ).unbind( 'click.prettyphoto' );
}
});
// prettyPhoto | enable after change
slider.on( 'afterChange', function( event, slick, currentSlide, nextSlide ){
if( pretty ){
$( 'a.unbind-pretty[rel="prettyphoto"]', slider ).prettyPhoto( pretty ).removeClass( 'unbind-pretty' );
}
});
});
}
// --- Slider ----------------------------------------------------------------
function sliderSlider(){
var pager = function( el, i ){
return ''+ i +'';
};
$('.content_slider_ul').each(function(){
var slider = $(this);
var count = 1;
var centerMode = false;
if( slider.closest( '.content_slider' ).hasClass( 'carousel' ) ){
count = slickAutoResponsive( slider );
$(window).bind( 'debouncedresize', function(){
slider.slick( 'slickSetOption', 'slidesToShow', slickAutoResponsive( slider ), false );
slider.slick( 'slickSetOption', 'slidesToScroll', slickAutoResponsive( slider ), true );
});
}
if( slider.closest( '.content_slider' ).hasClass( 'center' ) ){
centerMode = true;
}
slider.slick({
cssEase : 'cubic-bezier(.4,0,.2,1)',
dots : true,
infinite : true,
touchThreshold : 10,
speed : 300,
centerMode : centerMode,
centerPadding : '20%',
prevArrow : '',
nextArrow : '',
adaptiveHeight : true,
appendDots : slider.siblings( '.slider_pager' ),
customPaging : pager,
rtl : rtl ? true : false,
autoplay : window.mfn_sliders.slider ? true : false,
autoplaySpeed : window.mfn_sliders.slider ? window.mfn_sliders.slider : 5000,
slidesToShow : count,
slidesToScroll : count
});
});
}
// --- Testimonials ----------------------------------------------------------------
function sliderTestimonials(){
var pager = function( el, i ){
var img = $( el.$slides[i] ).find('.single-photo-img').html();
return ''+ img +'';
};
$('.testimonials_slider_ul').each(function(){
var slider = $(this);
slider.slick({
cssEase : 'ease-out',
dots : true,
infinite : true,
touchThreshold : 10,
speed : 300,
prevArrow : '',
nextArrow : '',
adaptiveHeight : true,
appendDots : slider.siblings( '.slider_pager' ),
customPaging : pager,
rtl : rtl ? true : false,
autoplay : window.mfn_sliders.testimonials ? true : false,
autoplaySpeed : window.mfn_sliders.testimonials ? window.mfn_sliders.testimonials : 5000,
slidesToShow : 1,
slidesToScroll : 1
});
});
}
})(jQuery);