;(function($, window, undefined){ 'use strict'; var $body=$('body'); $.DLMenu=function(options, element){ this.$el=$(element); this._init(options); }; $.DLMenu.defaults={ animationClasses:{ classin:'dl-animate-in-1', classout:'dl-animate-out-1' }, onLevelClick:function(el, name){ return false; }, onLinkClick:function(el, ev){ return false; }, backLabel: 'Back', showCurrentLabel: 'Show this page', useActiveItemAsBackLabel: false, useActiveItemAsLink: true }; $.DLMenu.prototype={ _init:function(options){ this.options=$.extend(true, {}, $.DLMenu.defaults, options); this._config(); var animEndEventNames={ 'WebkitAnimation':'webkitAnimationEnd', 'OAnimation':'oAnimationEnd', 'msAnimation':'MSAnimationEnd', 'animation':'animationend', "MozAnimation":"animationend" }, transEndEventNames={ 'WebkitTransition':'webkitTransitionEnd', 'MozTransition':'transitionend', 'OTransition':'oTransitionEnd', 'msTransition':'MSTransitionEnd', 'transition':'transitionend' }; if(animEndEventNames[ window.supportedAnimation ]!=undefined){ this.animEndEventName=animEndEventNames[ window.supportedAnimation ] + '.dlmenu'; }else{ this.animEndEventName=animEndEventNames[ 'animation' ] + '.dlmenu'; } if(transEndEventNames[ window.supportedTransition ]!=undefined){ this.transEndEventName=transEndEventNames[ window.supportedTransition ] + '.dlmenu'; }else{ this.transEndEventName=transEndEventNames[ 'transition' ] + '.dlmenu'; } this.supportAnimations=window.supportsAnimations; this.supportTransitions=window.supportsTransitions; this._initEvents(); }, _config:function(){ var self=this; this.open=false; this.$trigger=this.$el.hasClass('primary-navigation')&&$('#perspective-menu-buttons').length > 0 ? $('#perspective-menu-buttons .dl-trigger'):this.$el.find('.dl-trigger:first'); this.$menu=this.$el.find('ul.dl-menu:first'); this.$menuitems=this.$menu.find('li:not(.dl-back):not(.not-dlmenu)'); this.$el.find('ul.dl-submenu').prepend('
  • ' + this.options.backLabel + '
  • '); this.$back=this.$menu.find('li.dl-back'); if(this.options.useActiveItemAsBackLabel){ this.$back.each(function(){ var $this=$(this), parentLabel=$this.parents('li:first').find('a:first').text(); $this.find('a').html(parentLabel); }); } if(this.options.useActiveItemAsLink){ this.$el.find('ul.dl-submenu').prepend(function(){ var activeLi=$(this).parents('li:not(.dl-back):first'); var parentli=activeLi.find('a:first'); if(activeLi.hasClass('mobile-clickable')) return '
  • ' + self.options.showCurrentLabel + '
  • '; else return ''; }); }}, _initEvents:function(){ var self=this; this.$trigger.on('click.dlmenu', function(){ if(self.open){ self._closeMenu(); }else{ self._openMenu(); $body.off('click').children().on('click.dlmenu', function(){ self._closeMenu() ; }); } return false; }); this.$menuitems.on('click.dlmenu', function(event){ event.stopPropagation(); var $item=$(this), $submenu=$item.children('ul.dl-submenu'), level=1; if(!self.$menu.hasClass('dl-menuopen')){ self.options.onLinkClick($item, event); return; } var $itemList=$item.parent(); while ($itemList.attr('id')!='primary-menu'){ if($itemList[0].nodeName.toUpperCase()=='UL'){ level++; } $itemList=$itemList.parent(); if(!$itemList.length){ break; }} if(level > 3){ level=3; } if(($submenu.length > 0)&&!($(event.currentTarget).hasClass('dl-subviewopen'))){ var $flyin=$submenu.clone().addClass('level' + (level+1)).css('opacity', 0).insertAfter(self.$menu), onAnimationEndFn=function(){ self.$menu.off(self.animEndEventName).removeClass(self.options.animationClasses.classout).addClass('dl-subview'); $item.addClass('dl-subviewopen').parents('.dl-subviewopen:first').removeClass('dl-subviewopen').addClass('dl-subview'); $flyin.remove(); }; setTimeout(function(){ $flyin.addClass(self.options.animationClasses.classin); self.$menu.addClass(self.options.animationClasses.classout); if(self.supportAnimations){ self.$menu.on(self.animEndEventName, onAnimationEndFn); }else{ onAnimationEndFn.call(); } self.options.onLevelClick($item, $item.children('a:first').text()); }); return false; }else{ self.options.onLinkClick($item, event); }}); this.$back.on('click.dlmenu', function(event){ var $this=$(this), $submenu=$this.parents('ul.dl-submenu:first'), $item=$submenu.parent(), level=1; var $itemList=$this.parent(); while ($itemList.attr('id')!='primary-menu'){ if($itemList[0].nodeName.toUpperCase()=='UL'){ level++; } $itemList=$itemList.parent(); if(!$itemList.length){ break; }} if(level > 3){ level=3; } var $flyin=$submenu.clone().addClass('level' + level).insertAfter(self.$menu); var onAnimationEndFn=function(){ self.$menu.off(self.animEndEventName).removeClass(self.options.animationClasses.classin); $flyin.remove(); }; setTimeout(function(){ $flyin.addClass(self.options.animationClasses.classout); self.$menu.addClass(self.options.animationClasses.classin); if(self.supportAnimations){ self.$menu.on(self.animEndEventName, onAnimationEndFn); }else{ onAnimationEndFn.call(); } $item.removeClass('dl-subviewopen'); var $subview=$this.parents('.dl-subview:first'); if($subview.is('li')){ $subview.addClass('dl-subviewopen'); } $subview.removeClass('dl-subview'); }); return false; }); }, closeMenu:function(){ if(this.open){ this._closeMenu(); }}, _closeMenu:function(){ var self=this, onTransitionEndFn=function(){ self.$menu.off(self.transEndEventName); self._resetMenu(); }; this.$menu.removeClass('dl-menuopen'); this.$menu.addClass('dl-menu-toggle'); this.$trigger.removeClass('dl-active'); if(this.supportTransitions){ this.$menu.on(this.transEndEventName, onTransitionEndFn); }else{ onTransitionEndFn.call(); } this.open=false; }, openMenu:function(){ if(!this.open){ this._openMenu(); }}, _openMenu:function(){ var self=this; $body.off('click').on('click.dlmenu', function(){ self._closeMenu() ; }); this.$menu.addClass('dl-menuopen dl-menu-toggle').on(this.transEndEventName, function(){ $(this).removeClass('dl-menu-toggle'); }); this.$trigger.addClass('dl-active'); this.open=true; }, _resetMenu:function(){ this.$menu.removeClass('dl-subview'); this.$menuitems.removeClass('dl-subview dl-subviewopen'); }}; var logError=function(message){ if(window.console){ window.console.error(message); }}; $.fn.dlmenu=function(options){ if(typeof options==='string'){ var args=Array.prototype.slice.call(arguments, 1); this.each(function(){ var instance=$.data(this, 'dlmenu'); if(!instance){ logError("cannot call methods on dlmenu prior to initialization; " + "attempted to call method '" + options + "'"); return; } if(!$.isFunction(instance[options])||options.charAt(0)==="_"){ logError("no such method '" + options + "' for dlmenu instance"); return; } instance[ options ].apply(instance, args); }); }else{ this.each(function(){ var instance=$.data(this, 'dlmenu'); if(instance){ instance._init(); }else{ instance=$.data(this, 'dlmenu', new $.DLMenu(options, this)); }}); } return this; };})(jQuery, window); function supportsTransitions(){ return getSupportedTransition()!=''; } function getSupportedTransition(){ var b=document.body||document.documentElement, s=b.style, p='transition'; if(typeof s[p]=='string'){ return p; } var v=['Moz', 'webkit', 'Webkit', 'Khtml', 'O', 'ms']; p=p.charAt(0).toUpperCase() + p.substr(1); for (var i=0; i li'), lastItem=null; for (var i=items.length - 1; i >=0; i--){ if(items[i].className.indexOf('mobile-only')==-1){ lastItem=items[i]; break; }} primaryMenu.style.display=''; logoItem.style.marginLeft=''; logoItem.style.marginRight=''; if(windowWidth < 1212||lastItem===null){ return; } primaryMenu.style.display='block'; var pageCenter=windowWidth / 2 + pageMargin, logoOffset=getElementPosition(logoItem), offset=pageCenter - logoOffset.left - logoItem.offsetWidth / 2; logoItem.style.marginLeft=offset + 'px'; var primaryMenuOffsetWidth=primaryMenu.offsetWidth, primaryMenuOffsetLeft=getElementPosition(primaryMenu).left, lastItemOffsetWidth=lastItem.offsetWidth, lastItemOffsetLeft=getElementPosition(lastItem).left, rightItemsOffset=primaryMenuOffsetWidth - lastItemOffsetLeft - lastItemOffsetWidth + primaryMenuOffsetLeft; logoItem.style.marginRight=rightItemsOffset + 'px'; }else{ if(windowWidth < 1212){ primaryNavigation.style.textAlign=''; primaryMenu.style.position=''; primaryMenu.style.left=''; return; } primaryNavigation.style.textAlign='left'; primaryMenu.style.left=0 + 'px'; var pageCenter=windowWidth / 2, primaryMenuOffsetLeft=getElementPosition(primaryMenu).left, logoOffset=getElementPosition(document.querySelector('#site-header .header-main #primary-navigation .menu-item-logo')), pageOffset=getElementPosition(page), offset=pageCenter - (logoOffset.left - pageOffset.left) - document.querySelector('#site-header .header-main #primary-navigation .menu-item-logo').offsetWidth / 2; if(primaryMenuOffsetLeft + offset >=0){ primaryMenu.style.position='relative'; primaryMenu.style.left=offset + 'px'; }else{ primaryMenu.style.position=''; primaryMenu.style.left=''; }} }, 50); } window.fixMenuLogoPosition=fixMenuLogoPosition; window.addEventListener('load', function(event){ window.fixMenuLogoPosition(); }, false); })(); (function($){ var isVerticalMenu=$('.header-main').hasClass('header-layout-vertical'), isHamburgerMenu=$('.header-main').hasClass('header-layout-fullwidth_hamburger'), isPerspectiveMenu=$('#thegem-perspective').length > 0; $(window).resize(function(){ window.updateGemClientSize(false); window.updateGemInnerSize(); }); window.menuResizeTimeoutHandler=false; var megaMenuSettings={}; function getOffset(elem){ if(elem.getBoundingClientRect&&window.gemBrowser.platform.name!='ios'){ var bound=elem.getBoundingClientRect(), html=elem.ownerDocument.documentElement, htmlScroll=getScroll(html), elemScrolls=getScrolls(elem), isFixed=(styleString(elem, 'position')=='fixed'); return { x: parseInt(bound.left) + elemScrolls.x + ((isFixed) ? 0:htmlScroll.x) - html.clientLeft, y: parseInt(bound.top) + elemScrolls.y + ((isFixed) ? 0:htmlScroll.y) - html.clientTop };} var element=elem, position={x: 0, y: 0}; if(isBody(elem)) return position; while (element&&!isBody(element)){ position.x +=element.offsetLeft; position.y +=element.offsetTop; if(window.gemBrowser.name=='firefox'){ if(!borderBox(element)){ position.x +=leftBorder(element); position.y +=topBorder(element); } var parent=element.parentNode; if(parent&&styleString(parent, 'overflow')!='visible'){ position.x +=leftBorder(parent); position.y +=topBorder(parent); }}else if(element!=elem&&window.gemBrowser.name=='safari'){ position.x +=leftBorder(element); position.y +=topBorder(element); } element=element.offsetParent; } if(window.gemBrowser.name=='firefox'&&!borderBox(elem)){ position.x -=leftBorder(elem); position.y -=topBorder(elem); } return position; }; function getScroll(elem){ return {x: window.pageXOffset||document.documentElement.scrollLeft, y: window.pageYOffset||document.documentElement.scrollTop};}; function getScrolls(elem){ var element=elem.parentNode, position={x: 0, y: 0}; while (element&&!isBody(element)){ position.x +=element.scrollLeft; position.y +=element.scrollTop; element=element.parentNode; } return position; }; function styleString(element, style){ return $(element).css(style); }; function styleNumber(element, style){ return parseInt(styleString(element, style))||0; }; function borderBox(element){ return styleString(element, '-moz-box-sizing')=='border-box'; }; function topBorder(element){ return styleNumber(element, 'border-top-width'); }; function leftBorder(element){ return styleNumber(element, 'border-left-width'); }; function isBody(element){ return (/^(?:body|html)$/i).test(element.tagName); }; function checkMegaMenuSettings(){ if(window.customMegaMenuSettings==undefined||window.customMegaMenuSettings==null){ return false; } var uri=window.location.pathname; window.customMegaMenuSettings.forEach(function(item){ for (var i=0; i < item.urls.length; i++){ if(uri.match(item.urls[i])){ megaMenuSettings[item.menuItem]=item.data; }} }); } function fixMegaMenuWithSettings(){ checkMegaMenuSettings(); $('#primary-menu > li.megamenu-enable').each(function(){ var m=this.className.match(/(menu-item-(\d+))/); if(!m){ return; } var itemId=parseInt(m[2]); if(megaMenuSettings[itemId]==undefined||megaMenuSettings[itemId]==null){ return; } var $item=$('> ul', this); if(megaMenuSettings[itemId].masonry!=undefined){ if(megaMenuSettings[itemId].masonry){ $item.addClass('megamenu-masonry'); }else{ $item.removeClass('megamenu-masonry'); }} if(megaMenuSettings[itemId].style!=undefined){ $(this).removeClass('megamenu-style-default megamenu-style-grid').addClass('megamenu-style-' + megaMenuSettings[itemId].style); } var css={}; if(megaMenuSettings[itemId].backgroundImage!=undefined){ css.backgroundImage=megaMenuSettings[itemId].backgroundImage; } if(megaMenuSettings[itemId].backgroundPosition!=undefined){ css.backgroundPosition=megaMenuSettings[itemId].backgroundPosition; } if(megaMenuSettings[itemId].padding!=undefined){ css.padding=megaMenuSettings[itemId].padding; } if(megaMenuSettings[itemId].borderRight!=undefined){ css.borderRight=megaMenuSettings[itemId].borderRight; } $item.css(css); }); } function isResponsiveMenuVisible(){ return $('.primary-navigation .menu-toggle').is(':visible'); } window.isResponsiveMenuVisible=isResponsiveMenuVisible; function isTopAreaVisible(){ return window.gemSettings.topAreaMobileDisable ? window.gemOptions.clientWidth >=768:true; } window.isTopAreaVisible=isTopAreaVisible; function isVerticalToggleVisible(){ return window.gemOptions.clientWidth > 1600; } $('#primary-menu > li.megamenu-enable').hover(function(){ fix_megamenu_position(this); }, function(){} ); $('#primary-menu > li.megamenu-enable:hover').each(function(){ fix_megamenu_position(this); }); $('#primary-menu > li.megamenu-enable').each(function(){ var $item=$('> ul', this); if($item.length==0) return; $item.addClass('megamenu-item-inited'); }); function fix_megamenu_position(elem){ if(!$('.megamenu-inited', elem).length&&isResponsiveMenuVisible()){ return false; } var $item=$('> ul', elem); if($item.length==0) return; var self=$item.get(0); $item.addClass('megamenu-item-inited'); var default_item_css={ width: 'auto', height: 'auto' }; if(!isVerticalMenu&&!isHamburgerMenu&&!isPerspectiveMenu){ default_item_css.left=0; } $item .removeClass('megamenu-masonry-inited megamenu-fullwidth') .css(default_item_css); $(' > li', $item).css({ left: 0, top: 0 }).each(function(){ var old_width=$(this).data('old-width')||-1; if(old_width!=-1){ $(this).width(old_width).data('old-width', -1); }}); if(isResponsiveMenuVisible()){ return; } if(isVerticalMenu){ var container_width=window.gemOptions.clientWidth - $('#site-header-wrapper').outerWidth(); }else if(isPerspectiveMenu){ var container_width=window.gemOptions.clientWidth - $('#primary-navigation').outerWidth(); }else if(isHamburgerMenu){ var container_width=window.gemOptions.clientWidth - $('#primary-menu').outerWidth(); }else{ var $container=$item.closest('.header-main'), container_width=$container.width(), container_padding_left=parseInt($container.css('padding-left')), container_padding_right=parseInt($container.css('padding-right')), parent_width=$item.parent().outerWidth(); } var megamenu_width=$item.outerWidth(); if(megamenu_width > container_width){ megamenu_width=container_width; var new_megamenu_width=container_width - parseInt($item.css('padding-left')) - parseInt($item.css('padding-right')); var columns=$item.data('megamenu-columns')||4; var column_width=parseFloat(new_megamenu_width - columns * parseInt($(' > li.menu-item:first', $item).css('margin-left'))) / columns; var column_width_int=parseInt(column_width); $(' > li', $item).each(function(){ $(this).data('old-width', $(this).width()).css('width', column_width_int); }); $item.addClass('megamenu-fullwidth').width(new_megamenu_width - (column_width - column_width_int) * columns); } if(!isVerticalMenu&&!isHamburgerMenu&&!isPerspectiveMenu){ if(megamenu_width > parent_width){ var left=-(megamenu_width - parent_width) / 2; }else{ var left=0; } var container_offset=getOffset($container[0]); var megamenu_offset=getOffset(self); if((megamenu_offset.x - container_offset.x - container_padding_left + left) < 0){ left=-(megamenu_offset.x - container_offset.x - container_padding_left); } if((megamenu_offset.x + megamenu_width + left) > (container_offset.x + $container.outerWidth() - container_padding_right)){ left -=(megamenu_offset.x + megamenu_width + left) - (container_offset.x + $container.outerWidth() - container_padding_right); } $item.css('left', left).css('left'); } if($item.hasClass('megamenu-masonry')){ var positions={}, max_bottom=0; $item.width($item.width() - 1); var new_row_height=$('.megamenu-new-row', $item).outerHeight() + parseInt($('.megamenu-new-row', $item).css('margin-bottom')); $('> li.menu-item', $item).each(function(){ var pos=$(this).position(); if(positions[pos.left]!=null&&positions[pos.left]!=undefined){ var top_position=positions[pos.left]; }else{ var top_position=pos.top; } positions[pos.left]=top_position + $(this).outerHeight() + new_row_height + parseInt($(this).css('margin-bottom')); if(positions[pos.left] > max_bottom) max_bottom=positions[pos.left]; $(this).css({ left: pos.left, top: top_position }) }); $item.height(max_bottom - new_row_height - parseInt($item.css('padding-top')) - 1); $item.addClass('megamenu-masonry-inited'); } if($item.hasClass('megamenu-empty-right')){ var mega_width=$item.width(); var max_rights={ columns: [], position: -1 }; $('> li.menu-item', $item).removeClass('megamenu-no-right-border').each(function(){ var pos=$(this).position(); var column_right_position=pos.left + $(this).width(); if(column_right_position > max_rights.position){ max_rights.position=column_right_position; max_rights.columns=[]; } if(column_right_position==max_rights.position){ max_rights.columns.push($(this)); }}); if(max_rights.columns.length&&max_rights.position >=(mega_width - 7)){ max_rights.columns.forEach(function($li){ $li.addClass('megamenu-no-right-border'); }); }} if(isVerticalMenu||isHamburgerMenu||isPerspectiveMenu){ var clientHeight=window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight, itemOffset=$item.offset(), itemHeight=$item.outerHeight(), scrollTop=$(window).scrollTop(); if(itemOffset.top - scrollTop + itemHeight > clientHeight){ $item.css({ top: clientHeight - itemOffset.top + scrollTop - itemHeight - 20 }); }} $item.addClass('megamenu-inited'); } function primary_menu_reinit(){ if(isResponsiveMenuVisible()){ if(window.gemMobileMenuType=='default'){ var $submenuDisabled=$('#primary-navigation .dl-submenu-disabled'); if($submenuDisabled.length){ $submenuDisabled.addClass('dl-submenu').removeClass('dl-submenu-disabled'); }} if($('#primary-menu').hasClass('no-responsive')){ $('#primary-menu').removeClass('no-responsive'); } if(!$('#primary-navigation').hasClass('responsive')){ $('#primary-navigation').addClass('responsive'); } $('.menu-overlay').addClass('mobile'); window.fixMenuLogoPosition(); }else{ if(window.gemMobileMenuType=='overlay'&&!$('.header-layout-overlay').length&&$('.menu-overlay').hasClass('active')){ $('.mobile-menu-layout-overlay .menu-toggle').click(); } $('#primary-navigation').addClass('without-transition'); if(window.gemMobileMenuType=='default'){ $('#primary-navigation .dl-submenu').addClass('dl-submenu-disabled').removeClass('dl-submenu'); } $('#primary-menu').addClass('no-responsive'); $('#primary-navigation').removeClass('responsive'); $('.menu-overlay').removeClass('mobile'); window.fixMenuLogoPosition(); $('#primary-navigation').removeClass('without-transition'); }} if(window.gemMobileMenuType=='default'){ $('#primary-navigation .submenu-languages').addClass('dl-submenu'); } $('#primary-navigation > ul> li.menu-item-language').addClass('menu-item-parent'); fixMegaMenuWithSettings(); if(window.gemMobileMenuType=='default'){ var updateMobileMenuPosition=function(){ var siteHeaderHeight=$('#site-header').outerHeight(), windowHeight=window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight; if($('#thegem-perspective #primary-menu').length){ $('#thegem-perspective > .mobile-menu-layout-default').css({ top: siteHeaderHeight }); } $('#primary-menu').css({ maxHeight: windowHeight - siteHeaderHeight }); }; $(window).resize(function(){ if(isResponsiveMenuVisible()&&$('#primary-menu').hasClass('dl-menuopen')){ setTimeout(updateMobileMenuPosition, 50); }else{ $('#primary-menu').css({ maxHeight: '' }); }}); $('#site-header .dl-trigger').on('click', function(){ updateMobileMenuPosition(); }); $('#primary-navigation').dlmenu({ animationClasses: { classin:'dl-animate-in', classout:'dl-animate-out' }, onLevelClick: function (el, name){ }, backLabel: thegem_dlmenu_settings.backLabel, showCurrentLabel: thegem_dlmenu_settings.showCurrentLabel }); } primary_menu_reinit(); $('#primary-menu > li').hover(function(){ var $items=$('ul:not(.minicart ul), .minicart, .minisearch', this); $items.removeClass('invert vertical-invert'); if(!$(this).hasClass('megamenu-enable')){ $items.css({top: ''}); } if($(this).hasClass('megamenu-enable') || $(this).closest('.header-layout-overlay').length || $(this).closest('.mobile-menu-layout-overlay').length&&isResponsiveMenuVisible()){ return; } var topItemTranslate=0; if($('>ul', this).css('transform')){ topItemTranslate=parseInt($('>ul', this).css('transform').split(',')[5]); } if(isNaN(topItemTranslate)){ topItemTranslate=0; } var windowScroll=$(window).scrollTop(), siteHeaderOffset=$('#site-header').offset(), siteHeaderOffsetTop=siteHeaderOffset.top - windowScroll, siteHeaderHeight=$('#site-header').outerHeight(); $items.each(function(){ var $item=$(this); var self=this; var itemOffset=$item.offset(), itemOffsetTop=itemOffset.top - windowScroll, itemOffsetLeft=itemOffset.left; if(itemOffsetLeft - $('#page').offset().left + $item.outerWidth() > $('#page').width()){ $item.addClass('invert'); } if(isVerticalMenu||isPerspectiveMenu||isHamburgerMenu){ if(itemOffsetTop - topItemTranslate + $item.outerHeight() > $(window).height()){ $item.addClass('vertical-invert'); var itemOffsetFix=itemOffsetTop - topItemTranslate + $item.outerHeight() - $(window).height(); if(itemOffsetTop - topItemTranslate - itemOffsetFix < 0){ itemOffsetFix=0; } $item.css({ top: -itemOffsetFix + 'px' }); }}else{ if(itemOffsetTop - topItemTranslate + $item.outerHeight() > $(window).height()){ $item.addClass('vertical-invert'); var itemOffsetFix=itemOffsetTop - topItemTranslate + $item.outerHeight() - $(window).height(); if(itemOffsetTop - topItemTranslate - itemOffsetFix < siteHeaderOffsetTop + siteHeaderHeight){ itemOffsetFix -=siteHeaderOffsetTop + siteHeaderHeight - (itemOffsetTop - topItemTranslate - itemOffsetFix); if(itemOffsetFix < 0){ itemOffsetFix=0; }} $item.css({ top: -itemOffsetFix + 'px' }); }} }); }, function(){} ); $('.hamburger-toggle').click(function(e){ e.preventDefault(); $(this).closest('#primary-navigation').toggleClass('hamburger-active'); $('.hamburger-overlay').toggleClass('active'); }); $('.overlay-toggle, .mobile-menu-layout-overlay .menu-toggle').click(function(e){ e.preventDefault(); if($('.menu-overlay').hasClass('active')){ $('.menu-overlay').removeClass('active'); $('.primary-navigation').addClass('close'); $('.primary-navigation').one('webkitTransitionEnd otransitionend oTransitionEnd msTransitionEnd transitionend', function(e){ $('.primary-navigation').removeClass('overlay-active close'); $('.overlay-menu-wrapper').removeClass('active'); }); }else{ $('.overlay-menu-wrapper').addClass('active'); $('.primary-navigation').off('webkitTransitionEnd otransitionend oTransitionEnd msTransitionEnd transitionend'); $('.primary-navigation').addClass('overlay-active').removeClass('close'); if(isResponsiveMenuVisible()){ $('#site-header').removeClass('hidden'); $('.menu-overlay').addClass('mobile'); }else{ $('.menu-overlay').removeClass('mobile'); } $('.menu-overlay').addClass('active'); }}); $('.mobile-menu-layout-slide-horizontal .primary-navigation #primary-menu li.menu-item-current, .mobile-menu-layout-slide-vertical .primary-navigation #primary-menu li.menu-item-current').each(function(){ $(this).addClass('opened'); $('> ul', this).show(); }); $('.mobile-menu-layout-slide-horizontal .menu-toggle, .mobile-menu-layout-slide-vertical .menu-toggle, .mobile-menu-slide-wrapper .mobile-menu-slide-close').click(function(e){ e.preventDefault(); $('#site-header').removeClass('hidden'); $('.mobile-menu-slide-wrapper').one('webkitTransitionEnd otransitionend oTransitionEnd msTransitionEnd transitionend', function(e){ $(this).removeClass('animation'); }); $('.mobile-menu-slide-wrapper').addClass('animation').toggleClass('opened'); }); $('.mobile-menu-layout-slide-horizontal .primary-navigation #primary-menu .menu-item-parent-toggle, .mobile-menu-layout-slide-vertical .primary-navigation #primary-menu .menu-item-parent-toggle').on('click', function(e){ e.preventDefault(); var self=this; $(this).closest('li').toggleClass('opened'); $(this).siblings('ul').slideToggle(200, function(){ if(!$(self).closest('li').hasClass('opened')){ $(self).siblings('ul').find('li').removeClass('opened'); $(self).siblings('ul').css('display', ''); $(self).siblings('ul').find('ul').css('display', ''); }}); }); $('.header-layout-overlay #primary-menu a, .mobile-menu-layout-overlay .primary-navigation #primary-menu .menu-item-parent-toggle').on('click', function(e){ if(!$('#primary-menu').hasClass('no-responsive')&&!$(this).hasClass('menu-item-parent-toggle')){ return; } var $itemLink=$(this); var $item=$itemLink.closest('li'); if($item.hasClass('menu-item-parent')&&($item.closest('ul').hasClass('nav-menu')||$item.parent().closest('li').hasClass('menu-overlay-item-open'))){ e.preventDefault(); if($item.hasClass('menu-overlay-item-open')){ $(' > ul, .menu-overlay-item-open > ul', $item).each(function(){ $(this).css({height: $(this).outerHeight()+'px'}); }); setTimeout(function(){ $(' > ul, .menu-overlay-item-open > ul', $item).css({height: ''}); $('.menu-overlay-item-open', $item).add($item).removeClass('menu-overlay-item-open'); }, 50); }else{ var $oldActive=$('.primary-navigation .menu-overlay-item-open').not($item.parents()); $('> ul', $oldActive).not($item.parents()).each(function(){ $(this).css({height: $(this).outerHeight()+'px'}); }); setTimeout(function(){ $('> ul', $oldActive).not($item.parents()).css({height: ''}); $oldActive.removeClass('menu-overlay-item-open'); }, 50); $('> ul', $item).css({height: 'auto'}); var itemHeight=$('> ul', $item).outerHeight(); $('> ul', $item).css({height: ''}); setTimeout(function(){ $('> ul', $item).css({height: itemHeight+'px'}); $item.addClass('menu-overlay-item-open'); $('> ul', $item).one('webkitTransitionEnd otransitionend oTransitionEnd msTransitionEnd transitionend', function(){ $('> ul', $item).css({height: 'auto'}); }); }, 50); }} }); $('.vertical-toggle').click(function(e){ e.preventDefault(); $(this).closest('#site-header-wrapper').toggleClass('vertical-active'); }); $(function(){ $(window).resize(function(){ if(window.menuResizeTimeoutHandler){ clearTimeout(window.menuResizeTimeoutHandler); } window.menuResizeTimeoutHandler=setTimeout(primary_menu_reinit, 50); }); }); $('#primary-navigation a').click(function(e){ var $item=$(this); if($('#primary-menu').hasClass('no-responsive')&&window.gemSettings.isTouch&&$item.next('ul').length){ e.preventDefault(); }}); })(jQuery); (function($){ var transitionEndEvent={ 'WebkitTransition': 'webkitTransitionEnd', 'MozTransition': 'transitionend', 'OTransition': 'oTransitionEnd', 'msTransition': 'MSTransitionEnd', 'transition': 'transitionend' }[ window.supportedTransition ], clickEventName='click'; function initPerspective(){ var $menuToggleButton=$('.perspective-toggle'), $perspective=$('#thegem-perspective'), $page=$('#page'); if(!$perspective.length){ return false; } $menuToggleButton.on(clickEventName, function(event){ if($perspective.hasClass('animate')){ return; } var documentScrollTop=$(window).scrollTop(); $(window).scrollTop(0); var pageWidth=$page.outerWidth(), perspectiveWidth=$perspective.outerWidth(), pageCss={ width: pageWidth }; if(pageWidth < perspectiveWidth){ pageCss.marginLeft=$page[0].offsetLeft; } $page.css(pageCss); $perspective.addClass('modalview animate'); $page.scrollTop(documentScrollTop); event.preventDefault(); event.stopPropagation ? event.stopPropagation():(event.cancelBubble=true); }); $('#primary-navigation').on(clickEventName, function(event){ if(isResponsiveMenuVisible()){ return; } event.stopPropagation ? event.stopPropagation():(event.cancelBubble=true); }); $('#thegem-perspective .perspective-menu-close').on(clickEventName, function(event){ $perspective.click(); event.preventDefault(); event.stopPropagation ? event.stopPropagation():(event.cancelBubble=true); }); $perspective.on(clickEventName, function(event){ if(!$perspective.hasClass('animate')){ return; } var onEndTransitionCallback=function(event){ if(window.supportsTransitions&&(event.originalEvent.target.id!=='page'||event.originalEvent.propertyName.indexOf('transform')==-1)){ return; } $(this).off(transitionEndEvent, onEndTransitionCallback); var pageScrollTop=$page.scrollTop(); $perspective.removeClass('modalview'); $page.css({ width: '', marginLeft: '' }); $(window).scrollTop(pageScrollTop); $page.scrollTop(0); $(window).resize(); }; if(window.supportsTransitions){ $perspective.on(transitionEndEvent, onEndTransitionCallback); }else{ onEndTransitionCallback.call(); } $perspective.removeClass('animate'); }); } initPerspective(); })(jQuery); (function (document, navigator, CACHE, IE9TO11){ if(IE9TO11) document.addEventListener('DOMContentLoaded', function (){ [].forEach.call(document.querySelectorAll('use'), function (use){ var svg=use.parentNode, url=use.getAttribute('xlink:href').split('#'), url_root=url[0], url_hash=url[1], xhr=CACHE[url_root]=CACHE[url_root]||new XMLHttpRequest(); if(!xhr.s){ xhr.s=[]; xhr.open('GET', url_root); xhr.onload=function (){ var x=document.createElement('x'), s=xhr.s; x.innerHTML=xhr.responseText; xhr.onload=function (){ s.splice(0).map(function (array){ var g=x.querySelector('#' + array[2]); if(g) array[0].replaceChild(g.cloneNode(true), array[1]); }); }; xhr.onload(); }; xhr.send(); } xhr.s.push([svg, use, url_hash]); if(xhr.responseText) xhr.onload(); }); }); })( document, navigator, {}, /Trident\/[567]\b/.test(navigator.userAgent) ); (function($){ $.fn.checkbox=function(){ $(this).each(function(){ var $el=$(this); var typeClass=$el.attr('type'); $el.hide(); $el.next('.'+typeClass+'-sign').remove(); var $checkbox=$('').insertAfter($el); $checkbox.click(function(){ if($checkbox.closest('label').length) return; if($el.attr('type')=='radio'){ $el.prop('checked', true).trigger('change').trigger('click'); }else{ $el.prop('checked', !($el.is(':checked'))).trigger('change'); }}); $el.change(function(){ $('input[name="'+$el.attr('name')+'"]').each(function(){ if($(this).is(':checked')){ $(this).next('.'+$(this).attr('type')+'-sign').addClass('checked'); }else{ $(this).next('.'+$(this).attr('type')+'-sign').removeClass('checked'); }}); }); if($el.is(':checked')){ $checkbox.addClass('checked'); }else{ $checkbox.removeClass('checked'); }}); } $.fn.combobox=function(){ $(this).each(function(){ var $el=$(this); $el.insertBefore($el.parent('.combobox-wrapper')); $el.next('.combobox-wrapper').remove(); $el.css({ 'opacity': 0, 'position': 'absolute', 'left': 0, 'right': 0, 'top': 0, 'bottom': 0 }); var $comboWrap=$('').insertAfter($el); var $text=$('').appendTo($comboWrap); var $button=$('').appendTo($comboWrap); $el.appendTo($comboWrap); $el.change(function(){ $text.text($('option:selected', $el).text()); }); $text.text($('option:selected', $el).text()); $el.comboWrap=$comboWrap; }); }})(jQuery); jQuery.easing['jswing']=jQuery.easing['swing']; jQuery.extend(jQuery.easing, { def: 'easeOutQuad', swing: function (x, t, b, c, d){ return jQuery.easing[jQuery.easing.def](x, t, b, c, d); }, easeInQuad: function (x, t, b, c, d){ return c*(t/=d)*t + b; }, easeOutQuad: function (x, t, b, c, d){ return -c *(t/=d)*(t-2) + b; }, easeInOutQuad: function (x, t, b, c, d){ if((t/=d/2) < 1) return c/2*t*t + b; return -c/2 * ((--t)*(t-2) - 1) + b; }, easeInCubic: function (x, t, b, c, d){ return c*(t/=d)*t*t + b; }, easeOutCubic: function (x, t, b, c, d){ return c*((t=t/d-1)*t*t + 1) + b; }, easeInOutCubic: function (x, t, b, c, d){ if((t/=d/2) < 1) return c/2*t*t*t + b; return c/2*((t-=2)*t*t + 2) + b; }, easeInQuart: function (x, t, b, c, d){ return c*(t/=d)*t*t*t + b; }, easeOutQuart: function (x, t, b, c, d){ return -c * ((t=t/d-1)*t*t*t - 1) + b; }, easeInOutQuart: function (x, t, b, c, d){ if((t/=d/2) < 1) return c/2*t*t*t*t + b; return -c/2 * ((t-=2)*t*t*t - 2) + b; }, easeInQuint: function (x, t, b, c, d){ return c*(t/=d)*t*t*t*t + b; }, easeOutQuint: function (x, t, b, c, d){ return c*((t=t/d-1)*t*t*t*t + 1) + b; }, easeInOutQuint: function (x, t, b, c, d){ if((t/=d/2) < 1) return c/2*t*t*t*t*t + b; return c/2*((t-=2)*t*t*t*t + 2) + b; }, easeInSine: function (x, t, b, c, d){ return -c * Math.cos(t/d * (Math.PI/2)) + c + b; }, easeOutSine: function (x, t, b, c, d){ return c * Math.sin(t/d * (Math.PI/2)) + b; }, easeInOutSine: function (x, t, b, c, d){ return -c/2 * (Math.cos(Math.PI*t/d) - 1) + b; }, easeInExpo: function (x, t, b, c, d){ return (t==0) ? b:c * Math.pow(2, 10 * (t/d - 1)) + b; }, easeOutExpo: function (x, t, b, c, d){ return (t==d) ? b+c:c * (-Math.pow(2, -10 * t/d) + 1) + b; }, easeInOutExpo: function (x, t, b, c, d){ if(t==0) return b; if(t==d) return b+c; if((t/=d/2) < 1) return c/2 * Math.pow(2, 10 * (t - 1)) + b; return c/2 * (-Math.pow(2, -10 * --t) + 2) + b; }, easeInCirc: function (x, t, b, c, d){ return -c * (Math.sqrt(1 - (t/=d)*t) - 1) + b; }, easeOutCirc: function (x, t, b, c, d){ return c * Math.sqrt(1 - (t=t/d-1)*t) + b; }, easeInOutCirc: function (x, t, b, c, d){ if((t/=d/2) < 1) return -c/2 * (Math.sqrt(1 - t*t) - 1) + b; return c/2 * (Math.sqrt(1 - (t-=2)*t) + 1) + b; }, easeInElastic: function (x, t, b, c, d){ var s=1.70158;var p=0;var a=c; if(t==0) return b; if((t/=d)==1) return b+c; if(!p) p=d*.3; if(a < Math.abs(c)){ a=c; var s=p/4; } else var s=p/(2*Math.PI) * Math.asin (c/a); return -(a*Math.pow(2,10*(t-=1)) * Math.sin((t*d-s)*(2*Math.PI)/p)) + b; }, easeOutElastic: function (x, t, b, c, d){ var s=1.70158;var p=0;var a=c; if(t==0) return b; if((t/=d)==1) return b+c; if(!p) p=d*.3; if(a < Math.abs(c)){ a=c; var s=p/4; } else var s=p/(2*Math.PI) * Math.asin (c/a); return a*Math.pow(2,-10*t) * Math.sin((t*d-s)*(2*Math.PI)/p) + c + b; }, easeInOutElastic: function (x, t, b, c, d){ var s=1.70158;var p=0;var a=c; if(t==0) return b; if((t/=d/2)==2) return b+c; if(!p) p=d*(.3*1.5); if(a < Math.abs(c)){ a=c; var s=p/4; } else var s=p/(2*Math.PI) * Math.asin (c/a); if(t < 1) return -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin((t*d-s)*(2*Math.PI)/p)) + b; return a*Math.pow(2,-10*(t-=1)) * Math.sin((t*d-s)*(2*Math.PI)/p)*.5 + c + b; }, easeInBack: function (x, t, b, c, d, s){ if(s==undefined) s=1.70158; return c*(t/=d)*t*((s+1)*t - s) + b; }, easeOutBack: function (x, t, b, c, d, s){ if(s==undefined) s=1.70158; return c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b; }, easeInOutBack: function (x, t, b, c, d, s){ if(s==undefined) s=1.70158; if((t/=d/2) < 1) return c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b; return c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b; }, easeInBounce: function (x, t, b, c, d){ return c - jQuery.easing.easeOutBounce (x, d-t, 0, c, d) + b; }, easeOutBounce: function (x, t, b, c, d){ if((t/=d) < (1/2.75)){ return c*(7.5625*t*t) + b; }else if(t < (2/2.75)){ return c*(7.5625*(t-=(1.5/2.75))*t + .75) + b; }else if(t < (2.5/2.75)){ return c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b; }else{ return c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b; }}, easeInOutBounce: function (x, t, b, c, d){ if(t < d/2) return jQuery.easing.easeInBounce (x, t*2, 0, c, d) * .5 + b; return jQuery.easing.easeOutBounce (x, t*2-d, 0, c, d) * .5 + c*.5 + b; }}); (function($){ function HeaderAnimation(el, options){ this.el=el; this.$el=$(el); this.options={ startTop: 1 }; $.extend(this.options, options); this.initialize(); } HeaderAnimation.prototype={ initialize: function(){ var self=this; this.$page=$('#page').length ? $('#page'):$('body'); this.$wrapper=$('#site-header-wrapper'); this.$topArea=$('#top-area'); this.topAreaInSiteHeader=$('#site-header #top-area').length > 0; this.$headerMain=$('.header-main', this.$el); this.hasAdminBar=document.body.className.indexOf('admin-bar')!=-1; this.adminBarOffset=0; this.adminBarHeight=0; this.topOffset=0; this.oldScrollY=0; this.isResponsive=null; this.isResponsiveOld=null; this.hideWrapper=this.$wrapper.hasClass('site-header-wrapper-transparent'); this.videoBackground=$('.page-title-block .gem-video-background').length&&$('.page-title-block .gem-video-background').data('headerup'); if(this.$el.hasClass('header-on-slideshow')&&$('#main-content > *').first().is('.gem-slideshow, .block-slideshow')){ this.$wrapper.css({position: 'absolute'}); } if(this.$el.hasClass('header-on-slideshow')&&$('#main-content > *').first().is('.gem-slideshow, .block-slideshow')){ this.$wrapper.addClass('header-on-slideshow'); }else{ this.$el.removeClass('header-on-slideshow'); } if(this.videoBackground){ this.$el.addClass('header-on-slideshow'); this.$wrapper.addClass('header-on-slideshow'); } this.initHeader(); $(document).ready(function(){ self.updateAdminBarInfo(); self.updateStartTop(); }); $(window).scroll(function(){ self.scrollHandler(); }); if($('#thegem-perspective').length){ this.$page.scroll(function(){ self.scrollHandler(); }); } $(window).resize(function(){ setTimeout(function(){ self.initHeader(); self.scrollHandler(); }, 0); }); }, initHeader: function(){ this.isResponsiveOld=this.isResponsive; this.isResponsive=window.isResponsiveMenuVisible(); if(this.isResponsive){ this.$el.addClass('shrink-mobile'); }else{ this.$el.removeClass('shrink-mobile'); } this.updateAdminBarInfo(); this.updateStartTop(); if(this.isResponsive!=this.isResponsiveOld){ this.initializeStyles(); }}, updateAdminBarInfo: function(){ if(this.hasAdminBar){ this.adminBarHeight=$('#wpadminbar').outerHeight(); this.adminBarOffset=this.hasAdminBar&&$('#wpadminbar').css('position')=='fixed' ? parseInt(this.adminBarHeight):0; }}, updateStartTop: function(){ if(this.$topArea.length&&this.$topArea.is(':visible')&&!this.topAreaInSiteHeader){ this.options.startTop=this.$topArea.outerHeight(); }else{ this.options.startTop=1; } if(this.hasAdminBar&&this.adminBarOffset==0){ this.options.startTop +=this.adminBarHeight; }}, setMargin: function($img){ var $small=$img.siblings('img.small'), w=0; if(this.$headerMain.hasClass('logo-position-right')){ w=$small.width(); }else if(this.$headerMain.hasClass('logo-position-center')||this.$headerMain.hasClass('logo-position-menu_center')){ w=$img.width(); var smallWidth=$small.width(), offset=(w - smallWidth) / 2; w=smallWidth + offset; $small.css('margin-right', offset + 'px'); } if(!w){ w=$img.width(); } $small.css('margin-left', '-' + w + 'px'); $img.parent().css('min-width', w + 'px'); $small.show(); }, initializeStyles: function(){ var self=this; if(this.$headerMain.hasClass('logo-position-menu_center')){ var $img=$('#primary-navigation .menu-item-logo a .logo img.default', this.$el); }else{ var $img=$('.site-title a .logo img:visible', this.$el); } if($img.length&&$img[0].complete){ self.setMargin($img); self.initializeHeight(); }else{ $img.on('load error', function(){ self.setMargin($img); self.initializeHeight(); }); }}, initializeHeight: function(){ if(this.hideWrapper){ return false; } that=this; setTimeout(function(){ var shrink=that.$el.hasClass('shrink'); if(shrink){ that.$el.removeClass('shrink').addClass('without-transition'); } var elHeight=that.$el.outerHeight(); that.$wrapper.height(elHeight); if(shrink){ that.$el.addClass('shrink').removeClass('without-transition'); }}, 50); }, scrollHandler: function(){ var self=this, scrollY=this.getScrollY(); if(scrollY >=this.options.startTop){ if(!this.$el.hasClass('shrink')){ var shrinkClass='shrink fixed'; if(window.gemSettings.fillTopArea){ shrinkClass +=' fill'; } this.$el.addClass(shrinkClass) } var top=0; if(this.$page[0].scrollTop > 0){ top +=this.$page[0].scrollTop; }else{ if(this.hasAdminBar){ top +=this.adminBarOffset; }} this.$el.css({ top: top!=0 ? top:'' }); }else{ if(this.$el.hasClass('shrink')){ this.$el.removeClass('shrink fixed') } if(this.hasAdminBar){ this.$el.css({ top: '' }); }} if(this.isResponsive&&!this.$wrapper.hasClass('sticky-header-on-mobile')){ if(!$('.mobile-menu-slide-wrapper.opened').length&&!$('#primary-menu.dl-menuopen').length&&!$('.menu-overlay.active').length){ if(scrollY - this.oldScrollY > 0&&scrollY > 300&&!this.$el.hasClass('hidden')){ self.$el.addClass('hidden'); } if(scrollY - this.oldScrollY < 0&&this.$el.hasClass('hidden')){ self.$el.removeClass('hidden'); }}else{ self.$el.removeClass('hidden'); }} this.oldScrollY=scrollY; }, getScrollY: function(){ return window.pageYOffset||document.documentElement.scrollTop + this.$page[0].scrollTop; }, }; $.fn.headerAnimation=function(options){ options=options||{}; return new HeaderAnimation(this.get(0), options); };})(jQuery); (function($){ var prefixes='Webkit Moz ms Ms O'.split(' '); var docElemStyle=document.documentElement.style; function getStyleProperty(propName){ if(!propName){ return; } if(typeof docElemStyle[ propName ]==='string'){ return propName; } propName=propName.charAt(0).toUpperCase() + propName.slice(1); var prefixed; for(var i=0, len=prefixes.length; i < len; i++){ prefixed=prefixes[i] + propName; if(typeof docElemStyle[ prefixed ]==='string'){ return prefixed; }} } var transitionProperty=getStyleProperty('transition'); var transitionEndEvent={ WebkitTransition: 'webkitTransitionEnd', MozTransition: 'transitionend', OTransition: 'otransitionend', transition: 'transitionend' }[ transitionProperty ]; function getElementData(element, attributeNameCamel, attributeName, defaultValue){ if(element.dataset!=undefined){ if(element.dataset[attributeNameCamel]!=undefined){ return element.dataset[attributeNameCamel]; }else{ var value=$(element).data(attributeName); if(value==undefined){ return defaultValue; } return value; } return element.dataset[attributeNameCamel]!=undefined ? element.dataset[attributeNameCamel]:defaultValue; } var value=this.getAttribute(attributeName); return value!=null&&value!='' ? value:defaultValue; } function Queue(lazyInstance){ this.lazyInstance=lazyInstance; this.queue=[]; this.running=false; this.initTimer(); } Queue.prototype={ add: function(element){ this.queue.push(element); }, next: function(){ if(this.running||this.queue.length==0) return false; this.running=true; var element=this.queue.shift(); if(element.isOnTop()){ element.forceShow(); this.finishPosition(); return; } element.startAnimation(); }, finishPosition: function(){ this.running=false; this.next(); }, initTimer: function(){ var self=this; this.timer=document.createElement('div'); this.timer.className='lazy-loading-timer-element'; document.body.appendChild(this.timer); this.timerCallback=function(){}; $(this.timer).bind(transitionEndEvent, function(event){ self.timerCallback(); }); this.timer.className +=' start-timer'; }, startTimer: function(callback){ this.timerCallback=callback; if(this.timer.className.indexOf('start-timer')!=-1){ this.timer.className=this.timer.className.replace(' start-timer', ''); }else{ this.timer.className +=' start-timer'; }} }; function Group(el, lazyInstance){ this.el=el; this.$el=$(el); this.lazyInstance=lazyInstance; this.elements=[]; this.showed=false; this.finishedElementsCount=0; this.position={ left: 0, top: 0 }; this.options={ offset: parseFloat(getElementData(el, 'llOffset', 'll-offset', 0.7)), itemDelay: getElementData(el, 'llItemDelay', 'll-item-delay', -1), isFirst: lazyInstance.hasHeaderVisuals&&this.el.className.indexOf('lazy-loading-first')!=-1, force: getElementData(el, 'llForceStart', 'll-force-start', 0)!=0, finishDelay: getElementData(el, 'llFinishDelay', 'll-finish-delay', 200) }; this.$el.addClass('lazy-loading-before-start-animation'); } timeNow=function (){ var newDate=new Date(); return ((newDate.getHours() < 10)?"0":"") + newDate.getHours() +":"+ ((newDate.getMinutes() < 10)?"0":"") + newDate.getMinutes() +":"+ ((newDate.getSeconds() < 10)?"0":"") + newDate.getSeconds(); } Group.prototype={ addElement: function(element){ this.elements.push(element); }, setElements: function(elements){ this.elements=elements; }, getElements: function(){ return this.elements; }, getElementsCount: function(){ return this.elements.length; }, getItemDelay: function(){ return this.options.itemDelay; }, updatePosition: function(){ this.position=$(this.el).offset(); }, getPosition: function(){ return this.position; }, isShowed: function(){ return this.showed; }, isVisible: function(){ if(this.options.force) return true; return (this.position.top + this.options.offset * this.el.offsetHeight <=this.lazyInstance.getWindowBottom()) && (this.position.top + (1 - this.options.offset) * this.el.offsetHeight >=this.lazyInstance.getWindowTop()); }, isOnTop: function(){ return false; }, show: function(){ this.lazyInstance.queue.add(this); this.showed=true; }, forceShow: function(){ this.showed=true; this.el.className=this.el.className.replace('lazy-loading-before-start-animation', 'lazy-loading-end-animation'); }, startAnimation: function(){ var self=this; self.elements.forEach(function(element){ element.$el.bind(transitionEndEvent, function(event){ var target=event.target||event.srcElement; if(target!=element.el){ return; } element.$el.unbind(transitionEndEvent); self.finishedElementsCount++; if(self.finishedElementsCount >=self.getElementsCount()){ var className=self.el.className .replace('lazy-loading-before-start-animation', '') .replace('lazy-loading-start-animation', 'lazy-loading-end-animation'); self.el.className=className; }}); element.show(); }); if(self.options.finishDelay > 0){ self.lazyInstance.queue.startTimer(function(){ self.finishAnimation(); }); }else{ self.finishAnimation(); } self.$el.addClass('lazy-loading-start-animation'); }, finishAnimation: function(){ this.lazyInstance.queue.finishPosition(); }}; function Element(el, group){ this.el=el; this.$el=$(el); this.group=group; this.options={ effect: getElementData(el, 'llEffect', 'll-effect', ''), delay: getElementData(el, 'llItemDelay', 'll-item-delay', group.getItemDelay()), actionFunction: getElementData(el, 'llActionFunc', 'll-action-func', '') }; this.options.queueType=this.options.delay!=-1 ? 'async':'sync'; if(this.options.effect!=''){ this.$el.addClass('lazy-loading-item-' + this.getEffectClass()); }} Element.prototype={ effects: { action: function(element){ if(!element.options.actionFunction || window[element.options.actionFunction]==null || window[element.options.actionFunction]==undefined){ return; } window[element.options.actionFunction](element.el); }}, getEffectClass: function(){ var effectClass=this.options.effect; if(effectClass=='drop-right-without-wrap'||effectClass=='drop-right-unwrap'){ return 'drop-right'; } return effectClass; }, show: function(){ if(this.effects[this.options.effect]!=undefined){ this.effects[this.options.effect](this); }} }; LazyLoading.prototype={ initialize: function(){ this.queue=new Queue(this); this.groups=[]; this.hasHeaderVisuals=$('.ls-wp-container').length > 0; this.$checkPoint=$('#lazy-loading-point'); if(!this.$checkPoint.length){ $('
    ').insertAfter('#main'); this.$checkPoint=$('#lazy-loading-point'); } this.windowBottom=0; this.windowHeight=0; this.scrollHandle=false; this.perspectiveOpened=false; this.$page=$('#page'); $(document).ready(this.documentReady.bind(this)); }, documentReady: function(){ var self=this; this.updateCheckPointOffset(); this.updateWindowHeight(); this.buildGroups(); this.windowScroll(); $(window).resize(this.windowResize.bind(this)); $(window).scroll(this.windowScroll.bind(this)); $(window).on('perspective-modalview-opened', function(){ self.perspectiveOpened=true; }); $(window).on('perspective-modalview-closed', function(){ self.perspectiveOpened=false; }); }, windowResize: function(){ this.updateWindowHeight(); this.updateGroups(); this.windowScroll(); }, buildGroups: function(){ var self=this; self.groups=[]; $('.lazy-loading').each(function(){ var group=new Group(this, self); group.updatePosition(); $('.lazy-loading-item', this).each(function(){ group.addElement(new Element(this, group)); }); if(group.getElementsCount() > 0){ self.groups.push(group); }}); }, updateGroups: function(){ var self=this; self.groups.forEach(function(group){ if(group.isShowed()){ return; } group.updatePosition(); }); }, windowScroll: function(){ if(this.scrollHandle){ } this.scrollHandle=true; this.calculateWindowTop(); this.calculateWindowBottom(); if(this.isGroupsPositionsChanged()){ this.updateGroups(); } this.groups.forEach(function(group){ if(group.isShowed()){ return; } if(group.isOnTop()){ group.forceShow(); } if(group.isVisible()){ group.show(); }}); this.scrollHandle=false; this.queue.next(); }, calculateWindowBottom: function(){ if(self.perspectiveOpened){ this.windowBottom=this.windowTop + this.$page.height(); }else{ this.windowBottom=this.windowTop + this.windowHeight; }}, calculateWindowTop: function(){ if(self.perspectiveOpened){ this.windowTop=this.$page.scrollTop(); }else{ this.windowTop=$(window).scrollTop(); }}, getWindowTop: function(){ return this.windowTop; }, getWindowBottom: function(){ return this.windowBottom; }, updateWindowHeight: function(){ this.windowHeight=$(window).height(); }, getWindowHeight: function(){ return this.windowHeight; }, updateCheckPointOffset: function(){ this.checkPointOffset=this.$checkPoint.length ? this.$checkPoint.offset().top:0; }, isGroupsPositionsChanged: function(){ var oldCheckPointOffset=this.checkPointOffset; this.updateCheckPointOffset(); return Math.abs(this.checkPointOffset - oldCheckPointOffset) > 1; }, getLastGroup: function(){ if(!this.groups.length){ return null; } return this.groups[this.groups.length - 1]; }}; function LazyLoading(options){ this.options={}; $.extend(this.options, options); this.initialize(); } $.lazyLoading=function(options){ return new LazyLoading(options); }})(jQuery); (function($, window, document, Math, undefined){ var div=document.createElement("div"), divStyle=div.style, suffix="Transform", testProperties=[ "O" + suffix, "ms" + suffix, "Webkit" + suffix, "Moz" + suffix ], i=testProperties.length, supportProperty, supportMatrixFilter, supportFloat32Array="Float32Array" in window, propertyHook, propertyGet, rMatrix=/Matrix([^)]*)/, rAffine=/^\s*matrix\(\s*1\s*,\s*0\s*,\s*0\s*,\s*1\s*(?:,\s*0(?:px)?\s*){2}\)\s*$/, _transform="transform", _transformOrigin="transformOrigin", _translate="translate", _rotate="rotate", _scale="scale", _skew="skew", _matrix="matrix"; while(i--){ if(testProperties[i] in divStyle){ $.support[_transform]=supportProperty=testProperties[i]; $.support[_transformOrigin]=supportProperty + "Origin"; continue; }} if(!supportProperty){ $.support.matrixFilter=supportMatrixFilter=divStyle.filter===""; } $.cssNumber[_transform]=$.cssNumber[_transformOrigin]=true; if(supportProperty&&supportProperty!=_transform){ $.cssProps[_transform]=supportProperty; $.cssProps[_transformOrigin]=supportProperty + "Origin"; if(supportProperty=="Moz" + suffix){ propertyHook={ get: function(elem, computed){ return (computed ? $.css(elem, supportProperty).split("px").join(""): elem.style[supportProperty] ); }, set: function(elem, value){ elem.style[supportProperty]=/matrix\([^)p]*\)/.test(value) ? value.replace(/matrix((?:[^,]*,){4})([^,]*),([^)]*)/, _matrix+"$1$2px,$3px"): value; }}; }else if(/^1\.[0-5](?:\.|$)/.test($.fn.jquery)){ propertyHook={ get: function(elem, computed){ return (computed ? $.css(elem, supportProperty.replace(/^ms/, "Ms")): elem.style[supportProperty] ); }};} /* TODO: leverage hardware acceleration of 3d transform in Webkit only else if(supportProperty=="Webkit" + suffix&&support3dTransform){ propertyHook={ set: function(elem, value){ elem.style[supportProperty] = value.replace(); }} }*/ }else if(supportMatrixFilter){ propertyHook={ get: function(elem, computed, asArray){ var elemStyle=(computed&&elem.currentStyle ? elem.currentStyle:elem.style), matrix, data; if(elemStyle&&rMatrix.test(elemStyle.filter)){ matrix=RegExp.$1.split(","); matrix=[ matrix[0].split("=")[1], matrix[2].split("=")[1], matrix[1].split("=")[1], matrix[3].split("=")[1] ]; }else{ matrix=[1,0,0,1]; } if(! $.cssHooks[_transformOrigin]){ matrix[4]=elemStyle ? parseInt(elemStyle.left, 10)||0:0; matrix[5]=elemStyle ? parseInt(elemStyle.top, 10)||0:0; }else{ data=$._data(elem, "transformTranslate", undefined); matrix[4]=data ? data[0]:0; matrix[5]=data ? data[1]:0; } return asArray ? matrix:_matrix+"(" + matrix + ")"; }, set: function(elem, value, animate){ var elemStyle=elem.style, currentStyle, Matrix, filter, centerOrigin; if(!animate){ elemStyle.zoom=1; } value=matrix(value); Matrix=[ "Matrix("+ "M11="+value[0], "M12="+value[2], "M21="+value[1], "M22="+value[3], "SizingMethod='auto expand'" ].join(); filter=(currentStyle=elem.currentStyle)&¤tStyle.filter||elemStyle.filter||""; elemStyle.filter=rMatrix.test(filter) ? filter.replace(rMatrix, Matrix) : filter + " progid:DXImageTransform.Microsoft." + Matrix + ")"; if(! $.cssHooks[_transformOrigin]){ if((centerOrigin=$.transform.centerOrigin)){ elemStyle[centerOrigin=="margin" ? "marginLeft":"left"]=-(elem.offsetWidth/2) + (elem.clientWidth/2) + "px"; elemStyle[centerOrigin=="margin" ? "marginTop":"top"]=-(elem.offsetHeight/2) + (elem.clientHeight/2) + "px"; } elemStyle.left=value[4] + "px"; elemStyle.top=value[5] + "px"; }else{ $.cssHooks[_transformOrigin].set(elem, value); }} };} if(propertyHook){ $.cssHooks[_transform]=propertyHook; } propertyGet=propertyHook&&propertyHook.get||$.css; $.fx.step.transform=function(fx){ var elem=fx.elem, start=fx.start, end=fx.end, pos=fx.pos, transform="", precision=1E5, i, startVal, endVal, unit; if(!start||typeof start==="string"){ if(!start){ start=propertyGet(elem, supportProperty); } if(supportMatrixFilter){ elem.style.zoom=1; } end=end.split("+=").join(start); $.extend(fx, interpolationList(start, end)); start=fx.start; end=fx.end; } i=start.length; while(i--){ startVal=start[i]; endVal=end[i]; unit=+false; switch(startVal[0]){ case _translate: unit="px"; case _scale: unit||(unit=""); transform=startVal[0] + "(" + Math.round((startVal[1][0] + (endVal[1][0] - startVal[1][0]) * pos) * precision) / precision + unit +","+ Math.round((startVal[1][1] + (endVal[1][1] - startVal[1][1]) * pos) * precision) / precision + unit + ")"+ transform; break; case _skew + "X": case _skew + "Y": case _rotate: transform=startVal[0] + "(" + Math.round((startVal[1] + (endVal[1] - startVal[1]) * pos) * precision) / precision +"rad)"+ transform; break; }} fx.origin&&(transform=fx.origin + transform); propertyHook&&propertyHook.set ? propertyHook.set(elem, transform, +true): elem.style[supportProperty]=transform; }; function matrix(transform){ transform=transform.split(")"); var trim=$.trim , i=-1 , l=transform.length -1 , split, prop, val , prev=supportFloat32Array ? new Float32Array(6):[] , curr=supportFloat32Array ? new Float32Array(6):[] , rslt=supportFloat32Array ? new Float32Array(6):[1,0,0,1,0,0] ; prev[0]=prev[3]=rslt[0]=rslt[3]=1; prev[1]=prev[2]=prev[4]=prev[5]=0; while ( ++i < l){ split=transform[i].split("("); prop=trim(split[0]); val=split[1]; curr[0]=curr[3]=1; curr[1]=curr[2]=curr[4]=curr[5]=0; switch (prop){ case _translate+"X": curr[4]=parseInt(val, 10); break; case _translate+"Y": curr[5]=parseInt(val, 10); break; case _translate: val=val.split(","); curr[4]=parseInt(val[0], 10); curr[5]=parseInt(val[1]||0, 10); break; case _rotate: val=toRadian(val); curr[0]=Math.cos(val); curr[1]=Math.sin(val); curr[2]=-Math.sin(val); curr[3]=Math.cos(val); break; case _scale+"X": curr[0]=+val; break; case _scale+"Y": curr[3]=val; break; case _scale: val=val.split(","); curr[0]=val[0]; curr[3]=val.length>1 ? val[1]:val[0]; break; case _skew+"X": curr[2]=Math.tan(toRadian(val)); break; case _skew+"Y": curr[1]=Math.tan(toRadian(val)); break; case _matrix: val=val.split(","); curr[0]=val[0]; curr[1]=val[1]; curr[2]=val[2]; curr[3]=val[3]; curr[4]=parseInt(val[4], 10); curr[5]=parseInt(val[5], 10); break; } rslt[0]=prev[0] * curr[0] + prev[2] * curr[1]; rslt[1]=prev[1] * curr[0] + prev[3] * curr[1]; rslt[2]=prev[0] * curr[2] + prev[2] * curr[3]; rslt[3]=prev[1] * curr[2] + prev[3] * curr[3]; rslt[4]=prev[0] * curr[4] + prev[2] * curr[5] + prev[4]; rslt[5]=prev[1] * curr[4] + prev[3] * curr[5] + prev[5]; prev=[rslt[0],rslt[1],rslt[2],rslt[3],rslt[4],rslt[5]]; } return rslt; } function unmatrix(matrix){ var scaleX , scaleY , skew , A=matrix[0] , B=matrix[1] , C=matrix[2] , D=matrix[3] ; if(A * D - B * C){ scaleX=Math.sqrt(A * A + B * B); A /=scaleX; B /=scaleX; skew=A * C + B * D; C -=A * skew; D -=B * skew; scaleY=Math.sqrt(C * C + D * D); C /=scaleY; D /=scaleY; skew /=scaleY; if(A * D < B * C){ A=-A; B=-B; skew=-skew; scaleX=-scaleX; }}else{ scaleX=scaleY=skew=0; } return [ [_translate, [+matrix[4], +matrix[5]]], [_rotate, Math.atan2(B, A)], [_skew + "X", Math.atan(skew)], [_scale, [scaleX, scaleY]] ]; } function interpolationList(start, end){ var list={ start: [], end: [] }, i=-1, l, currStart, currEnd, currType; (start=="none"||isAffine(start))&&(start=""); (end=="none"||isAffine(end))&&(end=""); if(start&&end&&!end.indexOf("matrix")&&toArray(start).join()==toArray(end.split(")")[0]).join()){ list.origin=start; start=""; end=end.slice(end.indexOf(")") +1); } if(!start&&!end){ return; } if(!start||!end||functionList(start)==functionList(end)){ start&&(start=start.split(")"))&&(l=start.length); end&&(end=end.split(")"))&&(l=end.length); while ( ++i < l-1){ start[i]&&(currStart=start[i].split("(")); end[i]&&(currEnd=end[i].split("(")); currType=$.trim(( currStart||currEnd)[0]); append(list.start, parseFunction(currType, currStart ? currStart[1]:0)); append(list.end, parseFunction(currType, currEnd ? currEnd[1]:0)); }}else{ list.start=unmatrix(matrix(start)); list.end=unmatrix(matrix(end)) } return list; } function parseFunction(type, value){ var defaultValue=+(!type.indexOf(_scale)), scaleX, cat=type.replace(/e[XY]/, "e"); switch(type){ case _translate+"Y": case _scale+"Y": value=[ defaultValue, value ? parseFloat(value): defaultValue ]; break; case _translate+"X": case _translate: case _scale+"X": scaleX=1; case _scale: value=value ? (value=value.split(","))&&[ parseFloat(value[0]), parseFloat(value.length>1 ? value[1]:type==_scale ? scaleX||value[0]:defaultValue+"") ]: [defaultValue, defaultValue]; break; case _skew+"X": case _skew+"Y": case _rotate: value=value ? toRadian(value):0; break; case _matrix: return unmatrix(value ? toArray(value):[1,0,0,1,0,0]); break; } return [[ cat, value ]]; } function isAffine(matrix){ return rAffine.test(matrix); } function functionList(transform){ return transform.replace(/(?:\([^)]*\))|\s/g, ""); } function append(arr1, arr2, value){ while(value=arr2.shift()){ arr1.push(value); }} function toRadian(value){ return ~value.indexOf("deg") ? parseInt(value,10) * (Math.PI * 2 / 360): ~value.indexOf("grad") ? parseInt(value,10) * (Math.PI/200): parseFloat(value); } function toArray(matrix){ matrix=/([^,]*),([^,]*),([^,]*),([^,]*),([^,p]*)(?:px)?,([^)p]*)(?:px)?/.exec(matrix); return [matrix[1], matrix[2], matrix[3], matrix[4], matrix[5], matrix[6]]; } $.transform={ centerOrigin: "margin" };})(jQuery, window, document, Math); !function(t){"function"==typeof define&&define.amd?define(["jquery"],t):t(jQuery)}(function(d){d.ui=d.ui||{},d.ui.version="1.12.1";var u,l,f,p,t,h,g,m,s,e,b,o,i,a,c,v,n,r,y,x,C,w="ui-effects-",k="ui-effects-style",_="ui-effects-animated",S=d;function M(t,e,n){var r=m[e.type]||{};return null==t?n||!e.def?null:e.def:(t=r.floor?~~t:parseFloat(t),isNaN(t)?e.def:r.mod?(t+r.mod)%r.mod:t<0?0:r.max")[0],b=u.each,e.style.cssText="background-color:rgba(1,1,1,.5)",s.rgba=-1o.mod/2?r+=o.mod:r-i>o.mod/2&&(r-=o.mod)),f[n]=M((i-r)*s+r,e)))}),this[e](f)},blend:function(t){if(1===this._rgba[3])return this;var e=this._rgba.slice(),n=e.pop(),r=h(t)._rgba;return h(u.map(e,function(t,e){return(1-n)*r[e]+n*t}))},toRgbaString:function(){var t="rgba(",e=u.map(this._rgba,function(t,e){return null==t?2").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}),e={width:n.width(),height:n.height()},i=document.activeElement;try{i.id}catch(t){i=document.body}return n.wrap(t),n[0]!==i&&!d.contains(n[0],i)||d(i).trigger("focus"),t=n.parent(),"static"===n.css("position")?(t.css({position:"relative"}),n.css({position:"relative"})):(d.extend(r,{position:n.css("position"),zIndex:n.css("z-index")}),d.each(["top","left","bottom","right"],function(t,e){r[e]=n.css(e),isNaN(parseInt(r[e],10))&&(r[e]="auto")}),n.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})),n.css(e),t.css(r).show()},removeWrapper:function(t){var e=document.activeElement;return t.parent().is(".ui-effects-wrapper")&&(t.parent().replaceWith(t),t[0]!==e&&!d.contains(t[0],e)||d(e).trigger("focus")),t}}),d.extend(d.effects,{version:"1.12.1",define:function(t,e,n){return n||(n=e,e="effect"),d.effects.effect[t]=n,d.effects.effect[t].mode=e,n},scaledDimensions:function(t,e,n){if(0===e)return{height:0,width:0,outerHeight:0,outerWidth:0};var r="horizontal"!==n?(e||100)/100:1,i="vertical"!==n?(e||100)/100:1;return{height:t.height()*i,width:t.width()*r,outerHeight:t.outerHeight()*i,outerWidth:t.outerWidth()*r}},clipToBox:function(t){return{width:t.clip.right-t.clip.left,height:t.clip.bottom-t.clip.top,left:t.clip.left,top:t.clip.top}},unshift:function(t,e,n){var r=t.queue();1").insertAfter(t).css({display:/^(inline|ruby)/.test(t.css("display"))?"inline-block":"block",visibility:"hidden",marginTop:t.css("marginTop"),marginBottom:t.css("marginBottom"),marginLeft:t.css("marginLeft"),marginRight:t.css("marginRight"),float:t.css("float")}).outerWidth(t.outerWidth()).outerHeight(t.outerHeight()).addClass("ui-effects-placeholder"),t.data(w+"placeholder",e)),t.css({position:n,left:r.left,top:r.top}),e},removePlaceholder:function(t){var e=w+"placeholder",n=t.data(e);n&&(n.remove(),t.removeData(e))},cleanUp:function(t){d.effects.restoreStyle(t),d.effects.removePlaceholder(t)},setTransition:function(r,t,i,o){return o=o||{},d.each(t,function(t,e){var n=r.cssUnit(e);0").appendTo("body").addClass(t.className).css({top:u.top-s,left:u.left-a,height:n.innerHeight(),width:n.innerWidth(),position:i?"fixed":"absolute"}).animate(f,t.duration,t.easing,function(){l.remove(),d.isFunction(e)&&e()})}}),d.fx.step.clip=function(t){t.clipInit||(t.start=d(t.elem).cssClip(),"string"==typeof t.end&&(t.end=W(t.end,t.elem)),t.clipInit=!0),d(t.elem).cssClip({top:t.pos*(t.end.top-t.start.top)+t.start.top,right:t.pos*(t.end.right-t.start.right)+t.start.right,bottom:t.pos*(t.end.bottom-t.start.bottom)+t.start.bottom,left:t.pos*(t.end.left-t.start.left)+t.start.left})},C={},d.each(["Quad","Cubic","Quart","Quint","Expo"],function(e,t){C[t]=function(t){return Math.pow(t,e+2)}}),d.extend(C,{Sine:function(t){return 1-Math.cos(t*Math.PI/2)},Circ:function(t){return 1-Math.sqrt(1-t*t)},Elastic:function(t){return 0===t||1===t?t:-Math.pow(2,8*(t-1))*Math.sin((80*(t-1)-7.5)*Math.PI/15)},Back:function(t){return t*t*(3*t-2)},Bounce:function(t){for(var e,n=4;t<((e=Math.pow(2,--n))-1)/11;);return 1/Math.pow(4,3-n)-7.5625*Math.pow((3*e-2)/22-t,2)}}),d.each(C,function(t,e){d.easing["easeIn"+t]=e,d.easing["easeOut"+t]=function(t){return 1-e(1-t)},d.easing["easeInOut"+t]=function(t){return t<.5?e(2*t)/2:1-e(-2*t+2)/2}}),d.effects}); !function(e){"function"==typeof define&&define.amd?define(["jquery","./effect"],e):e(jQuery)}(function(r){return r.effects.define("drop","hide",function(e,t){var i,n=r(this),o="show"===e.mode,f=e.direction||"left",c="up"===f||"down"===f?"top":"left",d="up"===f||"left"===f?"-=":"+=",u="+="==d?"-=":"+=",a={opacity:0};r.effects.createPlaceholder(n),i=e.distance||n["top"==c?"outerHeight":"outerWidth"](!0)/2,a[c]=d+i,o&&(n.css(a),a[c]=u+i,a.opacity=1),n.animate(a,{queue:!1,duration:e.duration,easing:e.easing,complete:t})})}); (function(){ var COUNT_FRAMERATE, COUNT_MS_PER_FRAME, DIGIT_FORMAT, DIGIT_HTML, DIGIT_SPEEDBOOST, DURATION, FORMAT_MARK_HTML, FORMAT_PARSER, FRAMERATE, FRAMES_PER_VALUE, MS_PER_FRAME, MutationObserver, Odometer, RIBBON_HTML, TRANSITION_END_EVENTS, TRANSITION_SUPPORT, VALUE_HTML, addClass, createFromHTML, fractionalPart, now, removeClass, requestAnimationFrame, round, transitionCheckStyles, trigger, truncate, wrapJQuery, _jQueryWrapped, _old, _ref, _ref1, __slice=[].slice; VALUE_HTML=''; RIBBON_HTML='' + VALUE_HTML + ''; DIGIT_HTML='0' + RIBBON_HTML + ''; FORMAT_MARK_HTML=''; DIGIT_FORMAT='(,ddd).dd'; FORMAT_PARSER=/^\(?([^)]*)\)?(?:(.)(d+))?$/; FRAMERATE=30; DURATION=2000; COUNT_FRAMERATE=20; FRAMES_PER_VALUE=2; DIGIT_SPEEDBOOST=.5; MS_PER_FRAME=1000 / FRAMERATE; COUNT_MS_PER_FRAME=1000 / COUNT_FRAMERATE; TRANSITION_END_EVENTS='transitionend webkitTransitionEnd oTransitionEnd otransitionend MSTransitionEnd'; transitionCheckStyles=document.createElement('div').style; TRANSITION_SUPPORT=(transitionCheckStyles.transition!=null)||(transitionCheckStyles.webkitTransition!=null)||(transitionCheckStyles.mozTransition!=null)||(transitionCheckStyles.oTransition!=null); requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame; MutationObserver=window.MutationObserver||window.WebKitMutationObserver||window.MozMutationObserver; createFromHTML=function(html){ var el; el=document.createElement('div'); el.innerHTML=html; return el.children[0]; }; removeClass=function(el, name){ return el.className=el.className.replace(new RegExp("(^|)" + (name.split(' ').join('|')) + "(|$)", 'gi'), ' '); }; addClass=function(el, name){ removeClass(el, name); return el.className +=" " + name; }; trigger=function(el, name){ var evt; if(document.createEvent!=null){ evt=document.createEvent('HTMLEvents'); evt.initEvent(name, true, true); return el.dispatchEvent(evt); }}; now=function(){ var _ref, _ref1; return (_ref=(_ref1=window.performance)!=null ? typeof _ref1.now==="function" ? _ref1.now():void 0:void 0)!=null ? _ref:+(new Date); }; round=function(val, precision){ if(precision==null){ precision=0; } if(!precision){ return Math.round(val); } val *=Math.pow(10, precision); val +=0.5; val=Math.floor(val); return val /=Math.pow(10, precision); }; truncate=function(val){ if(val < 0){ return Math.ceil(val); }else{ return Math.floor(val); }}; fractionalPart=function(val){ return val - round(val); }; _jQueryWrapped=false; (wrapJQuery=function(){ var property, _i, _len, _ref, _results; if(_jQueryWrapped){ return; } if(window.jQuery!=null){ _jQueryWrapped=true; _ref=['html', 'text']; _results=[]; for (_i=0, _len=_ref.length; _i < _len; _i++){ property=_ref[_i]; _results.push((function(property){ var old; old=window.jQuery.fn[property]; return window.jQuery.fn[property]=function(val){ var _ref1; if((val==null)||(((_ref1=this[0])!=null ? _ref1.odometer:void 0)==null)){ return old.apply(this, arguments); } return this[0].odometer.update(val); };})(property)); } return _results; }})(); setTimeout(wrapJQuery, 0); Odometer=(function(){ function Odometer(options){ var e, k, property, v, _base, _i, _len, _ref, _ref1, _ref2, _this=this; this.options=options; this.el=this.options.el; if(this.el.odometer!=null){ return this.el.odometer; } this.el.odometer=this; _ref=Odometer.options; for (k in _ref){ v=_ref[k]; if(this.options[k]==null){ this.options[k]=v; }} if((_base=this.options).duration==null){ _base.duration=DURATION; } this.MAX_VALUES=((this.options.duration / MS_PER_FRAME) / FRAMES_PER_VALUE) | 0; this.resetFormat(); this.value=this.cleanValue((_ref1=this.options.value)!=null ? _ref1:''); this.renderInside(); this.render(); try { _ref2=['innerHTML', 'innerText', 'textContent']; for (_i=0, _len=_ref2.length; _i < _len; _i++){ property=_ref2[_i]; if(this.el[property]!=null){ (function(property){ return Object.defineProperty(_this.el, property, { get: function(){ var _ref3; if(property==='innerHTML'){ return _this.inside.outerHTML; }else{ return (_ref3=_this.inside.innerText)!=null ? _ref3:_this.inside.textContent; }}, set: function(val){ return _this.update(val); }}); })(property); }} } catch (_error){ e=_error; this.watchForMutations(); } this; } Odometer.prototype.renderInside=function(){ this.inside=document.createElement('div'); this.inside.className='odometer-inside'; this.el.innerHTML=''; return this.el.appendChild(this.inside); }; Odometer.prototype.watchForMutations=function(){ var e, _this=this; if(MutationObserver==null){ return; } try { if(this.observer==null){ this.observer=new MutationObserver(function(mutations){ var newVal; newVal=_this.el.innerText; _this.renderInside(); _this.render(_this.value); return _this.update(newVal); }); } this.watchMutations=true; return this.startWatchingMutations(); } catch (_error){ e=_error; }}; Odometer.prototype.startWatchingMutations=function(){ if(this.watchMutations){ return this.observer.observe(this.el, { childList: true }); }}; Odometer.prototype.stopWatchingMutations=function(){ var _ref; return (_ref=this.observer)!=null ? _ref.disconnect():void 0; }; Odometer.prototype.cleanValue=function(val){ var _ref; if(typeof val==='string'){ val=val.replace((_ref=this.format.radix)!=null ? _ref:'.', ''); val=val.replace(/[.,]/g, ''); val=val.replace('', '.'); val=parseFloat(val, 10)||0; } return round(val, this.format.precision); }; Odometer.prototype.bindTransitionEnd=function(){ var event, renderEnqueued, _i, _len, _ref, _results, _this=this; if(this.transitionEndBound){ return; } this.transitionEndBound=true; renderEnqueued=false; _ref=TRANSITION_END_EVENTS.split(' '); _results=[]; for (_i=0, _len=_ref.length; _i < _len; _i++){ event=_ref[_i]; _results.push(this.el.addEventListener(event, function(){ if(renderEnqueued){ return true; } renderEnqueued=true; setTimeout(function(){ _this.render(); renderEnqueued=false; return trigger(_this.el, 'odometerdone'); }, 0); return true; }, false)); } return _results; }; Odometer.prototype.resetFormat=function(){ var format, fractional, parsed, precision, radix, repeating, _ref, _ref1; format=(_ref=this.options.format)!=null ? _ref:DIGIT_FORMAT; format||(format='d'); parsed=FORMAT_PARSER.exec(format); if(!parsed){ throw new Error("Odometer: Unparsable digit format"); } _ref1=parsed.slice(1, 4), repeating=_ref1[0], radix=_ref1[1], fractional=_ref1[2]; precision=(fractional!=null ? fractional.length:void 0)||0; return this.format={ repeating: repeating, radix: radix, precision: precision };}; Odometer.prototype.render=function(value){ var classes, cls, digit, match, newClasses, theme, wholePart, _i, _j, _len, _len1, _ref; if(value==null){ value=this.value; } this.stopWatchingMutations(); this.resetFormat(); this.inside.innerHTML=''; theme=this.options.theme; classes=this.el.className.split(' '); newClasses=[]; for (_i=0, _len=classes.length; _i < _len; _i++){ cls=classes[_i]; if(!cls.length){ continue; } if(match=/^odometer-theme-(.+)$/.exec(cls)){ theme=match[1]; continue; } if(/^odometer(-|$)/.test(cls)){ continue; } newClasses.push(cls); } newClasses.push('odometer'); if(!TRANSITION_SUPPORT){ newClasses.push('odometer-no-transitions'); } if(theme){ newClasses.push("odometer-theme-" + theme); }else{ newClasses.push("odometer-auto-theme"); } this.el.className=newClasses.join(' '); this.ribbons={}; this.digits=[]; wholePart = !this.format.precision||!fractionalPart(value)||false; _ref=value.toString().split('').reverse(); for (_j=0, _len1=_ref.length; _j < _len1; _j++){ digit=_ref[_j]; if(digit==='.'){ wholePart=true; } this.addDigit(digit, wholePart); } return this.startWatchingMutations(); }; Odometer.prototype.update=function(newValue){ var diff, _this=this; newValue=this.cleanValue(newValue); if(!(diff=newValue - this.value)){ return; } removeClass(this.el, 'odometer-animating-up odometer-animating-down odometer-animating'); if(diff > 0){ addClass(this.el, 'odometer-animating-up'); }else{ addClass(this.el, 'odometer-animating-down'); } this.stopWatchingMutations(); this.animate(newValue); this.startWatchingMutations(); setTimeout(function(){ _this.el.offsetHeight; return addClass(_this.el, 'odometer-animating'); }, 0); return this.value=newValue; }; Odometer.prototype.renderDigit=function(){ return createFromHTML(DIGIT_HTML); }; Odometer.prototype.insertDigit=function(digit, before){ if(before!=null){ return this.inside.insertBefore(digit, before); }else if(!this.inside.children.length){ return this.inside.appendChild(digit); }else{ return this.inside.insertBefore(digit, this.inside.children[0]); }}; Odometer.prototype.addSpacer=function(chr, before, extraClasses){ var spacer; spacer=createFromHTML(FORMAT_MARK_HTML); spacer.innerHTML=chr; if(extraClasses){ addClass(spacer, extraClasses); } return this.insertDigit(spacer, before); }; Odometer.prototype.addDigit=function(value, repeating){ var chr, digit, resetted, _ref; if(repeating==null){ repeating=true; } if(value==='-'){ return this.addSpacer(value, null, 'odometer-negation-mark'); } if(value==='.'){ return this.addSpacer((_ref=this.format.radix)!=null ? _ref:'.', null, 'odometer-radix-mark'); } if(repeating){ resetted=false; while (true){ if(!this.format.repeating.length){ if(resetted){ throw new Error("Bad odometer format without digits"); } this.resetFormat(); resetted=true; } chr=this.format.repeating[this.format.repeating.length - 1]; this.format.repeating=this.format.repeating.substring(0, this.format.repeating.length - 1); if(chr==='d'){ break; } this.addSpacer(chr); }} digit=this.renderDigit(); digit.querySelector('.odometer-value').innerHTML=value; this.digits.push(digit); return this.insertDigit(digit); }; Odometer.prototype.animate=function(newValue){ if(!TRANSITION_SUPPORT||this.options.animation==='count'){ return this.animateCount(newValue); }else{ return this.animateSlide(newValue); }}; Odometer.prototype.animateCount=function(newValue){ var cur, diff, last, start, tick, _this=this; if(!(diff=+newValue - this.value)){ return; } start=last=now(); cur=this.value; return (tick=function(){ var delta, dist, fraction; if((now() - start) > _this.options.duration){ _this.value=newValue; _this.render(); trigger(_this.el, 'odometerdone'); return; } delta=now() - last; if(delta > COUNT_MS_PER_FRAME){ last=now(); fraction=delta / _this.options.duration; dist=diff * fraction; cur +=dist; _this.render(Math.round(cur)); } if(requestAnimationFrame!=null){ return requestAnimationFrame(tick); }else{ return setTimeout(tick, COUNT_MS_PER_FRAME); }})(); }; Odometer.prototype.getDigitCount=function(){ var i, max, value, values, _i, _len; values=1 <=arguments.length ? __slice.call(arguments, 0):[]; for (i=_i=0, _len=values.length; _i < _len; i=++_i){ value=values[i]; values[i]=Math.abs(value); } max=Math.max.apply(Math, values); return Math.ceil(Math.log(max + 1) / Math.log(10)); }; Odometer.prototype.getFractionalDigitCount=function(){ var i, parser, parts, value, values, _i, _len; values=1 <=arguments.length ? __slice.call(arguments, 0):[]; parser=/^\-?\d*\.(\d*?)0*$/; for (i=_i=0, _len=values.length; _i < _len; i=++_i){ value=values[i]; values[i]=value.toString(); parts=parser.exec(values[i]); if(parts==null){ values[i]=0; }else{ values[i]=parts[1].length; }} return Math.max.apply(Math, values); }; Odometer.prototype.resetDigits=function(){ this.digits=[]; this.ribbons=[]; this.inside.innerHTML=''; return this.resetFormat(); }; Odometer.prototype.animateSlide=function(newValue){ var boosted, cur, diff, digitCount, digits, dist, end, fractionalCount, frame, frames, i, incr, j, mark, numEl, oldValue, start, _base, _i, _j, _k, _l, _len, _len1, _len2, _m, _ref, _results; oldValue=this.value; fractionalCount=this.getFractionalDigitCount(oldValue, newValue); if(fractionalCount){ newValue=newValue * Math.pow(10, fractionalCount); oldValue=oldValue * Math.pow(10, fractionalCount); } if(!(diff=newValue - oldValue)){ return; } this.bindTransitionEnd(); digitCount=this.getDigitCount(oldValue, newValue); digits=[]; boosted=0; for (i=_i=0; 0 <=digitCount ? _i < digitCount:_i > digitCount; i=0 <=digitCount ? ++_i:--_i){ start=truncate(oldValue / Math.pow(10, digitCount - i - 1)); end=truncate(newValue / Math.pow(10, digitCount - i - 1)); dist=end - start; if(Math.abs(dist) > this.MAX_VALUES){ frames=[]; incr=dist / (this.MAX_VALUES + this.MAX_VALUES * boosted * DIGIT_SPEEDBOOST); cur=start; while ((dist > 0&&cur < end)||(dist < 0&&cur > end)){ frames.push(Math.round(cur)); cur +=incr; } if(frames[frames.length - 1]!==end){ frames.push(end); } boosted++; }else{ frames=(function(){ _results=[]; for (var _j=start; start <=end ? _j <=end:_j >=end; start <=end ? _j++:_j--){ _results.push(_j); } return _results; }).apply(this); } for (i=_k=0, _len=frames.length; _k < _len; i=++_k){ frame=frames[i]; frames[i]=Math.abs(frame % 10); } digits.push(frames); } this.resetDigits(); _ref=digits.reverse(); for (i=_l=0, _len1=_ref.length; _l < _len1; i=++_l){ frames=_ref[i]; if(!this.digits[i]){ this.addDigit(' ', i >=fractionalCount); } if((_base=this.ribbons)[i]==null){ _base[i]=this.digits[i].querySelector('.odometer-ribbon-inner'); } this.ribbons[i].innerHTML=''; if(diff < 0){ frames=frames.reverse(); } for (j=_m=0, _len2=frames.length; _m < _len2; j=++_m){ frame=frames[j]; numEl=document.createElement('div'); numEl.className='odometer-value'; numEl.innerHTML=frame; this.ribbons[i].appendChild(numEl); if(j===frames.length - 1){ addClass(numEl, 'odometer-last-value'); } if(j===0){ addClass(numEl, 'odometer-first-value'); }} } if(start < 0){ this.addDigit('-'); } mark=this.inside.querySelector('.odometer-radix-mark'); if(mark!=null){ mark.parent.removeChild(mark); } if(fractionalCount){ return this.addSpacer(this.format.radix, this.digits[fractionalCount - 1], 'odometer-radix-mark'); }}; return Odometer; })(); Odometer.options=(_ref=window.odometerOptions)!=null ? _ref:{}; setTimeout(function(){ var k, v, _base, _ref1, _results; if(window.odometerOptions){ _ref1=window.odometerOptions; _results=[]; for (k in _ref1){ v=_ref1[k]; _results.push((_base=Odometer.options)[k]!=null ? (_base=Odometer.options)[k]:_base[k]=v); } return _results; }}, 0); Odometer.init=function(){ var el, elements, _i, _len, _ref1, _results; if(document.querySelectorAll==null){ return; } elements=document.querySelectorAll(Odometer.options.selector||'.odometer'); _results=[]; for (_i=0, _len=elements.length; _i < _len; _i++){ el=elements[_i]; _results.push(el.odometer=new Odometer({ el: el, value: (_ref1=el.innerText)!=null ? _ref1:el.textContent })); } return _results; }; if((((_ref1=document.documentElement)!=null ? _ref1.doScroll:void 0)!=null)&&(document.createEventObject!=null)){ _old=document.onreadystatechange; document.onreadystatechange=function(){ if(document.readyState==='complete'&&Odometer.options.auto!==false){ Odometer.init(); } return _old!=null ? _old.apply(this, arguments):void 0; };}else{ document.addEventListener('DOMContentLoaded', function(){ if(Odometer.options.auto!==false){ return Odometer.init(); }}, false); } if(typeof define==='function'&&define.amd){ define(['jquery'], function(){ return Odometer; }); }else if(typeof exports===!'undefined'){ module.exports=Odometer; }else{ window.Odometer=Odometer; }}).call(this); (function ($){ function getScrollY(elem){ return window.pageYOffset||document.documentElement.scrollTop; } function Sticky(el, options){ var self=this; this.el=el; this.$el=$(el); this.options={ }; $.extend(this.options, options); self.init(); } $.fn.scSticky=function(options){ $(this).each(function(){ return new Sticky(this, options); }); } Sticky.prototype={ init: function(){ var self=this; this.$wrapper=false; this.$parent=this.getParent(); $(window).scroll(function(){ if(self.useSticky()){ self.wrap(); self.scroll(); }else{ self.unwrap(); }}); $(window).resize(function(){ if(self.useSticky()){ self.wrap(); self.scroll(); }else{ self.unwrap(); }}); }, wrap: function(){ if(!this.$wrapper) this.$wrapper=this.$el.wrap('
    ').parent(); this.$wrapper.attr('class', this.$el.attr('class')).addClass('gem-sticky-block').css({ padding: 0, height: this.$el.outerHeight() }); this.$el.css({ width: this.$wrapper.outerWidth(), margin: 0 }); }, getParent: function(){ return this.$el.parent(); }, useSticky: function(){ var is_sidebar=true; if(this.$el.hasClass('sidebar')){ if(this.$wrapper){ if(this.$wrapper.outerHeight() > this.$wrapper.siblings('.panel-center:first').outerHeight()) is_sidebar=false; }else{ if(this.$el.outerHeight() > this.$el.siblings('.panel-center:first').outerHeight()) is_sidebar=false; }} return $(window).width() > 1000&&is_sidebar; }, unwrap: function(){ if(this.$el.parent().is('.gem-sticky-block')){ this.$el.unwrap(); this.$wrapper=false; } this.$el.css({ width: "", top: "", bottom: "", margin: "" }); }, scroll: function(){ var top_offset=parseInt($('html').css('margin-top')); var $header=$('#site-header'); if($header.hasClass('fixed')){ top_offset +=$header.outerHeight(); } var scroll=getScrollY(); var offset=this.$wrapper.offset(); var parent_offset=this.$parent.offset(); var parent_bottom=parent_offset.top + this.$parent.outerHeight() - scroll; var bottom=$(window).height() - parent_bottom; if((top_offset + this.$el.outerHeight()) >=parent_bottom){ this.$el.addClass('sticky-fixed').css({ top: "", bottom: bottom, left: offset.left }); return; } if((scroll + top_offset) > offset.top){ this.$el.addClass('sticky-fixed').css({ top: top_offset, bottom: "", left: offset.left }); }else{ this.$el.removeClass('sticky-fixed').css({ top: "", bottom: "", left: "" }); }} };}(jQuery)); (function($){ $.fn.thegemPreloader=function(callback){ $(this).each(function(){ var $el=$(this), hasSrc=['img', 'iframe'].indexOf($el[0].nodeName.toLowerCase())!=-1; $el.data('thegemPreloader', $('img, iframe', $el).add($el.filter('img, iframe')).length); if($el.data('thegemPreloader')==0||(hasSrc&&!$el.attr('src'))){ $el.prev('.preloader').remove(); callback(); $el.trigger('thegem-preloader-loaded'); return; } if(!$el.prev('.preloader').length){ $('
    ').insertBefore($el); } $('img, iframe', $el).add($el.filter('img, iframe')).each(function(){ function preloaderItemLoaded(){ $el.data('thegemPreloader', $el.data('thegemPreloader')-1); if($el.data('thegemPreloader')==0){ $el.prev('.preloader').remove(); callback(); $el.trigger('thegem-preloader-loaded'); }} if(!$(this).attr('src')){ preloaderItemLoaded(); return; } var $obj=$(''); if($(this).prop('tagName').toLowerCase()=='iframe'){ $obj=$(this); } $obj.attr('src', $(this).attr('src')); $obj.on('load error', preloaderItemLoaded); }); }); }})(jQuery); (function($){ var oWidth=$.fn.width; $.fn.width=function(argument){ if(arguments.length==0&&this.length==1&&this[0]===window){ if(window.gemOptions.innerWidth!=-1){ return window.gemOptions.innerWidth; } var width=oWidth.apply(this,arguments); window.updateGemInnerSize(width); return width; } return oWidth.apply(this,arguments); }; var $page=$('#page'); $(window).load(function(){ var $preloader=$('#page-preloader'); if($preloader.length&&!$preloader.hasClass('preloader-loaded')){ $preloader.addClass('preloader-loaded'); }}); $('#site-header.animated-header').headerAnimation(); $.fn.updateTabs=function(){ jQuery('.gem-tabs', this).each(function(index){ var $tabs=$(this); $tabs.thegemPreloader(function(){ $tabs.easyResponsiveTabs({ type: 'default', width: 'auto', fit: false, activate: function(currentTab, e){ var $tab=$(currentTab.target); var controls=$tab.attr('aria-controls'); $tab.closest('.ui-tabs').find('.gem_tab[aria-labelledby="' + controls + '"]').trigger('tab-update'); }}); }); }); jQuery('.gem-tour', this).each(function(index){ var $tabs=$(this); $tabs.thegemPreloader(function(){ $tabs.easyResponsiveTabs({ type: 'vertical', width: 'auto', fit: false, activate: function(currentTab, e){ var $tab=$(currentTab.target); var controls=$tab.attr('aria-controls'); $tab.closest('.ui-tabs').find('.gem_tab[aria-labelledby="' + controls + '"]').trigger('tab-update'); }}); }); }); }; function fullwidth_block_after_update($item){ $item.trigger('updateTestimonialsCarousel'); $item.trigger('updateClientsCarousel'); $item.trigger('fullwidthUpdate'); } function fullwidth_block_update($item, pageOffset, pagePaddingLeft, pageWidth,skipTrigger){ var $prevElement=$item.prev(), extra_padding=0; if($prevElement.length==0||$prevElement.hasClass('fullwidth-block')){ $prevElement=$item.parent(); extra_padding=parseInt($prevElement.css('padding-left')); } var offsetKey=window.gemSettings.isRTL ? 'right':'left'; var cssData={ width: pageWidth }; cssData[offsetKey]=pageOffset.left - ($prevElement.length ? $prevElement.offset().left:0) + parseInt(pagePaddingLeft) - extra_padding; $item.css(cssData); if(!skipTrigger){ fullwidth_block_after_update($item); }} var inlineFullwidths=[], notInlineFullwidths=[]; $('.fullwidth-block').each(function(){ var $item=$(this), $parents=$item.parents('.vc_row'), fullw={ isInline: false }; $parents.each(function(){ if(this.hasAttribute('data-vc-full-width')){ fullw.isInline=true; return false; }}); if(fullw.isInline){ inlineFullwidths.push(this); }else{ notInlineFullwidths.push(this); }}); function update_fullwidths(inline, init){ var $needUpdate=[]; (inline ? inlineFullwidths:notInlineFullwidths).forEach(function(item){ $needUpdate.push(item); }); if($needUpdate.length > 0){ var pageOffset=$page.offset(), pagePaddingLeft=$page.css('padding-left'), pageWidth=$page.width(); $needUpdate.forEach(function(item){ fullwidth_block_update($(item), pageOffset, pagePaddingLeft, pageWidth); }); }} if(!window.disableGemSlideshowPreloaderHandle){ jQuery('.gem-slideshow').each(function(){ var $slideshow=$(this); $slideshow.thegemPreloader(function(){}); }); } $(function(){ $('#gem-icons-loading-hide').remove(); $('#thegem-preloader-inline-css').remove(); jQuery('iframe').not('.gem-video-background iframe, .wcppec-checkout-buttons iframe').each(function(){ $(this).thegemPreloader(function(){}); }); jQuery('.gem-video-background').each(function(){ var $videoBG=$(this); var $videoContainer=$('.gem-video-background-inner', this); var ratio=$videoBG.data('aspect-ratio') ? $videoBG.data('aspect-ratio'):'16:9'; var regexp=/(\d+):(\d+)/; var $fullwidth=$videoBG.closest('.fullwidth-block'); ratio=regexp.exec(ratio); if(!ratio||parseInt(ratio[1])==0||parseInt(ratio[2])==0){ ratio=16/9; }else{ ratio=parseInt(ratio[1])/parseInt(ratio[2]); } function gemVideoUpdate(){ $videoContainer.removeAttr('style'); if($videoContainer.width() / $videoContainer.height() > ratio){ $videoContainer.css({ height: ($videoContainer.width() / ratio) + 'px', marginTop: -($videoContainer.width() / ratio - $videoBG.height()) / 2 + 'px' }); }else{ $videoContainer.css({ width: ($videoContainer.height() * ratio) + 'px', marginLeft: -($videoContainer.height() * ratio - $videoBG.width()) / 2 + 'px' }); }} if($videoBG.closest('.page-title-block').length > 0){ gemVideoUpdate(); } if($fullwidth.length){ $fullwidth.on('fullwidthUpdate', gemVideoUpdate); }else{ $(window).resize(gemVideoUpdate); }}); update_fullwidths(false, true); if(!window.gemSettings.parallaxDisabled){ $('.fullwidth-block').each(function(){ var $item=$(this), mobile_enabled=$item.data('mobile-parallax-enable')||'0'; if(!window.gemSettings.isTouch||mobile_enabled=='1'){ if($item.hasClass('fullwidth-block-parallax-vertical')){ $('.fullwidth-block-background', $item).parallaxVertical('50%'); }else if($item.hasClass('fullwidth-block-parallax-horizontal')){ $('.fullwidth-block-background', $item).parallaxHorizontal(); }}else{ $('.fullwidth-block-background', $item).css({ backgroundAttachment: 'scroll' }); }}); } $(window).resize(function(){ update_fullwidths(false, false); }); jQuery('select.gem-combobox, .gem-combobox select, .widget_archive select, .widget_product_categories select, .widget_categories select').each(function(index){ $(this).combobox(); }); jQuery('.widget_categories select').each(function(){ this.onchange=null; $(this).on('change', function(){ if($(this).val()!=-1){ $(this).closest('form').submit(); }}); }); jQuery('input.gem-checkbox, .gem-checkbox input').checkbox(); if(typeof($.fn.ReStable)=="function"){ jQuery('.gem-table-responsive').each(function(index){ $('> table', this).ReStable({ maxWidth: 768, rowHeaders:$(this).hasClass('row-headers') }); }); } jQuery('.fancybox').each(function(){ $(this).fancybox(); }); function init_odometer(el){ if(jQuery('.gem-counter-odometer', el).size()==0) return; var odometer=jQuery('.gem-counter-odometer', el).get(0); var format=jQuery(el).closest('.gem-counter-box').data('number-format'); format=format ? format:'(ddd).ddd'; var od=new Odometer({ el: odometer, value: $(odometer).text(), format: format }); od.update($(odometer).data('to')); } window['thegem_init_odometer']=init_odometer; jQuery('.gem-counter').each(function(index){ if(jQuery(this).closest('.gem-counter-box').size() > 0&&jQuery(this).closest('.gem-counter-box').hasClass('lazy-loading')&&!window.gemSettings.lasyDisabled){ jQuery(this).addClass('lazy-loading-item').data('ll-effect', 'action').data('item-delay', '0').data('ll-action-func', 'thegem_init_odometer'); jQuery('.gem-icon', this).addClass('lazy-loading-item').data('ll-effect', 'fading').data('item-delay', '0'); jQuery('.gem-counter-text', this).addClass('lazy-loading-item').data('ll-effect', 'fading').data('item-delay', '0'); return; } init_odometer(this); }); jQuery('.panel-sidebar-sticky > .sidebar').scSticky(); jQuery('iframe + .map-locker').each(function(){ var $locker=$(this); $locker.click(function(e){ e.preventDefault(); if($locker.hasClass('disabled')){ $locker.prev('iframe').css({ 'pointer-events':'none' }); }else{ $locker.prev('iframe').css({ 'pointer-events':'auto' }); } $locker.toggleClass('disabled'); }); }); $('.primary-navigation a.mega-no-link').closest('li').removeClass('menu-item-active current-menu-item'); function getElementPagePosition(element){ var width=element.offsetWidth, height=element.offsetHeight, left=0, top=0; while (element&&element.id!='page'){ left +=element.offsetLeft; top +=element.offsetTop; element=element.offsetParent; } return {"left": left, "top": top, "width": width, "height": height};} var $anhorsElements=[]; $('.primary-navigation a, .gem-button, .footer-navigation a, .scroll-top-button, .scroll-to-anchor, .scroll-to-anchor a, .top-area-menu a').each(function(e){ var $anhor=$(this); var link=$anhor.attr('href'); if(!link) return ; link=link.split('#'); if($('#'+link[1]).hasClass('vc_tta-panel')) return ; if($('#'+link[1]).length){ $anhor.closest('li').removeClass('menu-item-active current-menu-item'); $anhor.closest('li').parents('li').removeClass('menu-item-current'); $(document).on('update-page-scroller', function(e, elem){ var $elem=$(elem); if(!$anhor.closest('li.menu-item').length) return ; if($elem.is($('#'+link[1]))||$elem.find($('#'+link[1])).length){ $anhor.closest('li').addClass('menu-item-active'); $anhor.closest('li').parents('li').addClass('menu-item-current'); }else{ $anhor.closest('li').removeClass('menu-item-active'); $anhor.closest('li').parents('li.menu-item-current').each(function(){ if(!$('.menu-item-active', this).length){ $(this).removeClass('menu-item-current'); }}); }}); $anhor.click(function(e){ e.preventDefault(); history.replaceState('data to be passed', $anhor.text(), $anhor.attr('href')); var correction=0; var isPerspectiveMenu=$('#thegem-perspective.modalview').length; if($('#site-header.animated-header').length){ var shrink=$('#site-header').hasClass('shrink'); $('#site-header').addClass('scroll-counting'); $('#site-header').addClass('fixed shrink'); correction=$('#site-header').outerHeight(); if(!isPerspectiveMenu){ var siteHeaderTop=$('#site-header').position().top; if($('#site-header').hasClass('shrink')){ siteHeaderTop=0; } correction +=siteHeaderTop; } if(!shrink){ $('#site-header').removeClass('fixed shrink'); } setTimeout(function(){ $('#site-header').removeClass('scroll-counting'); }, 50); } var target_top=getElementPagePosition($('#'+link[1])[0]).top - correction + 1; if(getElementPagePosition($('#'+link[1])[0]).top==0){ target_top=0; } if($('body').hasClass('page-scroller')&&$('.page-scroller-nav-pane').is(':visible')){ var $block=$('#'+link[1]+'.scroller-block').add($('#'+link[1]).closest('.scroller-block')).eq(0); if($block.length){ $('.page-scroller-nav-pane .page-scroller-nav-item').eq($('.scroller-block').index($block)).trigger('click'); }}else{ if(isPerspectiveMenu){ $('#page').stop(true, true).animate({scrollTop:target_top}, 1500, 'easeInOutQuint', function(){ if($anhor.closest('#thegem-perspective').length&&$anhor.closest('#thegem-perspective').hasClass('modalview')){ $('.perspective-menu-close').trigger('click'); }}); }else{ $('html, body').stop(true, true).animate({scrollTop:target_top}, 1500, 'easeInOutQuint'); } if($anhor.closest('#primary-menu').length&&$anhor.closest('#primary-menu').hasClass('dl-menuopen')){ $('.menu-toggle').trigger('click'); } if($anhor.closest('.mobile-menu-slide-wrapper').length&&$anhor.closest('.mobile-menu-slide-wrapper').hasClass('opened')){ $('.mobile-menu-slide-close').trigger('click'); } if($anhor.closest('.overlay-menu-wrapper').length&&$anhor.closest('.overlay-menu-wrapper').hasClass('active')){ if($anhor.closest('#primary-navigation').length&&$anhor.closest('#primary-navigation').hasClass('responsive')){ $('.menu-toggle').trigger('click'); }else{ $('.overlay-toggle').trigger('click'); }} if($anhor.closest('#primary-navigation').length&&$anhor.closest('#primary-navigation').hasClass('hamburger-active')){ $('.hamburger-toggle').trigger('click'); }} }); $anhorsElements.push($anhor[0]); }}); if($anhorsElements.length){ function anchorLinksScroll(){ var isPerspectiveMenu=$('#thegem-perspective.modalview').length; var correction=0; if(!$page.hasClass('vertical-header')){ correction=$('#site-header').outerHeight(); if(!isPerspectiveMenu){ var siteHeaderTop=$('#site-header').length ? $('#site-header').position().top:0; if($('#site-header').hasClass('shrink')){ siteHeaderTop=0; } correction +=siteHeaderTop; }} for (var i=0; i < $anhorsElements.length; i++){ var $anhor=$($anhorsElements[i]); var link=$anhor.attr('href'); if(!link) continue ; link=link.split('#'); var scrollY=getScrollY() + $page.scrollTop(); if(!$anhor.closest('li.menu-item').length) continue ; var target_top=getElementPagePosition($('#'+link[1])[0]).top - correction; if(scrollY >=target_top&&scrollY <=target_top + $('#'+link[1]).outerHeight()){ $anhor.closest('li').addClass('menu-item-active'); $anhor.closest('li').parents('li').addClass('menu-item-current'); }else{ $anhor.closest('li').removeClass('menu-item-active'); $anhor.closest('li').parents('li.menu-item-current').each(function(){ if(!$('.menu-item-active', this).length){ $(this).removeClass('menu-item-current'); }}); }} } $(window).scroll(anchorLinksScroll); if($('#thegem-perspective').length){ $page.scroll(anchorLinksScroll); } $(window).load(function(){ for (var i=0; i < $anhorsElements.length; i++){ var anhor=$anhorsElements[i]; if(anhor.href!=undefined&&anhor.href&&window.location.href==anhor.href){ anhor.click(); break; }} }); } $('body').on('click', '.post-footer-sharing .gem-button', function(e){ e.preventDefault(); $(this).closest('.post-footer-sharing').find('.sharing-popup').toggleClass('active'); }); var scrollTimer, body=document.body; $(window).scroll(function(){ clearTimeout(scrollTimer); if(!body.classList.contains('disable-hover')){ } scrollTimer=setTimeout(function(){ }, 300); if(getScrollY() > 0){ $('.scroll-top-button').addClass('visible'); }else{ $('.scroll-top-button').removeClass('visible'); }}).scroll(); function getScrollY(elem){ return window.pageYOffset||document.documentElement.scrollTop; } $('a.hidden-email').each(function(){ $(this).attr('href', 'mailto:'+$(this).data('name')+'@'+$(this).data('domain')); }); $('#colophon .footer-widget-area').thegemPreloader(function(){ $('#colophon .footer-widget-area').isotope({ itemSelector: '.widget', layoutMode: 'masonry' }); }); $('body').updateTabs(); }); $(document).on('show.vc.accordion', '[data-vc-accordion]', function(){ var $target=$(this).data('vc.accordion').getContainer(); var correction=0; if(!$target.find('.vc_tta-tabs').length||!$(this).is(':visible')||$target.data('vc-tta-autoplay')) return ; if($('#site-header.animated-header').length&&$('#site-header').hasClass('fixed')){ var shrink=$('#site-header').hasClass('shrink'); $('#site-header').addClass('scroll-counting'); $('#site-header').addClass('fixed shrink'); correction=$('#site-header').outerHeight() + $('#site-header').position().top; if(!shrink){ $('#site-header').removeClass('fixed shrink'); } $('#site-header').removeClass('scroll-counting'); } var target_top=$target.offset().top - correction - 100 + 1; $('html, body').stop(true, true).animate({scrollTop:target_top}, 500, 'easeInOutQuint'); }); var vc_update_fullwidth_init=true; $(document).on('vc-full-width-row', function(e){ if(window.gemOptions.clientWidth - $page.width() > 25||window.gemSettings.isRTL){ for (var i=1; i < arguments.length; i++){ var $el=$(arguments[i]); $el.addClass("vc_hidden"); var $el_full=$el.next(".vc_row-full-width"); $el_full.length||($el_full=$el.parent().next(".vc_row-full-width")); var el_margin_left=parseInt($el.css("margin-left"), 10), el_margin_right=parseInt($el.css("margin-right"), 10), offset=0 - $el_full.offset().left - el_margin_left + $('#page').offset().left + parseInt($('#page').css('padding-left')), width=$('#page').width(); var offsetKey=window.gemSettings.isRTL ? 'right':'left'; var cssData={ position: "relative", left: offset, "box-sizing": "border-box", width: $("#page").width() }; cssData[offsetKey]=offset; if($el.css(cssData), !$el.data("vcStretchContent")){ var padding=-1 * offset; 0 > padding&&(padding=0); var paddingRight=width - padding - $el_full.width() + el_margin_left + el_margin_right; 0 > paddingRight&&(paddingRight=0), $el.css({ "padding-left": padding + "px", "padding-right": paddingRight + "px" }) } $el.attr("data-vc-full-width-init", "true"), $el.removeClass("vc_hidden"); $el.trigger('VCRowFullwidthUpdate'); }} update_fullwidths(true, vc_update_fullwidth_init); vc_update_fullwidth_init=false; }); if(!window.gemSettings.lasyDisabled&&$.support.opacity){ $('.wpb_text_column.wpb_animate_when_almost_visible.wpb_fade').each(function(){ $(this).wrap('
    ').addClass('lazy-loading-item').data('ll-effect', 'fading'); }); $('.gem-list.lazy-loading').each(function(){ $(this).data('ll-item-delay', '200'); $('li', this).addClass('lazy-loading-item').data('ll-effect', 'slide-right'); $('li', this).each(function(index){ $(this).attr("style", "transition-delay: " + (index + 1) * 0.2 + "s;"); }); }); $.lazyLoading(); } $('body').on('click', '.gem-button[href^="#give-form-"]', function(e){ var form_id=$(this).attr('href').replace('#give-form-', ''); form_id=parseInt(form_id); if(!isNaN(form_id)){ $('#give-form-' + form_id + ' .give-btn-modal').click(); } e.preventDefault(); return false; }); })(jQuery); (function($){ $('.menu-item-search a').on('click', function(e){ e.preventDefault(); $('.menu-item-search').toggleClass('active'); }); })(jQuery); (function(d){function e(a){var b=a||window.event,c=[].slice.call(arguments,1),f=0,e=0,g=0,a=d.event.fix(b);a.type="mousewheel";b.wheelDelta&&(f=b.wheelDelta/120);b.detail&&(f=-b.detail/3);g=f;b.axis!==void 0&&b.axis===b.HORIZONTAL_AXIS&&(g=0,e=-1*f);b.wheelDeltaY!==void 0&&(g=b.wheelDeltaY/120);b.wheelDeltaX!==void 0&&(e=-1*b.wheelDeltaX/120);c.unshift(a,f,e,g);return(d.event.dispatch||d.event.handle).apply(this,c)}var c=["DOMMouseScroll","mousewheel"];if(d.event.fixHooks)for(var h=c.length;h;)d.event.fixHooks[c[--h]]= d.event.mouseHooks;d.event.special.mousewheel={setup:function(){if(this.addEventListener)for(var a=c.length;a;)this.addEventListener(c[--a],e,false);else this.onmousewheel=e},teardown:function(){if(this.removeEventListener)for(var a=c.length;a;)this.removeEventListener(c[--a],e,false);else this.onmousewheel=null}};d.fn.extend({mousewheel:function(a){return a?this.bind("mousewheel",a):this.trigger("mousewheel")},unmousewheel:function(a){return this.unbind("mousewheel",a)}})})(jQuery); !function(t,e,n,o){"use strict";function i(t){var e=t.currentTarget,o=t.data?t.data.options:{},i=t.data?t.data.items:[],a=n(e).attr("data-fancybox")||"",s=0;t.preventDefault(),t.stopPropagation(),a?(i=i.length?i.filter('[data-fancybox="'+a+'"]'):n('[data-fancybox="'+a+'"]'),s=i.index(e),s<0&&(s=0)):i=[e],n.fancybox.open(i,o,s)}if(n){if(n.fn.fancybox)return void n.error("fancyBox already initialized");var a={loop:!1,margin:[44,0],gutter:50,keyboard:!0,arrows:!0,infobar:!1,toolbar:!0,buttons:["slideShow","fullScreen","thumbs","close"],idleTime:4,smallBtn:"auto",protect:!1,modal:!1,image:{preload:"auto"},ajax:{settings:{data:{fancybox:!0}}},iframe:{tpl:'',preload:!0,css:{},attr:{scrolling:"auto"}},animationEffect:"zoom",animationDuration:366,zoomOpacity:"auto",transitionEffect:"fade",transitionDuration:366,slideClass:"",baseClass:"",baseTpl:'',spinnerTpl:'
    ',errorTpl:'

    {{ERROR}}

    ',btnTpl:{slideShow:'',fullScreen:'',thumbs:'',close:'',smallBtn:''},parentEl:"body",autoFocus:!0,backFocus:!0,trapFocus:!0,fullScreen:{autoStart:!1},touch:{vertical:!0,momentum:!0},hash:null,media:{},slideShow:{autoStart:!1,speed:4e3},thumbs:{autoStart:!1,hideOnClose:!0},onInit:n.noop,beforeLoad:n.noop,afterLoad:n.noop,beforeShow:n.noop,afterShow:n.noop,beforeClose:n.noop,afterClose:n.noop,onActivate:n.noop,onDeactivate:n.noop,clickContent:function(t,e){return"image"===t.type&&"zoom"},clickSlide:"close",clickOutside:"close",dblclickContent:!1,dblclickSlide:!1,dblclickOutside:!1,mobile:{clickContent:function(t,e){return"image"===t.type&&"toggleControls"},clickSlide:function(t,e){return"image"===t.type?"toggleControls":"close"},dblclickContent:function(t,e){return"image"===t.type&&"zoom"},dblclickSlide:function(t,e){return"image"===t.type&&"zoom"}},lang:"en",i18n:{en:{CLOSE:"Close",NEXT:"Next",PREV:"Previous",ERROR:"The requested content cannot be loaded.
    Please try again later.",PLAY_START:"Start slideshow",PLAY_STOP:"Pause slideshow",FULL_SCREEN:"Full screen",THUMBS:"Thumbnails"},de:{CLOSE:"Schliessen",NEXT:"Weiter",PREV:"Zurück",ERROR:"Die angeforderten Daten konnten nicht geladen werden.
    Bitte versuchen Sie es später nochmal.",PLAY_START:"Diaschau starten",PLAY_STOP:"Diaschau beenden",FULL_SCREEN:"Vollbild",THUMBS:"Vorschaubilder"}}},s=n(t),r=n(e),c=0,l=function(t){return t&&t.hasOwnProperty&&t instanceof n},u=function(){return t.requestAnimationFrame||t.webkitRequestAnimationFrame||t.mozRequestAnimationFrame||t.oRequestAnimationFrame||function(e){return t.setTimeout(e,1e3/60)}}(),d=function(){var t,n=e.createElement("fakeelement"),i={transition:"transitionend",OTransition:"oTransitionEnd",MozTransition:"transitionend",WebkitTransition:"webkitTransitionEnd"};for(t in i)if(n.style[t]!==o)return i[t]}(),f=function(t){return t&&t.length&&t[0].offsetHeight},h=function(t,o,i){var s=this;s.opts=n.extend(!0,{index:i},a,o||{}),o&&n.isArray(o.buttons)&&(s.opts.buttons=o.buttons),s.id=s.opts.id||++c,s.group=[],s.currIndex=parseInt(s.opts.index,10)||0,s.prevIndex=null,s.prevPos=null,s.currPos=0,s.firstRun=null,s.createGroup(t),s.group.length&&(s.$lastFocus=n(e.activeElement).blur(),s.slides={},s.init(t))};n.extend(h.prototype,{init:function(){var t,e,o,i=this,a=i.group[i.currIndex].opts;i.scrollTop=r.scrollTop(),i.scrollLeft=r.scrollLeft(),n.fancybox.getInstance()||n.fancybox.isMobile||"hidden"===n("body").css("overflow")||(t=n("body").width(),n("html").addClass("fancybox-enabled"),t=n("body").width()-t,t>1&&n("head").append('")),o="",n.each(a.buttons,function(t,e){o+=a.btnTpl[e]||""}),e=n(i.translate(i,a.baseTpl.replace("{{BUTTONS}}",o))).addClass("fancybox-is-hidden").attr("id","fancybox-container-"+i.id).addClass(a.baseClass).data("FancyBox",i).prependTo(a.parentEl),i.$refs={container:e},["bg","inner","infobar","toolbar","stage","caption"].forEach(function(t){i.$refs[t]=e.find(".fancybox-"+t)}),(!a.arrows||i.group.length<2)&&e.find(".fancybox-navigation").remove(),a.infobar||i.$refs.infobar.remove(),a.toolbar||i.$refs.toolbar.remove(),i.trigger("onInit"),i.activate(),i.jumpTo(i.currIndex)},translate:function(t,e){var n=t.opts.i18n[t.opts.lang];return e.replace(/\{\{(\w+)\}\}/g,function(t,e){var i=n[e];return i===o?t:i})},createGroup:function(t){var e=this,i=n.makeArray(t);n.each(i,function(t,i){var a,s,r,c,l={},u={},d=[];n.isPlainObject(i)?(l=i,u=i.opts||i):"object"===n.type(i)&&n(i).length?(a=n(i),d=a.data(),u="options"in d?d.options:{},u="object"===n.type(u)?u:{},l.src="src"in d?d.src:u.src||a.attr("href"),["width","height","thumb","type","filter"].forEach(function(t){t in d&&(u[t]=d[t])}),"srcset"in d&&(u.image={srcset:d.srcset}),u.$orig=a,l.type||l.src||(l.type="inline",l.src=i)):l={type:"html",src:i+""},l.opts=n.extend(!0,{},e.opts,u),n.fancybox.isMobile&&(l.opts=n.extend(!0,{},l.opts,l.opts.mobile)),s=l.type||l.opts.type,r=l.src||"",!s&&r&&(r.match(/(^data:image\/[a-z0-9+\/=]*,)|(\.(jp(e|g|eg)|gif|png|bmp|webp|svg|ico)((\?|#).*)?$)/i)?s="image":r.match(/\.(pdf)((\?|#).*)?$/i)?s="pdf":"#"===r.charAt(0)&&(s="inline")),l.type=s,l.index=e.group.length,l.opts.$orig&&!l.opts.$orig.length&&delete l.opts.$orig,!l.opts.$thumb&&l.opts.$orig&&(l.opts.$thumb=l.opts.$orig.find("img:first")),l.opts.$thumb&&!l.opts.$thumb.length&&delete l.opts.$thumb,"function"===n.type(l.opts.caption)?l.opts.caption=l.opts.caption.apply(i,[e,l]):"caption"in d&&(l.opts.caption=d.caption),l.opts.caption=l.opts.caption===o?"":l.opts.caption+"","ajax"===s&&(c=r.split(/\s+/,2),c.length>1&&(l.src=c.shift(),l.opts.filter=c.shift())),"auto"==l.opts.smallBtn&&(n.inArray(s,["html","inline","ajax"])>-1?(l.opts.toolbar=!1,l.opts.smallBtn=!0):l.opts.smallBtn=!1),"pdf"===s&&(l.type="iframe",l.opts.iframe.preload=!1),l.opts.modal&&(l.opts=n.extend(!0,l.opts,{infobar:0,toolbar:0,smallBtn:0,keyboard:0,slideShow:0,fullScreen:0,thumbs:0,touch:0,clickContent:!1,clickSlide:!1,clickOutside:!1,dblclickContent:!1,dblclickSlide:!1,dblclickOutside:!1})),e.group.push(l)})},addEvents:function(){var o=this;o.removeEvents(),o.$refs.container.on("click.fb-close","[data-fancybox-close]",function(t){t.stopPropagation(),t.preventDefault(),o.close(t)}).on("click.fb-prev touchend.fb-prev","[data-fancybox-prev]",function(t){t.stopPropagation(),t.preventDefault(),o.previous()}).on("click.fb-next touchend.fb-next","[data-fancybox-next]",function(t){t.stopPropagation(),t.preventDefault(),o.next()}),s.on("orientationchange.fb resize.fb",function(t){t&&t.originalEvent&&"resize"===t.originalEvent.type?u(function(){o.update()}):(o.$refs.stage.hide(),setTimeout(function(){o.$refs.stage.show(),o.update()},500))}),r.on("focusin.fb",function(t){var i=n.fancybox?n.fancybox.getInstance():null;i.isClosing||!i.current||!i.current.opts.trapFocus||n(t.target).hasClass("fancybox-container")||n(t.target).is(e)||i&&"fixed"!==n(t.target).css("position")&&!i.$refs.container.has(t.target).length&&(t.stopPropagation(),i.focus(),s.scrollTop(o.scrollTop).scrollLeft(o.scrollLeft))}),r.on("keydown.fb",function(t){var e=o.current,i=t.keyCode||t.which;if(e&&e.opts.keyboard&&!n(t.target).is("input")&&!n(t.target).is("textarea"))return 8===i||27===i?(t.preventDefault(),void o.close(t)):37===i||38===i?(t.preventDefault(),void o.previous()):39===i||40===i?(t.preventDefault(),void o.next()):void o.trigger("afterKeydown",t,i)}),o.group[o.currIndex].opts.idleTime&&(o.idleSecondsCounter=0,r.on("mousemove.fb-idle mouseenter.fb-idle mouseleave.fb-idle mousedown.fb-idle touchstart.fb-idle touchmove.fb-idle scroll.fb-idle keydown.fb-idle",function(){o.idleSecondsCounter=0,o.isIdle&&o.showControls(),o.isIdle=!1}),o.idleInterval=t.setInterval(function(){o.idleSecondsCounter++,o.idleSecondsCounter>=o.group[o.currIndex].opts.idleTime&&(o.isIdle=!0,o.idleSecondsCounter=0,o.hideControls())},1e3))},removeEvents:function(){var e=this;s.off("orientationchange.fb resize.fb"),r.off("focusin.fb keydown.fb .fb-idle"),this.$refs.container.off(".fb-close .fb-prev .fb-next"),e.idleInterval&&(t.clearInterval(e.idleInterval),e.idleInterval=null)},previous:function(t){return this.jumpTo(this.currPos-1,t)},next:function(t){return this.jumpTo(this.currPos+1,t)},jumpTo:function(t,e,i){var a,s,r,c,l,u,d,h=this,p=h.group.length;if(!(h.isSliding||h.isClosing||h.isAnimating&&h.firstRun)){if(t=parseInt(t,10),s=h.current?h.current.opts.loop:h.opts.loop,!s&&(t<0||t>=p))return!1;if(a=h.firstRun=null===h.firstRun,!(p<2&&!a&&h.isSliding)){if(c=h.current,h.prevIndex=h.currIndex,h.prevPos=h.currPos,r=h.createSlide(t),p>1&&((s||r.index>0)&&h.createSlide(t-1),(s||r.indexr.pos?"next":"previous"),c.$slide.removeClass("fancybox-slide--complete fancybox-slide--current fancybox-slide--next fancybox-slide--previous"),c.isComplete=!1,e&&(r.isMoved||r.opts.transitionEffect)&&(r.isMoved?c.$slide.addClass(d):(d="fancybox-animated "+d+" fancybox-fx-"+r.opts.transitionEffect,n.fancybox.animate(c.$slide,d,e,function(){c.$slide.removeClass(d).removeAttr("style")}))))}}},createSlide:function(t){var e,o,i=this;return o=t%i.group.length,o=o<0?i.group.length+o:o,!i.slides[t]&&i.group[o]&&(e=n('
    ').appendTo(i.$refs.stage),i.slides[t]=n.extend(!0,{},i.group[o],{pos:t,$slide:e,isLoaded:!1}),i.updateSlide(i.slides[t])),i.slides[t]},scaleToActual:function(t,e,i){var a,s,r,c,l,u=this,d=u.current,f=d.$content,h=parseInt(d.$slide.width(),10),p=parseInt(d.$slide.height(),10),g=d.width,b=d.height;"image"!=d.type||d.hasError||!f||u.isAnimating||(n.fancybox.stop(f),u.isAnimating=!0,t=t===o?.5*h:t,e=e===o?.5*p:e,a=n.fancybox.getTranslate(f),c=g/a.width,l=b/a.height,s=.5*h-.5*g,r=.5*p-.5*b,g>h&&(s=a.left*c-(t*c-t),s>0&&(s=0),sp&&(r=a.top*l-(e*l-e),r>0&&(r=0),rt.width||o.height>t.height))},isScaledDown:function(){var t=this,e=t.current,o=e.$content,i=!1;return o&&(i=n.fancybox.getTranslate(o),i=i.width1||Math.abs(n.height()-o.height)>1),o},loadSlide:function(t){var e,o,i,a=this;if(!t.isLoading&&!t.isLoaded){switch(t.isLoading=!0,a.trigger("beforeLoad",t),e=t.type,o=t.$slide,o.off("refresh").trigger("onReset").addClass("fancybox-slide--"+(e||"unknown")).addClass(t.opts.slideClass),e){case"image":a.setImage(t);break;case"iframe":a.setIframe(t);break;case"html":a.setContent(t,t.src||t.content);break;case"inline":n(t.src).length?a.setContent(t,n(t.src)):a.setError(t);break;case"ajax":a.showLoading(t),i=n.ajax(n.extend({},t.opts.ajax.settings,{url:t.src,success:function(e,n){"success"===n&&a.setContent(t,e)},error:function(e,n){e&&"abort"!==n&&a.setError(t)}})),o.one("onReset",function(){i.abort()});break;default:a.setError(t)}return!0}},setImage:function(e){var o,i,a,s,r=this,c=e.opts.image.srcset;if(c){a=t.devicePixelRatio||1,s=t.innerWidth*a,i=c.split(",").map(function(t){var e={};return t.trim().split(/\s+/).forEach(function(t,n){var o=parseInt(t.substring(0,t.length-1),10);return 0===n?e.url=t:void(o&&(e.value=o,e.postfix=t[t.length-1]))}),e}),i.sort(function(t,e){return t.value-e.value});for(var l=0;l=s||"x"===u.postfix&&u.value>=a){o=u;break}}!o&&i.length&&(o=i[i.length-1]),o&&(e.src=o.url,e.width&&e.height&&"w"==o.postfix&&(e.height=e.width/e.height*o.value,e.width=o.value))}e.$content=n('
    ').addClass("fancybox-is-hidden").appendTo(e.$slide),e.opts.preload!==!1&&e.opts.width&&e.opts.height&&(e.opts.thumb||e.opts.$thumb)?(e.width=e.opts.width,e.height=e.opts.height,e.$ghost=n("").one("error",function(){n(this).remove(),e.$ghost=null,r.setBigImage(e)}).one("load",function(){r.afterLoad(e),r.setBigImage(e)}).addClass("fancybox-image").appendTo(e.$content).attr("src",e.opts.thumb||e.opts.$thumb.attr("src"))):r.setBigImage(e)},setBigImage:function(t){var e=this,o=n("");t.$image=o.one("error",function(){e.setError(t)}).one("load",function(){clearTimeout(t.timouts),t.timouts=null,e.isClosing||(t.width=this.naturalWidth,t.height=this.naturalHeight,t.opts.image.srcset&&o.attr("sizes","100vw").attr("srcset",t.opts.image.srcset),e.hideLoading(t),t.$ghost?t.timouts=setTimeout(function(){t.timouts=null,t.$ghost.hide()},Math.min(300,Math.max(1e3,t.height/1600))):e.afterLoad(t))}).addClass("fancybox-image").attr("src",t.src).appendTo(t.$content),o[0].complete?o.trigger("load"):o[0].error?o.trigger("error"):t.timouts=setTimeout(function(){o[0].complete||t.hasError||e.showLoading(t)},100)},setIframe:function(t){var e,i=this,a=t.opts.iframe,s=t.$slide;t.$content=n('
    ').css(a.css).appendTo(s),e=n(a.tpl.replace(/\{rnd\}/g,(new Date).getTime())).attr(a.attr).appendTo(t.$content),a.preload?(i.showLoading(t),e.on("load.fb error.fb",function(e){this.isReady=1,t.$slide.trigger("refresh"),i.afterLoad(t)}),s.on("refresh.fb",function(){var n,i,s,r,c,l=t.$content;if(1===e[0].isReady){try{n=e.contents(),i=n.find("body")}catch(t){}i&&i.length&&(a.css.width===o||a.css.height===o)&&(s=e[0].contentWindow.document.documentElement.scrollWidth,r=Math.ceil(i.outerWidth(!0)+(l.width()-s)),c=Math.ceil(i.outerHeight(!0)),l.css({width:a.css.width===o?r+(l.outerWidth()-l.innerWidth()):a.css.width,height:a.css.height===o?c+(l.outerHeight()-l.innerHeight()):a.css.height})),l.removeClass("fancybox-is-hidden")}})):this.afterLoad(t),e.attr("src",t.src),t.opts.smallBtn===!0&&t.$content.prepend(i.translate(t,t.opts.btnTpl.smallBtn)),s.one("onReset",function(){try{n(this).find("iframe").hide().attr("src","//about:blank")}catch(t){}n(this).empty(),t.isLoaded=!1})},setContent:function(t,e){var o=this;o.isClosing||(o.hideLoading(t),t.$slide.empty(),l(e)&&e.parent().length?(e.parent(".fancybox-slide--inline").trigger("onReset"),t.$placeholder=n("
    ").hide().insertAfter(e),e.css("display","inline-block")):t.hasError||("string"===n.type(e)&&(e=n("
    ").append(n.trim(e)).contents(),3===e[0].nodeType&&(e=n("
    ").html(e))),t.opts.filter&&(e=n("
    ").html(e).find(t.opts.filter))),t.$slide.one("onReset",function(){t.$placeholder&&(t.$placeholder.after(e.hide()).remove(),t.$placeholder=null),t.$smallBtn&&(t.$smallBtn.remove(),t.$smallBtn=null),t.hasError||(n(this).empty(),t.isLoaded=!1)}),t.$content=n(e).appendTo(t.$slide),t.opts.smallBtn&&!t.$smallBtn&&(t.$smallBtn=n(o.translate(t,t.opts.btnTpl.smallBtn)).appendTo(t.$content)),this.afterLoad(t))},setError:function(t){t.hasError=!0,t.$slide.removeClass("fancybox-slide--"+t.type),this.setContent(t,this.translate(t,t.opts.errorTpl))},showLoading:function(t){var e=this;t=t||e.current,t&&!t.$spinner&&(t.$spinner=n(e.opts.spinnerTpl).appendTo(t.$slide))},hideLoading:function(t){var e=this;t=t||e.current,t&&t.$spinner&&(t.$spinner.remove(),delete t.$spinner)},afterLoad:function(t){var e=this;e.isClosing||(t.isLoading=!1,t.isLoaded=!0,e.trigger("afterLoad",t),e.hideLoading(t),t.opts.protect&&t.$content&&!t.hasError&&(t.$content.on("contextmenu.fb",function(t){return 2==t.button&&t.preventDefault(),!0}),"image"===t.type&&n('
    ').appendTo(t.$content)),e.revealContent(t))},revealContent:function(t){var e,i,a,s,r,c=this,l=t.$slide,u=!1;return e=t.opts[c.firstRun?"animationEffect":"transitionEffect"],a=t.opts[c.firstRun?"animationDuration":"transitionDuration"],a=parseInt(t.forcedDuration===o?a:t.forcedDuration,10),!t.isMoved&&t.pos===c.currPos&&a||(e=!1),"zoom"!==e||t.pos===c.currPos&&a&&"image"===t.type&&!t.hasError&&(u=c.getThumbPos(t))||(e="fade"),"zoom"===e?(r=c.getFitPos(t),r.scaleX=Math.round(r.width/u.width*100)/100,r.scaleY=Math.round(r.height/u.height*100)/100,delete r.width,delete r.height,s=t.opts.zoomOpacity,"auto"==s&&(s=Math.abs(t.width/t.height-u.width/u.height)>.1),s&&(u.opacity=.1,r.opacity=1),n.fancybox.setTranslate(t.$content.removeClass("fancybox-is-hidden"),u),f(t.$content),void n.fancybox.animate(t.$content,r,a,function(){c.complete()})):(c.updateSlide(t),e?(n.fancybox.stop(l),i="fancybox-animated fancybox-slide--"+(t.pos>c.prevPos?"next":"previous")+" fancybox-fx-"+e,l.removeAttr("style").removeClass("fancybox-slide--current fancybox-slide--next fancybox-slide--previous").addClass(i),t.$content.removeClass("fancybox-is-hidden"),f(l),void n.fancybox.animate(l,"fancybox-slide--current",a,function(e){l.removeClass(i).removeAttr("style"),t.pos===c.currPos&&c.complete()},!0)):(f(l),t.$content.removeClass("fancybox-is-hidden"),void(t.pos===c.currPos&&c.complete())))},getThumbPos:function(o){var i,a=this,s=!1,r=function(e){for(var o,i=e[0],a=i.getBoundingClientRect(),s=[];null!==i.parentElement;)"hidden"!==n(i.parentElement).css("overflow")&&"auto"!==n(i.parentElement).css("overflow")||s.push(i.parentElement.getBoundingClientRect()),i=i.parentElement;return o=s.every(function(t){var e=Math.min(a.right,t.right)-Math.max(a.left,t.left),n=Math.min(a.bottom,t.bottom)-Math.max(a.top,t.top);return e>0&&n>0}),o&&a.bottom>0&&a.right>0&&a.left=t.currPos-1&&o.pos<=t.currPos+1?i[o.pos]=o:o&&(n.fancybox.stop(o.$slide),o.$slide.unbind().remove())}),t.slides=i,t.updateCursor(),t.trigger("afterShow"),(n(e.activeElement).is("[disabled]")||o.opts.autoFocus&&"image"!=o.type&&"iframe"!==o.type)&&t.focus())},preload:function(){var t,e,n=this;n.group.length<2||(t=n.slides[n.currPos+1],e=n.slides[n.currPos-1],t&&"image"===t.type&&n.loadSlide(t),e&&"image"===e.type&&n.loadSlide(e))},focus:function(){var t,e=this.current;this.isClosing||(t=e&&e.isComplete?e.$slide.find("button,:input,[tabindex],a").filter(":not([disabled]):visible:first"):null,t=t&&t.length?t:this.$refs.container,t.focus())},activate:function(){var t=this;n(".fancybox-container").each(function(){var e=n(this).data("FancyBox");e&&e.uid!==t.uid&&!e.isClosing&&e.trigger("onDeactivate")}),t.current&&(t.$refs.container.index()>0&&t.$refs.container.prependTo(e.body),t.updateControls()),t.trigger("onActivate"),t.addEvents()},close:function(t,e){var o,i,a,s,r,c,l=this,f=l.current,h=function(){l.cleanUp(t)};return!l.isClosing&&(l.isClosing=!0,l.trigger("beforeClose",t)===!1?(l.isClosing=!1,u(function(){l.update()}),!1):(l.removeEvents(),f.timouts&&clearTimeout(f.timouts),a=f.$content,o=f.opts.animationEffect,i=n.isNumeric(e)?e:o?f.opts.animationDuration:0,f.$slide.off(d).removeClass("fancybox-slide--complete fancybox-slide--next fancybox-slide--previous fancybox-animated"),f.$slide.siblings().trigger("onReset").remove(),i&&l.$refs.container.removeClass("fancybox-is-open").addClass("fancybox-is-closing"),l.hideLoading(f),l.hideControls(),l.updateCursor(),"zoom"!==o||t!==!0&&a&&i&&"image"===f.type&&!f.hasError&&(c=l.getThumbPos(f))||(o="fade"),"zoom"===o?(n.fancybox.stop(a),r=n.fancybox.getTranslate(a),r.width=r.width*r.scaleX,r.height=r.height*r.scaleY,s=f.opts.zoomOpacity,"auto"==s&&(s=Math.abs(f.width/f.height-c.width/c.height)>.1),s&&(c.opacity=0),r.scaleX=r.width/c.width,r.scaleY=r.height/c.height,r.width=c.width,r.height=c.height,n.fancybox.setTranslate(f.$content,r),n.fancybox.animate(f.$content,c,i,h),!0):(o&&i?t===!0?setTimeout(h,i):n.fancybox.animate(f.$slide.removeClass("fancybox-slide--current"),"fancybox-animated fancybox-slide--previous fancybox-fx-"+o,i,h):h(),!0)))},cleanUp:function(t){var e,o=this;o.current.$slide.trigger("onReset"),o.$refs.container.empty().remove(),o.trigger("afterClose",t),o.$lastFocus&&!o.current.focusBack&&o.$lastFocus.focus(),o.current=null,e=n.fancybox.getInstance(),e?e.activate():(s.scrollTop(o.scrollTop).scrollLeft(o.scrollLeft),n("html").removeClass("fancybox-enabled"),n("#fancybox-style-noscroll").remove())},trigger:function(t,e){var o,i=Array.prototype.slice.call(arguments,1),a=this,s=e&&e.opts?e:a.current;return s?i.unshift(s):s=a,i.unshift(a),n.isFunction(s.opts[t])&&(o=s.opts[t].apply(s,i)),o===!1?o:void("afterClose"===t?r.trigger(t+".fb",i):a.$refs.container.trigger(t+".fb",i))},updateControls:function(t){var e=this,o=e.current,i=o.index,a=o.opts,s=a.caption,r=e.$refs.caption;o.$slide.trigger("refresh"),e.$caption=s&&s.length?r.html(s):null,e.isHiddenControls||e.showControls(),n("[data-fancybox-count]").html(e.group.length),n("[data-fancybox-index]").html(i+1),n("[data-fancybox-prev]").prop("disabled",!a.loop&&i<=0),n("[data-fancybox-next]").prop("disabled",!a.loop&&i>=e.group.length-1)},hideControls:function(){this.isHiddenControls=!0,this.$refs.container.removeClass("fancybox-show-infobar fancybox-show-toolbar fancybox-show-caption fancybox-show-nav")},showControls:function(){var t=this,e=t.current?t.current.opts:t.opts,n=t.$refs.container;t.isHiddenControls=!1,t.idleSecondsCounter=0,n.toggleClass("fancybox-show-toolbar",!(!e.toolbar||!e.buttons)).toggleClass("fancybox-show-infobar",!!(e.infobar&&t.group.length>1)).toggleClass("fancybox-show-nav",!!(e.arrows&&t.group.length>1)).toggleClass("fancybox-is-modal",!!e.modal),t.$caption?n.addClass("fancybox-show-caption "):n.removeClass("fancybox-show-caption")},toggleControls:function(){this.isHiddenControls?this.showControls():this.hideControls()}}),n.fancybox={version:"3.1.20",defaults:a,getInstance:function(t){var e=n('.fancybox-container:not(".fancybox-is-closing"):first').data("FancyBox"),o=Array.prototype.slice.call(arguments,1);return e instanceof h&&("string"===n.type(t)?e[t].apply(e,o):"function"===n.type(t)&&t.apply(e,o),e)},open:function(t,e,n){return new h(t,e,n)},close:function(t){var e=this.getInstance();e&&(e.close(),t===!0&&this.close())},destroy:function(){this.close(!0),r.off("click.fb-start")},isMobile:e.createTouch!==o&&/Android|webOS|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent),use3d:function(){var n=e.createElement("div");return t.getComputedStyle&&t.getComputedStyle(n).getPropertyValue("transform")&&!(e.documentMode&&e.documentMode<11)}(),getTranslate:function(t){var e;if(!t||!t.length)return!1;if(e=t.eq(0).css("transform"),e&&e.indexOf("matrix")!==-1?(e=e.split("(")[1],e=e.split(")")[0],e=e.split(",")):e=[],e.length)e=e.length>10?[e[13],e[12],e[0],e[5]]:[e[5],e[4],e[0],e[3]],e=e.map(parseFloat);else{e=[0,0,1,1];var n=/\.*translate\((.*)px,(.*)px\)/i,o=n.exec(t.eq(0).attr("style"));o&&(e[0]=parseFloat(o[2]),e[1]=parseFloat(o[1]))}return{top:e[0],left:e[1],scaleX:e[2],scaleY:e[3],opacity:parseFloat(t.css("opacity")),width:t.width(),height:t.height()}},setTranslate:function(t,e){var n="",i={};if(t&&e)return e.left===o&&e.top===o||(n=(e.left===o?t.position().left:e.left)+"px, "+(e.top===o?t.position().top:e.top)+"px",n=this.use3d?"translate3d("+n+", 0px)":"translate("+n+")"),e.scaleX!==o&&e.scaleY!==o&&(n=(n.length?n+" ":"")+"scale("+e.scaleX+", "+e.scaleY+")"),n.length&&(i.transform=n),e.opacity!==o&&(i.opacity=e.opacity),e.width!==o&&(i.width=e.width),e.height!==o&&(i.height=e.height),t.css(i)},animate:function(t,e,i,a,s){var r=d||"transitionend";n.isFunction(i)&&(a=i,i=null),n.isPlainObject(e)||t.removeAttr("style"),t.on(r,function(i){(!i||!i.originalEvent||t.is(i.originalEvent.target)&&"z-index"!=i.originalEvent.propertyName)&&(t.off(r),n.isPlainObject(e)?e.scaleX!==o&&e.scaleY!==o&&(t.css("transition-duration","0ms"),e.width=t.width()*e.scaleX,e.height=t.height()*e.scaleY,e.scaleX=1,e.scaleY=1,n.fancybox.setTranslate(t,e)):s!==!0&&t.removeClass(e),n.isFunction(a)&&a(i))}),n.isNumeric(i)&&t.css("transition-duration",i+"ms"),n.isPlainObject(e)?n.fancybox.setTranslate(t,e):t.addClass(e),t.data("timer",setTimeout(function(){t.trigger("transitionend")},i+16))},stop:function(t){clearTimeout(t.data("timer")),t.off(d)}},n.fn.fancybox=function(t){var e;return t=t||{},e=t.selector||!1,e?n("body").off("click.fb-start",e).on("click.fb-start",e,{items:n(e),options:t},i):this.off("click.fb-start").on("click.fb-start",{items:this,options:t},i),this},r.on("click.fb-start","[data-fancybox]",i)}}(window,document,window.jQuery),function(t){"use strict";var e=function(e,n,o){if(e)return o=o||"","object"===t.type(o)&&(o=t.param(o,!0)),t.each(n,function(t,n){e=e.replace("$"+t,n||"")}),o.length&&(e+=(e.indexOf("?")>0?"&":"?")+o),e},n={youtube:{matcher:/(youtube\.com|youtu\.be|youtube\-nocookie\.com)\/(watch\?(.*&)?v=|v\/|u\/|embed\/?)?(videoseries\?list=(.*)|[\w-]{11}|\?listType=(.*)&list=(.*))(.*)/i,params:{autoplay:1,autohide:1,fs:1,rel:0,hd:1,wmode:"transparent",enablejsapi:1,html5:1},paramPlace:8,type:"iframe",url:"//www.youtube.com/embed/$4",thumb:"//img.youtube.com/vi/$4/hqdefault.jpg"},vimeo:{matcher:/^.+vimeo.com\/(.*\/)?([\d]+)(.*)?/,params:{autoplay:1,hd:1,show_title:1,show_byline:1,show_portrait:0,fullscreen:1,api:1},paramPlace:3,type:"iframe",url:"//player.vimeo.com/video/$2"},metacafe:{matcher:/metacafe.com\/watch\/(\d+)\/(.*)?/,type:"iframe",url:"//www.metacafe.com/embed/$1/?ap=1"},dailymotion:{matcher:/dailymotion.com\/video\/(.*)\/?(.*)/,params:{additionalInfos:0,autoStart:1},type:"iframe",url:"//www.dailymotion.com/embed/video/$1"},vine:{matcher:/vine.co\/v\/([a-zA-Z0-9\?\=\-]+)/,type:"iframe",url:"//vine.co/v/$1/embed/simple"},instagram:{matcher:/(instagr\.am|instagram\.com)\/p\/([a-zA-Z0-9_\-]+)\/?/i,type:"image",url:"//$1/p/$2/media/?size=l"},google_maps:{matcher:/(maps\.)?google\.([a-z]{2,3}(\.[a-z]{2})?)\/(((maps\/(place\/(.*)\/)?\@(.*),(\d+.?\d+?)z))|(\?ll=))(.*)?/i,type:"iframe",url:function(t){return"//maps.google."+t[2]+"/?ll="+(t[9]?t[9]+"&z="+Math.floor(t[10])+(t[12]?t[12].replace(/^\//,"&"):""):t[12])+"&output="+(t[12]&&t[12].indexOf("layer=c")>0?"svembed":"embed")}}};t(document).on("onInit.fb",function(o,i){t.each(i.group,function(o,i){var a,s,r,c,l,u,d,f=i.src||"",h=!1;i.type||(a=t.extend(!0,{},n,i.opts.media),t.each(a,function(n,o){if(r=f.match(o.matcher),u={},d=n,r){if(h=o.type,o.paramPlace&&r[o.paramPlace]){l=r[o.paramPlace],"?"==l[0]&&(l=l.substring(1)),l=l.split("&");for(var a=0;ae.clientHeight,a=("scroll"===o||"auto"===o)&&e.scrollWidth>e.clientWidth;return i||a},l=function(t){for(var e=!1;;){if(e=c(t.get(0)))break;if(t=t.parent(),!t.length||t.hasClass("fancybox-stage")||t.is("body"))break}return e},u=function(t){var e=this;e.instance=t,e.$bg=t.$refs.bg,e.$stage=t.$refs.stage,e.$container=t.$refs.container,e.destroy(),e.$container.on("touchstart.fb.touch mousedown.fb.touch",n.proxy(e,"ontouchstart"))};u.prototype.destroy=function(){this.$container.off(".fb.touch")},u.prototype.ontouchstart=function(o){var i=this,c=n(o.target),u=i.instance,d=u.current,f=d.$content,h="touchstart"==o.type;if(h&&i.$container.off("mousedown.fb.touch"),!d||i.instance.isAnimating||i.instance.isClosing)return o.stopPropagation(),void o.preventDefault();if((!o.originalEvent||2!=o.originalEvent.button)&&c.length&&!r(c)&&!r(c.parent())&&!(o.originalEvent.clientX>c[0].clientWidth+c.offset().left)&&(i.startPoints=a(o),i.startPoints&&!(i.startPoints.length>1&&u.isSliding))){if(i.$target=c,i.$content=f,i.canTap=!0,n(e).off(".fb.touch"),n(e).on(h?"touchend.fb.touch touchcancel.fb.touch":"mouseup.fb.touch mouseleave.fb.touch",n.proxy(i,"ontouchend")),n(e).on(h?"touchmove.fb.touch":"mousemove.fb.touch",n.proxy(i,"ontouchmove")),o.stopPropagation(),!u.current.opts.touch&&!u.canPan()||!c.is(i.$stage)&&!i.$stage.find(c).length)return void(c.is("img")&&o.preventDefault());n.fancybox.isMobile&&(l(i.$target)||l(i.$target.parent()))||o.preventDefault(),i.canvasWidth=Math.round(d.$slide[0].clientWidth),i.canvasHeight=Math.round(d.$slide[0].clientHeight),i.startTime=(new Date).getTime(),i.distanceX=i.distanceY=i.distance=0,i.isPanning=!1,i.isSwiping=!1,i.isZooming=!1,i.sliderStartPos=i.sliderLastPos||{top:0,left:0},i.contentStartPos=n.fancybox.getTranslate(i.$content),i.contentLastPos=null,1!==i.startPoints.length||i.isZooming||(i.canTap=!u.isSliding,"image"===d.type&&(i.contentStartPos.width>i.canvasWidth+1||i.contentStartPos.height>i.canvasHeight+1)?(n.fancybox.stop(i.$content),i.$content.css("transition-duration","0ms"),i.isPanning=!0):i.isSwiping=!0,i.$container.addClass("fancybox-controls--isGrabbing")),2!==i.startPoints.length||u.isAnimating||d.hasError||"image"!==d.type||!d.isLoaded&&!d.$ghost||(i.isZooming=!0,i.isSwiping=!1,i.isPanning=!1,n.fancybox.stop(i.$content),i.$content.css("transition-duration","0ms"),i.centerPointStartX=.5*(i.startPoints[0].x+i.startPoints[1].x)-n(t).scrollLeft(),i.centerPointStartY=.5*(i.startPoints[0].y+i.startPoints[1].y)-n(t).scrollTop(),i.percentageOfImageAtPinchPointX=(i.centerPointStartX-i.contentStartPos.left)/i.contentStartPos.width,i.percentageOfImageAtPinchPointY=(i.centerPointStartY-i.contentStartPos.top)/i.contentStartPos.height,i.startDistanceBetweenFingers=s(i.startPoints[0],i.startPoints[1]))}},u.prototype.ontouchmove=function(t){var e=this;if(e.newPoints=a(t),n.fancybox.isMobile&&(l(e.$target)||l(e.$target.parent())))return t.stopPropagation(),void(e.canTap=!1);if((e.instance.current.opts.touch||e.instance.canPan())&&e.newPoints&&e.newPoints.length&&(e.distanceX=s(e.newPoints[0],e.startPoints[0],"x"),e.distanceY=s(e.newPoints[0],e.startPoints[0],"y"),e.distance=s(e.newPoints[0],e.startPoints[0]),e.distance>0)){if(!e.$target.is(e.$stage)&&!e.$stage.find(e.$target).length)return;t.stopPropagation(),t.preventDefault(),e.isSwiping?e.onSwipe():e.isPanning?e.onPan():e.isZooming&&e.onZoom()}},u.prototype.onSwipe=function(){var e,a=this,s=a.isSwiping,r=a.sliderStartPos.left||0;s===!0?Math.abs(a.distance)>10&&(a.canTap=!1,a.instance.group.length<2&&a.instance.opts.touch.vertical?a.isSwiping="y":a.instance.isSliding||a.instance.opts.touch.vertical===!1||"auto"===a.instance.opts.touch.vertical&&n(t).width()>800?a.isSwiping="x":(e=Math.abs(180*Math.atan2(a.distanceY,a.distanceX)/Math.PI),a.isSwiping=e>45&&e<135?"y":"x"),a.instance.isSliding=a.isSwiping,a.startPoints=a.newPoints,n.each(a.instance.slides,function(t,e){n.fancybox.stop(e.$slide),e.$slide.css("transition-duration","0ms"),e.inTransition=!1,e.pos===a.instance.current.pos&&(a.sliderStartPos.left=n.fancybox.getTranslate(e.$slide).left)}),a.instance.SlideShow&&a.instance.SlideShow.isActive&&a.instance.SlideShow.stop()):("x"==s&&(a.distanceX>0&&(a.instance.group.length<2||0===a.instance.current.index&&!a.instance.current.opts.loop)?r+=Math.pow(a.distanceX,.8):a.distanceX<0&&(a.instance.group.length<2||a.instance.current.index===a.instance.group.length-1&&!a.instance.current.opts.loop)?r-=Math.pow(-a.distanceX,.8):r+=a.distanceX),a.sliderLastPos={top:"x"==s?0:a.sliderStartPos.top+a.distanceY,left:r},a.requestId&&(i(a.requestId),a.requestId=null),a.requestId=o(function(){a.sliderLastPos&&(n.each(a.instance.slides,function(t,e){var o=e.pos-a.instance.currPos;n.fancybox.setTranslate(e.$slide,{top:a.sliderLastPos.top,left:a.sliderLastPos.left+o*a.canvasWidth+o*e.opts.gutter})}),a.$container.addClass("fancybox-is-sliding"))}))},u.prototype.onPan=function(){var t,e,a,s=this;s.canTap=!1,t=s.contentStartPos.width>s.canvasWidth?s.contentStartPos.left+s.distanceX:s.contentStartPos.left,e=s.contentStartPos.top+s.distanceY,a=s.limitMovement(t,e,s.contentStartPos.width,s.contentStartPos.height),a.scaleX=s.contentStartPos.scaleX,a.scaleY=s.contentStartPos.scaleY,s.contentLastPos=a,s.requestId&&(i(s.requestId),s.requestId=null),s.requestId=o(function(){n.fancybox.setTranslate(s.$content,s.contentLastPos)})},u.prototype.limitMovement=function(t,e,n,o){var i,a,s,r,c=this,l=c.canvasWidth,u=c.canvasHeight,d=c.contentStartPos.left,f=c.contentStartPos.top,h=c.distanceX,p=c.distanceY;return i=Math.max(0,.5*l-.5*n),a=Math.max(0,.5*u-.5*o),s=Math.min(l-n,.5*l-.5*n),r=Math.min(u-o,.5*u-.5*o),n>l&&(h>0&&t>i&&(t=i-1+Math.pow(-i+d+h,.8)||0),h<0&&tu&&(p>0&&e>a&&(e=a-1+Math.pow(-a+f+p,.8)||0),p<0&&ea?(t=t>0?0:t,t=ts?(e=e>0?0:e,e=e50?(n.fancybox.animate(e.instance.current.$slide,{top:e.sliderStartPos.top+e.distanceY+150*e.velocityY,opacity:0},150),o=e.instance.close(!0,300)):"x"==t&&e.distanceX>50&&e.instance.group.length>1?o=e.instance.previous(e.speedX):"x"==t&&e.distanceX<-50&&e.instance.group.length>1&&(o=e.instance.next(e.speedX)),o!==!1||"x"!=t&&"y"!=t||e.instance.jumpTo(e.instance.current.index,150),e.$container.removeClass("fancybox-is-sliding")},u.prototype.endPanning=function(){var t,e,o,i=this;i.contentLastPos&&(i.instance.current.opts.touch.momentum===!1?(t=i.contentLastPos.left,e=i.contentLastPos.top):(t=i.contentLastPos.left+i.velocityX*i.speed,e=i.contentLastPos.top+i.velocityY*i.speed),o=i.limitPosition(t,e,i.contentStartPos.width,i.contentStartPos.height),o.width=i.contentStartPos.width,o.height=i.contentStartPos.height,n.fancybox.animate(i.$content,o,330))},u.prototype.endZooming=function(){var t,e,o,i,a=this,s=a.instance.current,r=a.newWidth,c=a.newHeight;a.contentLastPos&&(t=a.contentLastPos.left,e=a.contentLastPos.top,i={top:e,left:t,width:r,height:c,scaleX:1,scaleY:1},n.fancybox.setTranslate(a.$content,i),rs.width||c>s.height?a.instance.scaleToActual(a.centerPointStartX,a.centerPointStartY,150):(o=a.limitPosition(t,e,r,c),n.fancybox.setTranslate(a.content,n.fancybox.getTranslate(a.$content)),n.fancybox.animate(a.$content,o,150)))},u.prototype.onTap=function(t){var e,o=this,i=n(t.target),s=o.instance,r=s.current,c=t&&a(t)||o.startPoints,l=c[0]?c[0].x-o.$stage.offset().left:0,u=c[0]?c[0].y-o.$stage.offset().top:0,d=function(e){var i=r.opts[e];if(n.isFunction(i)&&(i=i.apply(s,[r,t])),i)switch(i){case"close":s.close(o.startEvent);break;case"toggleControls":s.toggleControls(!0);break;case"next":s.next();break;case"nextOrClose":s.group.length>1?s.next():s.close(o.startEvent);break;case"zoom":"image"==r.type&&(r.isLoaded||r.$ghost)&&(s.canPan()?s.scaleToFit():s.isScaledDown()?s.scaleToActual(l,u):s.group.length<2&&s.close(o.startEvent))}};if(!(t.originalEvent&&2==t.originalEvent.button||s.isSliding||l>i[0].clientWidth+i.offset().left)){if(i.is(".fancybox-bg,.fancybox-inner,.fancybox-outer,.fancybox-container"))e="Outside";else if(i.is(".fancybox-slide"))e="Slide";else{if(!s.current.$content||!s.current.$content.has(t.target).length)return;e="Content"}if(o.tapped){if(clearTimeout(o.tapped),o.tapped=null,Math.abs(l-o.tapX)>50||Math.abs(u-o.tapY)>50||s.isSliding)return this;d("dblclick"+e)}else o.tapX=l,o.tapY=u,r.opts["dblclick"+e]&&r.opts["dblclick"+e]!==r.opts["click"+e]?o.tapped=setTimeout(function(){o.tapped=null,d("click"+e)},300):d("click"+e);return this}},n(e).on("onActivate.fb",function(t,e){e&&!e.Guestures&&(e.Guestures=new u(e))}),n(e).on("beforeClose.fb",function(t,e){e&&e.Guestures&&e.Guestures.destroy()})}(window,document,window.jQuery),function(t,e){"use strict";var n=function(t){this.instance=t,this.init()};e.extend(n.prototype,{timer:null,isActive:!1,$button:null,speed:3e3,init:function(){var t=this;t.$button=t.instance.$refs.toolbar.find("[data-fancybox-play]").on("click",function(){t.toggle()}),(t.instance.group.length<2||!t.instance.group[t.instance.currIndex].opts.slideShow)&&t.$button.hide()},set:function(){var t=this;t.instance&&t.instance.current&&(t.instance.current.opts.loop||t.instance.currIndex1&&t.instance.group[t.instance.currIndex].opts.thumbs&&("image"==e.type||e.opts.thumb||e.opts.$thumb)&&("image"==n.type||n.opts.thumb||n.opts.$thumb)?(t.$button.on("click",function(){t.toggle()}),t.isActive=!0):(t.$button.hide(),t.isActive=!1)},create:function(){var t,n,o=this.instance;this.$grid=e('
    ').appendTo(o.$refs.container),t="
      ",e.each(o.group,function(e,o){n=o.opts.thumb||(o.opts.$thumb?o.opts.$thumb.attr("src"):null),n||"image"!==o.type||(n=o.src),n&&n.length&&(t+='
    • ')}),t+="
    ",this.$list=e(t).appendTo(this.$grid).on("click","li",function(){o.jumpTo(e(this).data("index"))}),this.$list.find("img").hide().one("load",function(){var t,n,o,i,a=e(this).parent().removeClass("fancybox-thumbs-loading"),s=a.outerWidth(),r=a.outerHeight();t=this.naturalWidth||this.width,n=this.naturalHeight||this.height,o=t/s,i=n/r,o>=1&&i>=1&&(o>i?(t/=i,n=r):(t=s,n/=o)),e(this).css({width:Math.floor(t),height:Math.floor(n),"margin-top":Math.min(0,Math.floor(.3*r-.3*n)),"margin-left":Math.min(0,Math.floor(.5*s-.5*t))}).show()}).each(function(){this.src=e(this).data("src")})},focus:function(){this.instance.current&&this.$list.children().removeClass("fancybox-thumbs-active").filter('[data-index="'+this.instance.current.index+'"]').addClass("fancybox-thumbs-active").focus()},close:function(){this.$grid.hide()},update:function(){this.instance.$refs.container.toggleClass("fancybox-show-thumbs",this.isVisible),this.isVisible?(this.$grid||this.create(),this.instance.trigger("onThumbsShow"),this.focus()):this.$grid&&this.instance.trigger("onThumbsHide"),this.instance.update()},hide:function(){this.isVisible=!1,this.update()},show:function(){this.isVisible=!0,this.update()},toggle:function(){this.isVisible=!this.isVisible,this.update()}}),e(t).on({"onInit.fb":function(t,e){e&&!e.Thumbs&&(e.Thumbs=new n(e))},"beforeShow.fb":function(t,e,n,o){var i=e&&e.Thumbs;if(i&&i.isActive){if(n.modal)return i.$button.hide(),void i.hide();o&&e.opts.thumbs.autoStart===!0&&i.show(),i.isVisible&&i.focus()}},"afterKeydown.fb":function(t,e,n,o,i){var a=e&&e.Thumbs;a&&a.isActive&&71===i&&(o.preventDefault(),a.toggle())},"beforeClose.fb":function(t,e){var n=e&&e.Thumbs;n&&n.isVisible&&e.opts.thumbs.hideOnClose!==!1&&n.close()}})}(document,window.jQuery),function(t,e,n){"use strict";function o(){var t=e.location.hash.substr(1),n=t.split("-"),o=n.length>1&&/^\+?\d+$/.test(n[n.length-1])?parseInt(n.pop(-1),10)||1:1,i=n.join("-");return o<1&&(o=1),{hash:t,index:o,gallery:i}}function i(t){var e;""!==t.gallery&&(e=n("[data-fancybox='"+n.escapeSelector(t.gallery)+"']").eq(t.index-1),e.length?e.trigger("click"):n("#"+n.escapeSelector(t.gallery)).trigger("click"))}function a(t){var e;return!!t&&(e=t.current?t.current.opts:t.opts,e.$orig?e.$orig.data("fancybox"):e.hash||"")}n.escapeSelector||(n.escapeSelector=function(t){var e=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\x80-\uFFFF\w-]/g,n=function(t,e){return e?"\0"===t?"�":t.slice(0,-1)+"\\"+t.charCodeAt(t.length-1).toString(16)+" ":"\\"+t};return(t+"").replace(e,n)});var s=null,r=null;n(function(){setTimeout(function(){n.fancybox.defaults.hash!==!1&&(n(t).on({"onInit.fb":function(t,e){var n,i;e.group[e.currIndex].opts.hash!==!1&&(n=o(),i=a(e),i&&n.gallery&&i==n.gallery&&(e.currIndex=n.index-1))},"beforeShow.fb":function(n,o,i,c){var l;i.opts.hash!==!1&&(l=a(o),l&&""!==l&&(e.location.hash.indexOf(l)<0&&(o.opts.origHash=e.location.hash),s=l+(o.group.length>1?"-"+(i.index+1):""),"replaceState"in e.history?(r&&clearTimeout(r),r=setTimeout(function(){e.history[c?"pushState":"replaceState"]({},t.title,e.location.pathname+e.location.search+"#"+s),r=null},300)):e.location.hash=s))},"beforeClose.fb":function(o,i,c){var l,u;r&&clearTimeout(r),c.opts.hash!==!1&&(l=a(i),u=i&&i.opts.origHash?i.opts.origHash:"",l&&""!==l&&("replaceState"in history?e.history.replaceState({},t.title,e.location.pathname+e.location.search+u):(e.location.hash=u,n(e).scrollTop(i.scrollTop).scrollLeft(i.scrollLeft))),s=null)}}),n(e).on("hashchange.fb",function(){var t=o();n.fancybox.getInstance()?!s||s===t.gallery+"-"+t.index||1===t.index&&s==t.gallery||(s=null,n.fancybox.close()):""!==t.gallery&&i(t)}),n(e).one("unload.fb popstate.fb",function(){n.fancybox.getInstance("close",!0,0)}),i(o()))},50)})}(document,window,window.jQuery); (function($){ $.fn.initGalleryFancybox=function(){ $('a.fancy-gallery', this).fancybox({ caption:function(instance, item){ var slideInfo=$('.slide-info', this); if($('> *', slideInfo).length){ return slideInfo.clone().html(); }}, onInit: function(instance){ instance.$refs.caption.addClass('fancybox-title'); instance.$refs.caption.parent().addClass('slideinfo'); }}); }; $.fn.initPortfolioFancybox=function(){ $('a.fancy, .fancy-link-inner a', this).fancybox(); $('.portfolio-item a.vimeo, .portfolio-item a.youtube', this).fancybox({ type: 'iframe' }); $('.portfolio-item a.self_video', this).click(function(e){ e.preventDefault(); var $a=$(this); $.fancybox.open({ type: 'html', maxWidth: 1200, content: '
    ', afterShow: function(instance, current){ $('video', current.$content).mediaelementplayer(); }}); }); }; $.fn.initBlogFancybox=function(){ $('a.fancy, .fancy-link-inner a', this).fancybox(); $('.blog article a.youtube, .blog article a.vimeo', this).fancybox({ type: 'iframe' }); }; $(document).initGalleryFancybox(); $(document).initPortfolioFancybox(); $(document).initBlogFancybox(); $('a.fancy, .fancy-link-inner a').fancybox(); })(jQuery); (function($){ $(function(){ $('body').updateAccordions(); }); $.fn.updateAccordions=function(){ $('.gem_accordion', this).each(function (index){ var $accordion=$(this); $accordion.thegemPreloader(function(){ var $tabs, interval=$accordion.attr("data-interval"), active_tab = !isNaN($accordion.data('active-tab'))&&parseInt($accordion.data('active-tab')) > 0 ? parseInt($accordion.data('active-tab')) - 1:false, collapsible=$accordion.data('collapsible')==='yes'; $tabs=$accordion.find('.gem_accordion_wrapper').accordion({ header:"> div > .gem_accordion_header", autoHeight:false, heightStyle:"content", active:active_tab, collapsible: collapsible, navigation:true, activate: function(event, ui){ if(ui.newPanel.size() > 0){ ui.newPanel.trigger('accordion-update'); }}, beforeActivate: function(event, ui){ if(ui.newPanel.size() > 0){ $("html, body").animate({ scrollTop: ui.newPanel.closest('.gem_accordion').offset().top - 200 }, 300); }} }); }); }); }})(jQuery); (function($){ 'use strict'; if(typeof wpcf7==='undefined'||wpcf7===null){ return; } wpcf7=$.extend({ cached: 0, inputs: [] }, wpcf7); $(function(){ wpcf7.supportHtml5=(function(){ var features={}; var input=document.createElement('input'); features.placeholder='placeholder' in input; var inputTypes=[ 'email', 'url', 'tel', 'number', 'range', 'date' ]; $.each(inputTypes, function(index, value){ input.setAttribute('type', value); features[ value ]=input.type!=='text'; }); return features; })(); $('div.wpcf7 > form').each(function(){ var $form=$(this); wpcf7.initForm($form); if(wpcf7.cached){ wpcf7.refill($form); }}); }); wpcf7.getId=function(form){ return parseInt($('input[name="_wpcf7"]', form).val(), 10); }; wpcf7.initForm=function(form){ var $form=$(form); wpcf7.setStatus($form, 'init'); $form.submit(function(event){ if(! wpcf7.supportHtml5.placeholder){ $('[placeholder].placeheld', $form).each(function(i, n){ $(n).val('').removeClass('placeheld'); }); } if(typeof window.FormData==='function'){ wpcf7.submit($form); event.preventDefault(); }}); $('.wpcf7-submit', $form).after(''); wpcf7.toggleSubmit($form); $form.on('click', '.wpcf7-acceptance', function(){ wpcf7.toggleSubmit($form); }); $('.wpcf7-exclusive-checkbox', $form).on('click', 'input:checkbox', function(){ var name=$(this).attr('name'); $form.find('input:checkbox[name="' + name + '"]').not(this).prop('checked', false); }); $('.wpcf7-list-item.has-free-text', $form).each(function(){ var $freetext=$(':input.wpcf7-free-text', this); var $wrap=$(this).closest('.wpcf7-form-control'); if($(':checkbox, :radio', this).is(':checked')){ $freetext.prop('disabled', false); }else{ $freetext.prop('disabled', true); } $wrap.on('change', ':checkbox, :radio', function(){ var $cb=$('.has-free-text', $wrap).find(':checkbox, :radio'); if($cb.is(':checked')){ $freetext.prop('disabled', false).focus(); }else{ $freetext.prop('disabled', true); }}); }); if(! wpcf7.supportHtml5.placeholder){ $('[placeholder]', $form).each(function(){ $(this).val($(this).attr('placeholder')); $(this).addClass('placeheld'); $(this).focus(function(){ if($(this).hasClass('placeheld')){ $(this).val('').removeClass('placeheld'); }}); $(this).blur(function(){ if(''===$(this).val()){ $(this).val($(this).attr('placeholder')); $(this).addClass('placeheld'); }}); }); } if(wpcf7.jqueryUi&&! wpcf7.supportHtml5.date){ $form.find('input.wpcf7-date[type="date"]').each(function(){ $(this).datepicker({ dateFormat: 'yy-mm-dd', minDate: new Date($(this).attr('min')), maxDate: new Date($(this).attr('max')) }); }); } if(wpcf7.jqueryUi&&! wpcf7.supportHtml5.number){ $form.find('input.wpcf7-number[type="number"]').each(function(){ $(this).spinner({ min: $(this).attr('min'), max: $(this).attr('max'), step: $(this).attr('step') }); }); } wpcf7.resetCounter($form); $form.on('change', '.wpcf7-validates-as-url', function(){ var val=$.trim($(this).val()); if(val && ! val.match(/^[a-z][a-z0-9.+-]*:/i) && -1!==val.indexOf('.')){ val=val.replace(/^\/+/, ''); val='http://' + val; } $(this).val(val); }); }; wpcf7.submit=function(form){ if(typeof window.FormData!=='function'){ return; } var $form=$(form); $('.ajax-loader', $form).addClass('is-active'); wpcf7.clearResponse($form); var formData=new FormData($form.get(0)); var detail={ id: $form.closest('div.wpcf7').attr('id'), status: 'init', inputs: [], formData: formData }; $.each($form.serializeArray(), function(i, field){ if('_wpcf7'==field.name){ detail.contactFormId=field.value; }else if('_wpcf7_version'==field.name){ detail.pluginVersion=field.value; }else if('_wpcf7_locale'==field.name){ detail.contactFormLocale=field.value; }else if('_wpcf7_unit_tag'==field.name){ detail.unitTag=field.value; }else if('_wpcf7_container_post'==field.name){ detail.containerPostId=field.value; }else if(field.name.match(/^_/)){ }else{ detail.inputs.push(field); }}); wpcf7.triggerEvent($form.closest('div.wpcf7'), 'beforesubmit', detail); var ajaxSuccess=function(data, status, xhr, $form){ detail.id=$(data.into).attr('id'); detail.status=data.status; detail.apiResponse=data; switch(data.status){ case 'init': wpcf7.setStatus($form, 'init'); break; case 'validation_failed': $.each(data.invalid_fields, function(i, n){ $(n.into, $form).each(function(){ wpcf7.notValidTip(this, n.message); $('.wpcf7-form-control', this).addClass('wpcf7-not-valid'); $('.wpcf7-form-control', this).attr('aria-describedby', n.error_id ); $('[aria-invalid]', this).attr('aria-invalid', 'true'); }); }); wpcf7.setStatus($form, 'invalid'); wpcf7.triggerEvent(data.into, 'invalid', detail); break; case 'acceptance_missing': wpcf7.setStatus($form, 'unaccepted'); wpcf7.triggerEvent(data.into, 'unaccepted', detail); break; case 'spam': wpcf7.setStatus($form, 'spam'); wpcf7.triggerEvent(data.into, 'spam', detail); break; case 'aborted': wpcf7.setStatus($form, 'aborted'); wpcf7.triggerEvent(data.into, 'aborted', detail); break; case 'mail_sent': wpcf7.setStatus($form, 'sent'); wpcf7.triggerEvent(data.into, 'mailsent', detail); break; case 'mail_failed': wpcf7.setStatus($form, 'failed'); wpcf7.triggerEvent(data.into, 'mailfailed', detail); break; default: wpcf7.setStatus($form, 'custom-' + data.status.replace(/[^0-9a-z]+/i, '-') ); } wpcf7.refill($form, data); wpcf7.triggerEvent(data.into, 'submit', detail); if('mail_sent'==data.status){ $form.each(function(){ this.reset(); }); wpcf7.toggleSubmit($form); wpcf7.resetCounter($form); } if(! wpcf7.supportHtml5.placeholder){ $form.find('[placeholder].placeheld').each(function(i, n){ $(n).val($(n).attr('placeholder')); }); } $('.wpcf7-response-output', $form) .html('').append(data.message).slideDown('fast'); $('.screen-reader-response', $form.closest('.wpcf7')).each(function(){ var $response=$(this); $('[role="status"]', $response).html(data.message); if(data.invalid_fields){ $.each(data.invalid_fields, function(i, n){ if(n.idref){ var $li=$('
  • ').append($('').attr('href', '#' + n.idref).append(n.message)); }else{ var $li=$('
  • ').append(n.message); } $li.attr('id', n.error_id); $('ul', $response).append($li); }); }}); if(data.posted_data_hash){ $form.find('input[name="_wpcf7_posted_data_hash"]').first() .val(data.posted_data_hash); }}; $.ajax({ type: 'POST', url: wpcf7.apiSettings.getRoute('/contact-forms/' + wpcf7.getId($form) + '/feedback'), data: formData, dataType: 'json', processData: false, contentType: false }).done(function(data, status, xhr){ ajaxSuccess(data, status, xhr, $form); $('.ajax-loader', $form).removeClass('is-active'); }).fail(function(xhr, status, error){ var $e=$('
    ').text(error.message); $form.after($e); }); }; wpcf7.triggerEvent=function(target, name, detail){ var event=new CustomEvent('wpcf7' + name, { bubbles: true, detail: detail }); $(target).get(0).dispatchEvent(event); }; wpcf7.setStatus=function(form, status){ var $form=$(form); var prevStatus=$form.attr('data-status'); $form.data('status', status); $form.addClass(status); $form.attr('data-status', status); if(prevStatus&&prevStatus!==status){ $form.removeClass(prevStatus); }} wpcf7.toggleSubmit=function(form, state){ var $form=$(form); var $submit=$('input:submit', $form); if(typeof state!=='undefined'){ $submit.prop('disabled', ! state); return; } if($form.hasClass('wpcf7-acceptance-as-validation')){ return; } $submit.prop('disabled', false); $('.wpcf7-acceptance', $form).each(function(){ var $span=$(this); var $input=$('input:checkbox', $span); if(! $span.hasClass('optional')){ if($span.hasClass('invert')&&$input.is(':checked') || ! $span.hasClass('invert')&&! $input.is(':checked')){ $submit.prop('disabled', true); return false; }} }); }; wpcf7.resetCounter=function(form){ var $form=$(form); $('.wpcf7-character-count', $form).each(function(){ var $count=$(this); var name=$count.attr('data-target-name'); var down=$count.hasClass('down'); var starting=parseInt($count.attr('data-starting-value'), 10); var maximum=parseInt($count.attr('data-maximum-value'), 10); var minimum=parseInt($count.attr('data-minimum-value'), 10); var updateCount=function(target){ var $target=$(target); var length=$target.val().length; var count=down ? starting - length:length; $count.attr('data-current-value', count); $count.text(count); if(maximum&&maximum < length){ $count.addClass('too-long'); }else{ $count.removeClass('too-long'); } if(minimum&&length < minimum){ $count.addClass('too-short'); }else{ $count.removeClass('too-short'); }}; $(':input[name="' + name + '"]', $form).each(function(){ updateCount(this); $(this).keyup(function(){ updateCount(this); }); }); }); }; wpcf7.notValidTip=function(target, message){ var $target=$(target); $('.wpcf7-not-valid-tip', $target).remove(); $('').attr({ 'class': 'wpcf7-not-valid-tip', 'aria-hidden': 'true', }).text(message).appendTo($target); if($target.is('.use-floating-validation-tip *')){ var fadeOut=function(target){ $(target).not(':hidden').animate({ opacity: 0 }, 'fast', function(){ $(this).css({ 'z-index': -100 }); }); }; $target.on('mouseover', '.wpcf7-not-valid-tip', function(){ fadeOut(this); }); $target.on('focus', ':input', function(){ fadeOut($('.wpcf7-not-valid-tip', $target)); }); }}; wpcf7.refill=function(form, data){ var $form=$(form); var refillCaptcha=function($form, items){ $.each(items, function(i, n){ $form.find(':input[name="' + i + '"]').val(''); $form.find('img.wpcf7-captcha-' + i).attr('src', n); var match=/([0-9]+)\.(png|gif|jpeg)$/.exec(n); $form.find('input:hidden[name="_wpcf7_captcha_challenge_' + i + '"]').attr('value', match[ 1 ]); }); }; var refillQuiz=function($form, items){ $.each(items, function(i, n){ $form.find(':input[name="' + i + '"]').val(''); $form.find(':input[name="' + i + '"]').siblings('span.wpcf7-quiz-label').text(n[ 0 ]); $form.find('input:hidden[name="_wpcf7_quiz_answer_' + i + '"]').attr('value', n[ 1 ]); }); }; if(typeof data==='undefined'){ $.ajax({ type: 'GET', url: wpcf7.apiSettings.getRoute('/contact-forms/' + wpcf7.getId($form) + '/refill'), beforeSend: function(xhr){ var nonce=$form.find(':input[name="_wpnonce"]').val(); if(nonce){ xhr.setRequestHeader('X-WP-Nonce', nonce); }}, dataType: 'json' }).done(function(data, status, xhr){ if(data.captcha){ refillCaptcha($form, data.captcha); } if(data.quiz){ refillQuiz($form, data.quiz); }}); }else{ if(data.captcha){ refillCaptcha($form, data.captcha); } if(data.quiz){ refillQuiz($form, data.quiz); }} }; wpcf7.clearResponse=function(form){ var $form=$(form); $form.siblings('.screen-reader-response').each(function(){ $('[role="status"]', this).html(''); $('ul', this).html(''); }); $('.wpcf7-not-valid-tip', $form).remove(); $('[aria-invalid]', $form).attr('aria-invalid', 'false'); $('.wpcf7-form-control', $form).removeClass('wpcf7-not-valid'); $('.wpcf7-response-output', $form).hide().empty(); }; wpcf7.apiSettings.getRoute=function(path){ var url=wpcf7.apiSettings.root; url=url.replace(wpcf7.apiSettings.namespace, wpcf7.apiSettings.namespace + path); return url; };})(jQuery); (function (){ if(typeof window.CustomEvent==="function") return false; function CustomEvent(event, params){ params=params||{ bubbles: false, cancelable: false, detail: undefined }; var evt=document.createEvent('CustomEvent'); evt.initCustomEvent(event, params.bubbles, params.cancelable, params.detail); return evt; } CustomEvent.prototype=window.Event.prototype; window.CustomEvent=CustomEvent; })(); !function(d,l){"use strict";var e=!1,o=!1;if(l.querySelector)if(d.addEventListener)e=!0;if(d.wp=d.wp||{},!d.wp.receiveEmbedMessage)if(d.wp.receiveEmbedMessage=function(e){var t=e.data;if(t)if(t.secret||t.message||t.value)if(!/[^a-zA-Z0-9]/.test(t.secret)){var r,a,i,s,n,o=l.querySelectorAll('iframe[data-secret="'+t.secret+'"]'),c=l.querySelectorAll('blockquote[data-secret="'+t.secret+'"]');for(r=0;r=$tabs.tabs("length")&&(index=0),$tabs.tabs("select",index)}else{index=$tabs.tabs("option","active");var length=$tabs.find(".wpb_tab").length;index=jQuery(this).parent().hasClass("wpb_next_slide")?length<=index+1?0:index+1:index-1<0?length-1:index-1,$tabs.tabs("option","active",index)}})})}}),"function"!=typeof window.vc_accordionBehaviour&&(window.vc_accordionBehaviour=function(){jQuery(".wpb_accordion").each(function(index){var $tabs,$this=jQuery(this),active_tab=($this.attr("data-interval"),!isNaN(jQuery(this).data("active-tab"))&&0 div > h3",autoHeight:!1,heightStyle:"content",active:active_tab,collapsible:collapsible,navigation:!0,activate:vc_accordionActivate,change:function(event,ui){void 0!==jQuery.fn.isotope&&ui.newContent.find(".isotope").isotope("layout"),vc_carouselBehaviour(ui.newPanel)}}),!0===$this.data("vcDisableKeydown")&&($tabs.data("uiAccordion")._keydown=function(){})})}),"function"!=typeof window.vc_teaserGrid&&(window.vc_teaserGrid=function(){var layout_modes={fitrows:"fitRows",masonry:"masonry"};jQuery(".wpb_grid .teaser_grid_container:not(.wpb_carousel), .wpb_filtered_grid .teaser_grid_container:not(.wpb_carousel)").each(function(){var $container=jQuery(this),$thumbs=$container.find(".wpb_thumbnails"),layout_mode=$thumbs.attr("data-layout-mode");$thumbs.isotope({itemSelector:".isotope-item",layoutMode:void 0===layout_modes[layout_mode]?"fitRows":layout_modes[layout_mode]}),$container.find(".categories_filter a").data("isotope",$thumbs).click(function(e){e.preventDefault();var $thumbs=jQuery(this).data("isotope");jQuery(this).parent().parent().find(".active").removeClass("active"),jQuery(this).parent().addClass("active"),$thumbs.isotope({filter:jQuery(this).attr("data-filter")})}),jQuery(window).bind("load resize",function(){$thumbs.isotope("layout")})})}),"function"!=typeof window.vc_carouselBehaviour&&(window.vc_carouselBehaviour=function($parent){($parent?$parent.find(".wpb_carousel"):jQuery(".wpb_carousel")).each(function(){var $this=jQuery(this);if(!0!==$this.data("carousel_enabled")&&$this.is(":visible")){$this.data("carousel_enabled",!0);getColumnsCount(jQuery(this));jQuery(this).hasClass("columns_count_1")&&900;var carousele_li=jQuery(this).find(".wpb_thumbnails-fluid li");carousele_li.css({"margin-right":carousele_li.css("margin-left"),"margin-left":0});var fluid_ul=jQuery(this).find("ul.wpb_thumbnails-fluid");fluid_ul.width(fluid_ul.width()+300),jQuery(window).resize(function(){screen_size!=(screen_size=getSizeName())&&window.setTimeout("location.reload()",20)})}})}),"function"!=typeof window.vc_slidersBehaviour&&(window.vc_slidersBehaviour=function(){jQuery(".wpb_gallery_slides").each(function(index){var $imagesGrid,this_element=jQuery(this);if(this_element.hasClass("wpb_slider_nivo")){var sliderTimeout=1e3*this_element.attr("data-interval");0===sliderTimeout&&(sliderTimeout=9999999999),this_element.find(".nivoSlider").nivoSlider({effect:"boxRainGrow,boxRain,boxRainReverse,boxRainGrowReverse",slices:15,boxCols:8,boxRows:4,animSpeed:800,pauseTime:sliderTimeout,startSlide:0,directionNav:!0,directionNavHide:!0,controlNav:!0,keyboardNav:!1,pauseOnHover:!0,manualAdvance:!1,prevText:"Prev",nextText:"Next"})}else this_element.hasClass("wpb_image_grid")&&(jQuery.fn.imagesLoaded?$imagesGrid=this_element.find(".wpb_image_grid_ul").imagesLoaded(function(){$imagesGrid.isotope({itemSelector:".isotope-item",layoutMode:"fitRows"})}):this_element.find(".wpb_image_grid_ul").isotope({itemSelector:".isotope-item",layoutMode:"fitRows"}))})}),"function"!=typeof window.vc_prettyPhoto&&(window.vc_prettyPhoto=function(){try{jQuery&&jQuery.fn&&jQuery.fn.prettyPhoto&&jQuery('a.prettyphoto, .gallery-icon a[href*=".jpg"]').prettyPhoto({animationSpeed:"normal",hook:"data-rel",padding:15,opacity:.7,showTitle:!0,allowresize:!0,counter_separator_label:"/",hideflash:!1,deeplinking:!1,modal:!1,callback:function(){-1
    ')}),vc_initVideoBackgrounds(),callSkrollInit=!1,window.vcParallaxSkroll&&window.vcParallaxSkroll.destroy(),$(".vc_parallax-inner").remove(),$("[data-5p-top-bottom]").removeAttr("data-5p-top-bottom data-30p-top-bottom"),$("[data-vc-parallax]").each(function(){var skrollrSize,skrollrStart,$parallaxElement,parallaxImage,youtubeId;callSkrollInit=!0,"on"===$(this).data("vcParallaxOFade")&&$(this).children().attr("data-5p-top-bottom","opacity:0;").attr("data-30p-top-bottom","opacity:1;"),skrollrSize=100*$(this).data("vcParallax"),($parallaxElement=$("
    ").addClass("vc_parallax-inner").appendTo($(this))).height(skrollrSize+"%"),(youtubeId=vcExtractYoutubeId(parallaxImage=$(this).data("vcParallaxImage")))?insertYoutubeVideoAsBackground($parallaxElement,youtubeId):void 0!==parallaxImage&&$parallaxElement.css("background-image","url("+parallaxImage+")"),skrollrStart=-(skrollrSize-100),$parallaxElement.attr("data-bottom-top","top: "+skrollrStart+"%;").attr("data-top-bottom","top: 0%;")}),callSkrollInit&&window.skrollr&&(vcSkrollrOptions={forceHeight:!1,smoothScrolling:!1,mobileCheck:function(){return!1}},window.vcParallaxSkroll=skrollr.init(vcSkrollrOptions),window.vcParallaxSkroll)}),"function"!=typeof window.vc_gridBehaviour&&(window.vc_gridBehaviour=function(){jQuery.fn.vcGrid&&jQuery("[data-vc-grid]").vcGrid()}),"function"!=typeof window.getColumnsCount&&(window.getColumnsCount=function(el){for(var find=!1,i=1;!1===find;){if(el.hasClass("columns_count_"+i))return find=!0,i;i++}});var screen_size=getSizeName();function getSizeName(){var screen_w=jQuery(window).width();return 1170
    ').find(".inner");new YT.Player($container[0],{width:"100%",height:"100%",videoId:youtubeId,playerVars:{playlist:youtubeId,iv_load_policy:3,enablejsapi:1,disablekb:1,autoplay:1,controls:0,showinfo:0,rel:0,loop:1,wmode:"transparent"},events:{onReady:function(event){event.target.mute().setLoop(!0)}}}),vcResizeVideoBackground($element),jQuery(window).bind("resize",function(){vcResizeVideoBackground($element)})}function vcResizeVideoBackground($element){var iframeW,iframeH,marginLeft,marginTop,containerW=$element.innerWidth(),containerH=$element.innerHeight();containerW/containerH<16/9?(iframeW=containerH*(16/9),iframeH=containerH,marginLeft=-Math.round((iframeW-containerW)/2)+"px",marginTop=-Math.round((iframeH-containerH)/2)+"px"):(iframeH=(iframeW=containerW)*(9/16),marginTop=-Math.round((iframeH-containerH)/2)+"px",marginLeft=-Math.round((iframeW-containerW)/2)+"px"),iframeW+="px",iframeH+="px",$element.find(".vc_video-bg iframe").css({maxWidth:"1000%",marginLeft:marginLeft,marginTop:marginTop,width:iframeW,height:iframeH})}function vcExtractYoutubeId(url){if(void 0===url)return!1;var id=url.match(/(?:https?:\/{2})?(?:w{3}\.)?youtu(?:be)?\.(?:com|be)(?:\/watch\?v=|\/)([^\s&]+)/);return null!==id&&id[1]}if("function"!=typeof window.wpb_prepare_tab_content&&(window.wpb_prepare_tab_content=function(event,ui){var $ui_panel,$google_maps,panel=ui.panel||ui.newPanel,$pie_charts=panel.find(".vc_pie_chart:not(.vc_ready)"),$round_charts=panel.find(".vc_round-chart"),$line_charts=panel.find(".vc_line-chart"),$carousel=panel.find('[data-ride="vc_carousel"]');if(vc_carouselBehaviour(),vc_plugin_flexslider(panel),ui.newPanel.find(".vc_masonry_media_grid, .vc_masonry_grid").length&&ui.newPanel.find(".vc_masonry_media_grid, .vc_masonry_grid").each(function(){var grid=jQuery(this).data("vcGrid");grid&&grid.gridBuilder&&grid.gridBuilder.setMasonry&&grid.gridBuilder.setMasonry()}),panel.find(".vc_masonry_media_grid, .vc_masonry_grid").length&&panel.find(".vc_masonry_media_grid, .vc_masonry_grid").each(function(){var grid=jQuery(this).data("vcGrid");grid&&grid.gridBuilder&&grid.gridBuilder.setMasonry&&grid.gridBuilder.setMasonry()}),$pie_charts.length&&jQuery.fn.vcChat&&$pie_charts.vcChat(),$round_charts.length&&jQuery.fn.vcRoundChart&&$round_charts.vcRoundChart({reload:!1}),$line_charts.length&&jQuery.fn.vcLineChart&&$line_charts.vcLineChart({reload:!1}),$carousel.length&&jQuery.fn.carousel&&$carousel.carousel("resizeAction"),$ui_panel=panel.find(".isotope, .wpb_image_grid_ul"),$google_maps=panel.find(".wpb_gmaps_widget"),0<$ui_panel.length&&$ui_panel.isotope("layout"),$google_maps.length&&!$google_maps.is(".map_ready")){var $frame=$google_maps.find("iframe");$frame.attr("src",$frame.attr("src")),$google_maps.addClass("map_ready")}panel.parents(".isotope").length&&panel.parents(".isotope").each(function(){jQuery(this).isotope("layout")})}),"function"!=typeof window.vc_googleMapsPointer)function vc_googleMapsPointer(){var $=window.jQuery,$wpbGmapsWidget=$(".wpb_gmaps_widget");$wpbGmapsWidget.click(function(){$("iframe",this).css("pointer-events","auto")}),$wpbGmapsWidget.mouseleave(function(){$("iframe",this).css("pointer-events","none")}),$(".wpb_gmaps_widget iframe").css("pointer-events","none")}function vc_setHoverBoxPerspective(hoverBox){hoverBox.each(function(){var $this=jQuery(this),perspective=4*$this.width()+"px";$this.css("perspective",perspective)})}function vc_setHoverBoxHeight(hoverBox){hoverBox.each(function(){var $this=jQuery(this),hoverBoxInner=$this.find(".vc-hoverbox-inner");hoverBoxInner.css("min-height",0);var frontHeight=$this.find(".vc-hoverbox-front-inner").outerHeight(),backHeight=$this.find(".vc-hoverbox-back-inner").outerHeight(),hoverBoxHeight=backHeight 0 } Accordion.prototype.show=function (opt){ var $target, that, $targetContent; that=this; $target=that.getTarget(); $targetContent=that.getTargetContent(); if(that.isActive()){ return; } if(that.isAnimated()){ that.triggerEvent('beforeShow.vc.accordion'); if(that.$container&&((that.$container.find('.vc_tta-tabs-container').length&&that.$container.find('.vc_tta-tabs-container').is(':visible'))||(that.$container.find('.vc_pagination').length&&that.$container.find('.vc_pagination').is(':visible')))){ $target.clearQueue().finish() .queue(function(next){ $targetContent.attr('style', ''); $targetContent.css({ display: 'block', opacity: 0, }); that.triggerEvent('gem.show.vc.tabs', opt); if($target.parent().outerHeight() <=$targetContent.outerHeight()){ $target.parent().outerHeight($targetContent.outerHeight()); } next(); }) .queue(function(next){ that.triggerEvent('show.vc.accordion', opt); $targetContent.clearQueue().finish().animate({opacity:1}, 500, function(){ $target.addClass(that.activeClass); ("object"==typeof opt&&opt.hasOwnProperty("changeHash")&&opt.changeHash||"undefined"==typeof opt)&&that.changeLocationHash(); that.triggerEvent('afterShow.vc.accordion', opt); $targetContent.attr('style', ''); $target.parent().attr('style', ''); }); next(); }); }else{ $target .queue(function(next){ $targetContent.one(Accordion.transitionName, function (){ $target.removeClass(that.animatingClass); $targetContent.attr('style', ''); that.triggerEvent('afterShow.vc.accordion', opt); that.triggerEvent('gem.show.vc.accordion', opt); }); Accordion.emulateTransitionEnd($targetContent, that.getAnimationDurationMilliseconds() + 100); next(); }) .queue(function(next){ $targetContent.attr('style', ''); $targetContent.css({ position: 'absolute', visibility: 'hidden', display: 'block' }); var height=$targetContent.height(); $targetContent.data('vcHeight', height); $targetContent.attr('style', ''); next(); }) .queue(function(next){ $targetContent.height(0); $targetContent.css({ 'padding-top': 0, 'padding-bottom': 0 }); next(); }) .queue(function(next){ $target.addClass(that.animatingClass); $target.addClass(that.activeClass); ("object"==typeof opt&&opt.hasOwnProperty("changeHash")&&opt.changeHash||"undefined"==typeof opt)&&that.changeLocationHash(); that.triggerEvent('show.vc.accordion', opt); next(); }) .queue(function(next){ var height=$targetContent.data('vcHeight'); $targetContent.animate({ 'height': height }, { duration: that.getAnimationDurationMilliseconds(), complete: function (){ if(!$targetContent.data('events')){ $targetContent.attr('style', ''); }} }); $targetContent.css({ 'padding-top': '', 'padding-bottom': '' }); next(); }); }}else{ $target.addClass(that.activeClass); that.triggerEvent('show.vc.accordion', opt); }}; Accordion.prototype.hide=function (opt){ var $target, that, $targetContent; that=this; $target=that.getTarget(); $targetContent=that.getTargetContent(); if(! that.isActive()){ return; } if(that.isAnimated()){ that.triggerEvent('beforeHide.vc.accordion'); if(that.$container&&((that.$container.find('.vc_tta-tabs-container').length&&that.$container.find('.vc_tta-tabs-container').is(':visible'))||(that.$container.find('.vc_pagination').length&&that.$container.find('.vc_pagination').is(':visible')))){ $target .queue(function(next){ $targetContent.attr('style', ''); if($target.parent().outerHeight() <=$targetContent.outerHeight()){ $target.parent().outerHeight($targetContent.outerHeight()); } $targetContent.css({ display: 'block', opacity: 1, position: 'absolute', top: '-'+$targetContent.css('border-top-width'), left: '-'+$targetContent.css('border-left-width'), right: '-'+$targetContent.css('border-right-width'), }); next(); }) .queue(function(next){ that.triggerEvent('hide.vc.accordion', opt); $targetContent.clearQueue().finish().animate({opacity:0}, 500, function(){ $target.removeClass(that.activeClass); $targetContent.attr('style', ''); $target.parent().attr('style', ''); }); next(); }); }else{ $target .queue(function(next){ $targetContent.one(Accordion.transitionName, function (){ $target.removeClass(that.animatingClass); $targetContent.attr('style', ''); that.triggerEvent('afterHide.vc.accordion', opt); }); Accordion.emulateTransitionEnd($targetContent, that.getAnimationDurationMilliseconds() + 100); next(); }) .queue(function(next){ $target.addClass(that.animatingClass); $target.removeClass(that.activeClass); that.triggerEvent('hide.vc.accordion', opt); next(); }) .queue(function(next){ var height=$targetContent.height(); $targetContent.height(height); next(); }) .queue(function(next){ $targetContent.animate({ 'height': 0 }, that.getAnimationDurationMilliseconds()); $targetContent.css({ 'padding-top': 0, 'padding-bottom': 0 }); next(); }); }}else{ $target.removeClass(that.activeClass); that.triggerEvent('hide.vc.accordion', opt); }}; Accordion.prototype.toggle=function (opt){ var $this; $this=this.$element, this.isActive() ? Plugin.call($this, "hide", opt):Plugin.call($this, "show", opt) } Accordion.prototype.dropdown=function (opt){ var $this; $this=this.$element, this.isActive() ? Plugin.call($this, "hide", opt):(Plugin.call($this, "show", opt), $(document).on("click.vc.accordion.data-api.dropdown", function (e){ Plugin.call($this, "hide", opt), $(document).off(e) })) } Accordion.prototype.collapse=function (opt){ var $this, $triggers; $this=this.$element, $triggers=this.getActiveTriggers().filter(function (){ return $this[0]!==this }), $triggers.length&&Plugin.call($triggers, "hide", opt), Plugin.call($this, "show", opt) } Accordion.prototype.collapseAll=function (opt){ var $this, $triggers; $this=this.$element, $triggers=this.getActiveTriggers().filter(function (){ return $this[0]!==this }), $triggers.length&&Plugin.call($triggers, "hide", opt), Plugin.call($this, "toggle", opt) } Accordion.prototype.showNext=function (opt){ var $triggers, $activeTriggers, activeIndex; if($triggers=this.getTriggers(), $activeTriggers=this.getActiveTriggers(), $triggers.length){ if($activeTriggers.length){ var lastActiveAccordion; lastActiveAccordion=$activeTriggers.eq($activeTriggers.length - 1).vcAccordion().data("vc.accordion"), lastActiveAccordion&&lastActiveAccordion.getIndex&&(activeIndex=lastActiveAccordion.getIndex()) } activeIndex > -1&&activeIndex + 1 < $triggers.length ? Plugin.call($triggers.eq(activeIndex + 1), "controller", opt):Plugin.call($triggers.eq(0), "controller", opt) }} Accordion.prototype.showPrev=function (opt){ var $triggers, $activeTriggers, activeIndex; if($triggers=this.getTriggers(), $activeTriggers=this.getActiveTriggers(), $triggers.length){ if($activeTriggers.length){ var lastActiveAccordion; lastActiveAccordion=$activeTriggers.eq($activeTriggers.length - 1).vcAccordion().data("vc.accordion"), lastActiveAccordion&&lastActiveAccordion.getIndex&&(activeIndex=lastActiveAccordion.getIndex()) } activeIndex > -1 ? activeIndex - 1 >=0 ? Plugin.call($triggers.eq(activeIndex - 1), "controller", opt):Plugin.call($triggers.eq($triggers.length - 1), "controller", opt):Plugin.call($triggers.eq(0), "controller", opt) }} Accordion.prototype.showAt=function (index, opt){ var $triggers; $triggers=this.getTriggers(), $triggers.length&&index&&index < $triggers.length&&Plugin.call($triggers.eq(index), "controller", opt) } Accordion.prototype.scrollToActive=function (opt){ if("undefined"==typeof opt||"undefined"==typeof opt.scrollTo||opt.scrollTo){ var that, $targetElement, offset, delay, speed; that=this, offset=1, delay=300, speed=300, $targetElement=$(this.getTarget()), $targetElement.length&&this.$element.length&&setTimeout(function (){ var posY=$targetElement.offset().top - $(window).scrollTop() - that.$element.outerHeight() * offset; 0 > posY&&$("html, body").animate({ scrollTop: $targetElement.offset().top - that.$element.outerHeight() * offset }, speed) }, delay) }}, old=$.fn.vcAccordion, $.fn.vcAccordion=Plugin, $.fn.vcAccordion.Constructor=Accordion, $.fn.vcAccordion.noConflict=function (){ return $.fn.vcAccordion=old, this }, clickHandler=function (e){ var $this; $this=$(this), e.preventDefault(), Plugin.call($this, "controller") }, hashNavigation=function (){ var hash, $targetElement, $accordion, offset, delay, speed; offset=.2, delay=300, speed=0, hash=window.location.hash, hash&&($targetElement=$(hash), $targetElement.length&&($accordion=$targetElement.find('[data-vc-accordion][href="' + hash + '"],[data-vc-accordion][data-vc-target="' + hash + '"]'), $accordion.length&&(setTimeout(function (){ $("html, body").animate({ scrollTop: $targetElement.offset().top - $(window).height() * offset }, speed) }, delay), $accordion.trigger("click")))) }, $(window).on("hashchange.vc.accordion", hashNavigation), $(document).on("click.vc.accordion.data-api", "[data-vc-accordion]", clickHandler), $(document).on("ready.vc.accordion", hashNavigation), $(document).on("afterShow.vc.accordion", function (e, opt){ Plugin.call($(e.target), "scrollToActive", opt) }) }(window.jQuery); !function($){"use strict";var Plugin,TtaAutoPlay,old;Plugin=function(action,options){var args;return args=Array.prototype.slice.call(arguments,1),this.each(function(){var $this,data;(data=($this=$(this)).data("vc.tta.autoplay"))||(data=new TtaAutoPlay($this,$.extend(!0,{},TtaAutoPlay.DEFAULTS,$this.data("vc-tta-autoplay"),options)),$this.data("vc.tta.autoplay",data)),"string"==typeof action?data[action].apply(data,args):data.start(args)})},(TtaAutoPlay=function($element,options){this.$element=$element,this.options=options}).DEFAULTS={delay:5e3,pauseOnHover:!0,stopOnClick:!0},TtaAutoPlay.prototype.show=function(){this.$element.find("[data-vc-accordion]:eq(0)").vcAccordion("showNext",{changeHash:!1,scrollTo:!1})},TtaAutoPlay.prototype.hasTimer=function(){return void 0!==this.$element.data("vc.tta.autoplay.timer")},TtaAutoPlay.prototype.setTimer=function(windowInterval){this.$element.data("vc.tta.autoplay.timer",windowInterval)},TtaAutoPlay.prototype.getTimer=function(){return this.$element.data("vc.tta.autoplay.timer")},TtaAutoPlay.prototype.deleteTimer=function(){this.$element.removeData("vc.tta.autoplay.timer")},TtaAutoPlay.prototype.start=function(){var $this,that;$this=this.$element,(that=this).hasTimer()||(this.setTimer(window.setInterval(this.show.bind(this),this.options.delay)),this.options.stopOnClick&&$this.on("click.vc.tta.autoplay.data-api","[data-vc-accordion]",function(e){e.preventDefault&&e.preventDefault(),that.hasTimer()&&Plugin.call($this,"stop")}),this.options.pauseOnHover&&$this.hover(function(e){e.preventDefault&&e.preventDefault(),that.hasTimer()&&Plugin.call($this,"mouseleave"===e.type?"resume":"pause")}))},TtaAutoPlay.prototype.resume=function(){this.hasTimer()&&this.setTimer(window.setInterval(this.show.bind(this),this.options.delay))},TtaAutoPlay.prototype.stop=function(){this.pause(),this.deleteTimer(),this.$element.off("click.vc.tta.autoplay.data-api mouseenter mouseleave")},TtaAutoPlay.prototype.pause=function(){var timer;void 0!==(timer=this.getTimer())&&window.clearInterval(timer)},old=$.fn.vcTtaAutoPlay,$.fn.vcTtaAutoPlay=Plugin,$.fn.vcTtaAutoPlay.Constructor=TtaAutoPlay,$.fn.vcTtaAutoPlay.noConflict=function(){return $.fn.vcTtaAutoPlay=old,this},$(document).ready(function(){$("[data-vc-tta-autoplay]").each(function(){$(this).vcTtaAutoPlay()})})}(window.jQuery); !function($){"use strict";var Tabs,old,clickHandler,changeHandler;function Plugin(action,options){var args;return args=Array.prototype.slice.call(arguments,1),this.each(function(){var $this,data;(data=($this=$(this)).data("vc.tabs"))||(data=new Tabs($this,$.extend(!0,{},options)),$this.data("vc.tabs",data)),"string"==typeof action&&data[action].apply(data,args)})}(Tabs=function(element,options){this.$element=$(element),this.activeClass="vc_active",this.tabSelector="[data-vc-tab]",this.useCacheFlag=void 0,this.$target=void 0,this.selector=void 0,this.$targetTab=void 0,this.$relatedAccordion=void 0,this.$container=void 0}).prototype.isCacheUsed=function(){var useCache,that;return useCache=function(){return!1!==that.$element.data("vcUseCache")},void 0===(that=this).useCacheFlag&&(this.useCacheFlag=useCache()),this.useCacheFlag},Tabs.prototype.getContainer=function(){return this.isCacheUsed()?(void 0===this.$container&&(this.$container=this.findContainer()),this.$container):this.findContainer()},Tabs.prototype.findContainer=function(){var $container;return($container=this.$element.closest(this.$element.data("vcContainer"))).length||($container=$("body")),$container},Tabs.prototype.getContainerAccordion=function(){return this.getContainer().find("[data-vc-accordion]")},Tabs.prototype.getSelector=function(){var findSelector,$this;return $this=this.$element,findSelector=function(){var selector;return(selector=$this.data("vcTarget"))||(selector=$this.attr("href")),selector},this.isCacheUsed()?(void 0===this.selector&&(this.selector=findSelector()),this.selector):findSelector()},Tabs.prototype.getTarget=function(){var selector;return selector=this.getSelector(),this.isCacheUsed()?(void 0===this.$target&&(this.$target=this.getContainer().find(selector)),this.$target):this.getContainer().find(selector)},Tabs.prototype.getRelatedAccordion=function(){var tab,filterElements;return filterElements=function(){var $elements;if(($elements=tab.getContainerAccordion().filter(function(){var $that,accordion;return void 0===(accordion=($that=$(this)).data("vc.accordion"))&&($that.vcAccordion(),accordion=$that.data("vc.accordion")),tab.getSelector()===accordion.getSelector()})).length)return $elements},(tab=this).isCacheUsed()?(void 0===this.$relatedAccordion&&(this.$relatedAccordion=filterElements()),this.$relatedAccordion):filterElements()},Tabs.prototype.triggerEvent=function(event){var $event;"string"==typeof event&&($event=$.Event(event),this.$element.trigger($event))},Tabs.prototype.getTargetTab=function(){var $this;return $this=this.$element,this.isCacheUsed()?(void 0===this.$targetTab&&(this.$targetTab=$this.closest(this.tabSelector)),this.$targetTab):$this.closest(this.tabSelector)},Tabs.prototype.tabClick=function(){this.getRelatedAccordion().trigger("click")},Tabs.prototype.show=function(){this.getTargetTab().hasClass(this.activeClass)||(this.triggerEvent("show.vc.tab"),this.getTargetTab().addClass(this.activeClass))},Tabs.prototype.hide=function(){this.getTargetTab().hasClass(this.activeClass)&&(this.triggerEvent("hide.vc.tab"),this.getTargetTab().removeClass(this.activeClass))},old=$.fn.vcTabs,$.fn.vcTabs=Plugin,$.fn.vcTabs.Constructor=Tabs,$.fn.vcTabs.noConflict=function(){return $.fn.vcTabs=old,this},clickHandler=function(e){var $this;$this=$(this),e.preventDefault(),Plugin.call($this,"tabClick")},changeHandler=function(e){var caller;void 0===(caller=$(e.target).data("vc.accordion")).getRelatedTab&&(caller.getRelatedTab=function(){var findTargets;return findTargets=function(){return caller.getContainer().find("[data-vc-tabs]").filter(function(){var $this;return void 0===($this=$(this)).data("vc.accordion")&&$this.vcAccordion(),$this.data("vc.accordion").getSelector()===caller.getSelector()})},caller.isCacheUsed()?(void 0===caller.relatedTab&&(caller.relatedTab=findTargets()),caller.relatedTab):findTargets()}),Plugin.call(caller.getRelatedTab(),e.type)},$(document).on("click.vc.tabs.data-api","[data-vc-tabs]",clickHandler),$(document).on("show.vc.accordion hide.vc.accordion",changeHandler)}(window.jQuery); (function(){var t=[].indexOf||function(t){for(var e=0,n=this.length;e=0;s={horizontal:{},vertical:{}};f=1;a={};u="waypoints-context-id";p="resize.waypoints";y="scroll.waypoints";v=1;w="waypoints-waypoint-ids";g="waypoint";m="waypoints";o=function(){function t(t){var e=this;this.$element=t;this.element=t[0];this.didResize=false;this.didScroll=false;this.id="context"+f++;this.oldScroll={x:t.scrollLeft(),y:t.scrollTop()};this.waypoints={horizontal:{},vertical:{}};t.data(u,this.id);a[this.id]=this;t.bind(y,function(){var t;if(!(e.didScroll||c)){e.didScroll=true;t=function(){e.doScroll();return e.didScroll=false};return r.setTimeout(t,n[m].settings.scrollThrottle)}});t.bind(p,function(){var t;if(!e.didResize){e.didResize=true;t=function(){n[m]("refresh");return e.didResize=false};return r.setTimeout(t,n[m].settings.resizeThrottle)}})}t.prototype.doScroll=function(){var t,e=this;t={horizontal:{newScroll:this.$element.scrollLeft(),oldScroll:this.oldScroll.x,forward:"right",backward:"left"},vertical:{newScroll:this.$element.scrollTop(),oldScroll:this.oldScroll.y,forward:"down",backward:"up"}};if(c&&(!t.vertical.oldScroll||!t.vertical.newScroll)){n[m]("refresh")}n.each(t,function(t,r){var i,o,l;l=[];o=r.newScroll>r.oldScroll;i=o?r.forward:r.backward;n.each(e.waypoints[t],function(t,e){var n,i;if(r.oldScroll<(n=e.offset)&&n<=r.newScroll){return l.push(e)}else if(r.newScroll<(i=e.offset)&&i<=r.oldScroll){return l.push(e)}});l.sort(function(t,e){return t.offset-e.offset});if(!o){l.reverse()}return n.each(l,function(t,e){if(e.options.continuous||t===l.length-1){return e.trigger([i])}})});return this.oldScroll={x:t.horizontal.newScroll,y:t.vertical.newScroll}};t.prototype.refresh=function(){var t,e,r,i=this;r=n.isWindow(this.element);e=this.$element.offset();this.doScroll();t={horizontal:{contextOffset:r?0:e.left,contextScroll:r?0:this.oldScroll.x,contextDimension:this.$element.width(),oldScroll:this.oldScroll.x,forward:"right",backward:"left",offsetProp:"left"},vertical:{contextOffset:r?0:e.top,contextScroll:r?0:this.oldScroll.y,contextDimension:r?n[m]("viewportHeight"):this.$element.height(),oldScroll:this.oldScroll.y,forward:"down",backward:"up",offsetProp:"top"}};return n.each(t,function(t,e){return n.each(i.waypoints[t],function(t,r){var i,o,l,s,f;i=r.options.offset;l=r.offset;o=n.isWindow(r.element)?0:r.$element.offset()[e.offsetProp];if(n.isFunction(i)){i=i.apply(r.element)}else if(typeof i==="string"){i=parseFloat(i);if(r.options.offset.indexOf("%")>-1){i=Math.ceil(e.contextDimension*i/100)}}r.offset=o-e.contextOffset+e.contextScroll-i;if(r.options.onlyOnScroll&&l!=null||!r.enabled){return}if(l!==null&&l<(s=e.oldScroll)&&s<=r.offset){return r.trigger([e.backward])}else if(l!==null&&l>(f=e.oldScroll)&&f>=r.offset){return r.trigger([e.forward])}else if(l===null&&e.oldScroll>=r.offset){return r.trigger([e.forward])}})})};t.prototype.checkEmpty=function(){if(n.isEmptyObject(this.waypoints.horizontal)&&n.isEmptyObject(this.waypoints.vertical)){this.$element.unbind([p,y].join(" "));return delete a[this.id]}};return t}();l=function(){function t(t,e,r){var i,o;r=n.extend({},n.fn[g].defaults,r);if(r.offset==="bottom-in-view"){r.offset=function(){var t;t=n[m]("viewportHeight");if(!n.isWindow(e.element)){t=e.$element.height()}return t-n(this).outerHeight()}}this.$element=t;this.element=t[0];this.axis=r.horizontal?"horizontal":"vertical";this.callback=r.handler;this.context=e;this.enabled=r.enabled;this.id="waypoints"+v++;this.offset=null;this.options=r;e.waypoints[this.axis][this.id]=this;s[this.axis][this.id]=this;i=(o=t.data(w))!=null?o:[];i.push(this.id);t.data(w,i)}t.prototype.trigger=function(t){if(!this.enabled){return}if(this.callback!=null){this.callback.apply(this.element,t)}if(this.options.triggerOnce){return this.destroy()}};t.prototype.disable=function(){return this.enabled=false};t.prototype.enable=function(){this.context.refresh();return this.enabled=true};t.prototype.destroy=function(){delete s[this.axis][this.id];delete this.context.waypoints[this.axis][this.id];return this.context.checkEmpty()};t.getWaypointsByElement=function(t){var e,r;r=n(t).data(w);if(!r){return[]}e=n.extend({},s.horizontal,s.vertical);return n.map(r,function(t){return e[t]})};return t}();d={init:function(t,e){var r;if(e==null){e={}}if((r=e.handler)==null){e.handler=t}this.each(function(){var t,r,i,s;t=n(this);i=(s=e.context)!=null?s:n.fn[g].defaults.context;if(!n.isWindow(i)){i=t.closest(i)}i=n(i);r=a[i.data(u)];if(!r){r=new o(i)}return new l(t,r,e)});n[m]("refresh");return this},disable:function(){return d._invoke(this,"disable")},enable:function(){return d._invoke(this,"enable")},destroy:function(){return d._invoke(this,"destroy")},prev:function(t,e){return d._traverse.call(this,t,e,function(t,e,n){if(e>0){return t.push(n[e-1])}})},next:function(t,e){return d._traverse.call(this,t,e,function(t,e,n){if(et.oldScroll.y})},left:function(t){if(t==null){t=r}return h._filter(t,"horizontal",function(t,e){return e.offset<=t.oldScroll.x})},right:function(t){if(t==null){t=r}return h._filter(t,"horizontal",function(t,e){return e.offset>t.oldScroll.x})},enable:function(){return h._invoke("enable")},disable:function(){return h._invoke("disable")},destroy:function(){return h._invoke("destroy")},extendFn:function(t,e){return d[t]=e},_invoke:function(t){var e;e=n.extend({},s.vertical,s.horizontal);return n.each(e,function(e,n){n[t]();return true})},_filter:function(t,e,r){var i,o;i=a[n(t).data(u)];if(!i){return[]}o=[];n.each(i.waypoints[e],function(t,e){if(r(i,e)){return o.push(e)}});o.sort(function(t,e){return t.offset-e.offset});return n.map(o,function(t){return t.element})}};n[m]=function(){var t,n;n=arguments[0],t=2<=arguments.length?e.call(arguments,1):[];if(h[n]){return h[n].apply(null,t)}else{return h.aggregate.call(null,n)}};n[m].settings={resizeThrottle:100,scrollThrottle:30};return i.load(function(){return n[m]("refresh")})})}).call(this); !function(a,b,c){"use strict";function d(c){if(e=b.documentElement,f=b.body,T(),ha=this,c=c||{},ma=c.constants||{},c.easing)for(var d in c.easing)W[d]=c.easing[d];ta=c.edgeStrategy||"set",ka={beforerender:c.beforerender,render:c.render,keyframe:c.keyframe},la=c.forceHeight!==!1,la&&(Ka=c.scale||1),na=c.mobileDeceleration||y,pa=c.smoothScrolling!==!1,qa=c.smoothScrollingDuration||A,ra={targetTop:ha.getScrollTop()},Sa=(c.mobileCheck||function(){return/Android|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent||navigator.vendor||a.opera)})(),Sa?(ja=b.getElementById(c.skrollrBody||z),ja&&ga(),X(),Ea(e,[s,v],[t])):Ea(e,[s,u],[t]),ha.refresh(),wa(a,"resize orientationchange",function(){var a=e.clientWidth,b=e.clientHeight;(b!==Pa||a!==Oa)&&(Pa=b,Oa=a,Qa=!0)});var g=U();return function h(){$(),va=g(h)}(),ha}var e,f,g={get:function(){return ha},init:function(a){return ha||new d(a)},VERSION:"0.6.29"},h=Object.prototype.hasOwnProperty,i=a.Math,j=a.getComputedStyle,k="touchstart",l="touchmove",m="touchcancel",n="touchend",o="skrollable",p=o+"-before",q=o+"-between",r=o+"-after",s="skrollr",t="no-"+s,u=s+"-desktop",v=s+"-mobile",w="linear",x=1e3,y=.004,z="skrollr-body",A=200,B="start",C="end",D="center",E="bottom",F="___skrollable_id",G=/^(?:input|textarea|button|select)$/i,H=/^\s+|\s+$/g,I=/^data(?:-(_\w+))?(?:-?(-?\d*\.?\d+p?))?(?:-?(start|end|top|center|bottom))?(?:-?(top|center|bottom))?$/,J=/\s*(@?[\w\-\[\]]+)\s*:\s*(.+?)\s*(?:;|$)/gi,K=/^(@?[a-z\-]+)\[(\w+)\]$/,L=/-([a-z0-9_])/g,M=function(a,b){return b.toUpperCase()},N=/[\-+]?[\d]*\.?[\d]+/g,O=/\{\?\}/g,P=/rgba?\(\s*-?\d+\s*,\s*-?\d+\s*,\s*-?\d+/g,Q=/[a-z\-]+-gradient/g,R="",S="",T=function(){var a=/^(?:O|Moz|webkit|ms)|(?:-(?:o|moz|webkit|ms)-)/;if(j){var b=j(f,null);for(var c in b)if(R=c.match(a)||+c==c&&b[c].match(a))break;if(!R)return void(R=S="");R=R[0],"-"===R.slice(0,1)?(S=R,R={"-webkit-":"webkit","-moz-":"Moz","-ms-":"ms","-o-":"O"}[R]):S="-"+R.toLowerCase()+"-"}},U=function(){var b=a.requestAnimationFrame||a[R.toLowerCase()+"RequestAnimationFrame"],c=Ha();return(Sa||!b)&&(b=function(b){var d=Ha()-c,e=i.max(0,1e3/60-d);return a.setTimeout(function(){c=Ha(),b()},e)}),b},V=function(){var b=a.cancelAnimationFrame||a[R.toLowerCase()+"CancelAnimationFrame"];return(Sa||!b)&&(b=function(b){return a.clearTimeout(b)}),b},W={begin:function(){return 0},end:function(){return 1},linear:function(a){return a},quadratic:function(a){return a*a},cubic:function(a){return a*a*a},swing:function(a){return-i.cos(a*i.PI)/2+.5},sqrt:function(a){return i.sqrt(a)},outCubic:function(a){return i.pow(a-1,3)+1},bounce:function(a){var b;if(.5083>=a)b=3;else if(.8489>=a)b=9;else if(.96208>=a)b=27;else{if(!(.99981>=a))return 1;b=91}return 1-i.abs(3*i.cos(a*b*1.028)/b)}};d.prototype.refresh=function(a){var d,e,f=!1;for(a===c?(f=!0,ia=[],Ra=0,a=b.getElementsByTagName("*")):a.length===c&&(a=[a]),d=0,e=a.length;e>d;d++){var g=a[d],h=g,i=[],j=pa,k=ta,l=!1;if(f&&F in g&&delete g[F],g.attributes){for(var m=0,n=g.attributes.length;n>m;m++){var p=g.attributes[m];if("data-anchor-target"!==p.name)if("data-smooth-scrolling"!==p.name)if("data-edge-strategy"!==p.name)if("data-emit-events"!==p.name){var q=p.name.match(I);if(null!==q){var r={props:p.value,element:g,eventType:p.name.replace(L,M)};i.push(r);var s=q[1];s&&(r.constant=s.substr(1));var t=q[2];/p$/.test(t)?(r.isPercentage=!0,r.offset=(0|t.slice(0,-1))/100):r.offset=0|t;var u=q[3],v=q[4]||u;u&&u!==B&&u!==C?(r.mode="relative",r.anchors=[u,v]):(r.mode="absolute",u===C?r.isEnd=!0:r.isPercentage||(r.offset=r.offset*Ka))}}else l=!0;else k=p.value;else j="off"!==p.value;else if(h=b.querySelector(p.value),null===h)throw'Unable to find anchor target "'+p.value+'"'}if(i.length){var w,x,y;!f&&F in g?(y=g[F],w=ia[y].styleAttr,x=ia[y].classAttr):(y=g[F]=Ra++,w=g.style.cssText,x=Da(g)),ia[y]={element:g,styleAttr:w,classAttr:x,anchorTarget:h,keyFrames:i,smoothScrolling:j,edgeStrategy:k,emitEvents:l,lastFrameIndex:-1},Ea(g,[o],[])}}}for(Aa(),d=0,e=a.length;e>d;d++){var z=ia[a[d][F]];z!==c&&(_(z),ba(z))}return ha},d.prototype.relativeToAbsolute=function(a,b,c){var d=e.clientHeight,f=a.getBoundingClientRect(),g=f.top,h=f.bottom-f.top;return b===E?g-=d:b===D&&(g-=d/2),c===E?g+=h:c===D&&(g+=h/2),g+=ha.getScrollTop(),g+.5|0},d.prototype.animateTo=function(a,b){b=b||{};var d=Ha(),e=ha.getScrollTop(),f=b.duration===c?x:b.duration;return oa={startTop:e,topDiff:a-e,targetTop:a,duration:f,startTime:d,endTime:d+f,easing:W[b.easing||w],done:b.done},oa.topDiff||(oa.done&&oa.done.call(ha,!1),oa=c),ha},d.prototype.stopAnimateTo=function(){oa&&oa.done&&oa.done.call(ha,!0),oa=c},d.prototype.isAnimatingTo=function(){return!!oa},d.prototype.isMobile=function(){return Sa},d.prototype.setScrollTop=function(b,c){return sa=c===!0,Sa?Ta=i.min(i.max(b,0),Ja):a.scrollTo(0,b),ha},d.prototype.getScrollTop=function(){return Sa?Ta:a.pageYOffset||e.scrollTop||f.scrollTop||0},d.prototype.getMaxScrollTop=function(){return Ja},d.prototype.on=function(a,b){return ka[a]=b,ha},d.prototype.off=function(a){return delete ka[a],ha},d.prototype.destroy=function(){var a=V();a(va),ya(),Ea(e,[t],[s,u,v]);for(var b=0,d=ia.length;d>b;b++)fa(ia[b].element);e.style.overflow=f.style.overflow="",e.style.height=f.style.height="",ja&&g.setStyle(ja,"transform","none"),ha=c,ja=c,ka=c,la=c,Ja=0,Ka=1,ma=c,na=c,La="down",Ma=-1,Oa=0,Pa=0,Qa=!1,oa=c,pa=c,qa=c,ra=c,sa=c,Ra=0,ta=c,Sa=!1,Ta=0,ua=c};var X=function(){var d,g,h,j,o,p,q,r,s,t,u,v;wa(e,[k,l,m,n].join(" "),function(a){var e=a.changedTouches[0];for(j=a.target;3===j.nodeType;)j=j.parentNode;switch(o=e.clientY,p=e.clientX,t=a.timeStamp,G.test(j.tagName)||a.preventDefault(),a.type){case k:d&&d.blur(),ha.stopAnimateTo(),d=j,g=q=o,h=p,s=t;break;case l:G.test(j.tagName)&&b.activeElement!==j&&a.preventDefault(),r=o-q,v=t-u,ha.setScrollTop(Ta-r,!0),q=o,u=t;break;default:case m:case n:var f=g-o,w=h-p,x=w*w+f*f;if(49>x){if(!G.test(d.tagName)){d.focus();var y=b.createEvent("MouseEvents");y.initMouseEvent("click",!0,!0,a.view,1,e.screenX,e.screenY,e.clientX,e.clientY,a.ctrlKey,a.altKey,a.shiftKey,a.metaKey,0,null),d.dispatchEvent(y)}return}d=c;var z=r/v;z=i.max(i.min(z,3),-3);var A=i.abs(z/na),B=z*A+.5*na*A*A,C=ha.getScrollTop()-B,D=0;C>Ja?(D=(Ja-C)/B,C=Ja):0>C&&(D=-C/B,C=0),A*=1-D,ha.animateTo(C+.5|0,{easing:"outCubic",duration:A})}}),a.scrollTo(0,0),e.style.overflow=f.style.overflow="hidden"},Y=function(){var a,b,c,d,f,g,h,j,k,l,m,n=e.clientHeight,o=Ba();for(j=0,k=ia.length;k>j;j++)for(a=ia[j],b=a.element,c=a.anchorTarget,d=a.keyFrames,f=0,g=d.length;g>f;f++)h=d[f],l=h.offset,m=o[h.constant]||0,h.frame=l,h.isPercentage&&(l*=n,h.frame=l),"relative"===h.mode&&(fa(b),h.frame=ha.relativeToAbsolute(c,h.anchors[0],h.anchors[1])-l,fa(b,!0)),h.frame+=m,la&&!h.isEnd&&h.frame>Ja&&(Ja=h.frame);for(Ja=i.max(Ja,Ca()),j=0,k=ia.length;k>j;j++){for(a=ia[j],d=a.keyFrames,f=0,g=d.length;g>f;f++)h=d[f],m=o[h.constant]||0,h.isEnd&&(h.frame=Ja-h.offset+m);a.keyFrames.sort(Ia)}},Z=function(a,b){for(var c=0,d=ia.length;d>c;c++){var e,f,i=ia[c],j=i.element,k=i.smoothScrolling?a:b,l=i.keyFrames,m=l.length,n=l[0],s=l[l.length-1],t=ks.frame,v=t?n:s,w=i.emitEvents,x=i.lastFrameIndex;if(t||u){if(t&&-1===i.edge||u&&1===i.edge)continue;switch(t?(Ea(j,[p],[r,q]),w&&x>-1&&(za(j,n.eventType,La),i.lastFrameIndex=-1)):(Ea(j,[r],[p,q]),w&&m>x&&(za(j,s.eventType,La),i.lastFrameIndex=m)),i.edge=t?-1:1,i.edgeStrategy){case"reset":fa(j);continue;case"ease":k=v.frame;break;default:case"set":var y=v.props;for(e in y)h.call(y,e)&&(f=ea(y[e].value),0===e.indexOf("@")?j.setAttribute(e.substr(1),f):g.setStyle(j,e,f));continue}}else 0!==i.edge&&(Ea(j,[o,q],[p,r]),i.edge=0);for(var z=0;m-1>z;z++)if(k>=l[z].frame&&k<=l[z+1].frame){var A=l[z],B=l[z+1];for(e in A.props)if(h.call(A.props,e)){var C=(k-A.frame)/(B.frame-A.frame);C=A.props[e].easing(C),f=da(A.props[e].value,B.props[e].value,C),f=ea(f),0===e.indexOf("@")?j.setAttribute(e.substr(1),f):g.setStyle(j,e,f)}w&&x!==z&&("down"===La?za(j,A.eventType,La):za(j,B.eventType,La),i.lastFrameIndex=z);break}}},$=function(){Qa&&(Qa=!1,Aa());var a,b,d=ha.getScrollTop(),e=Ha();if(oa)e>=oa.endTime?(d=oa.targetTop,a=oa.done,oa=c):(b=oa.easing((e-oa.startTime)/oa.duration),d=oa.startTop+b*oa.topDiff|0),ha.setScrollTop(d,!0);else if(!sa){var f=ra.targetTop-d;f&&(ra={startTop:Ma,topDiff:d-Ma,targetTop:d,startTime:Na,endTime:Na+qa}),e<=ra.endTime&&(b=W.sqrt((e-ra.startTime)/qa),d=ra.startTop+b*ra.topDiff|0)}if(sa||Ma!==d){La=d>Ma?"down":Ma>d?"up":La,sa=!1;var h={curTop:d,lastTop:Ma,maxTop:Ja,direction:La},i=ka.beforerender&&ka.beforerender.call(ha,h);i!==!1&&(Z(d,ha.getScrollTop()),Sa&&ja&&g.setStyle(ja,"transform","translate(0, "+-Ta+"px) "+ua),Ma=d,ka.render&&ka.render.call(ha,h)),a&&a.call(ha,!1)}Na=e},_=function(a){for(var b=0,c=a.keyFrames.length;c>b;b++){for(var d,e,f,g,h=a.keyFrames[b],i={};null!==(g=J.exec(h.props));)f=g[1],e=g[2],d=f.match(K),null!==d?(f=d[1],d=d[2]):d=w,e=e.indexOf("!")?aa(e):[e.slice(1)],i[f]={value:e,easing:W[d]};h.props=i}},aa=function(a){var b=[];return P.lastIndex=0,a=a.replace(P,function(a){return a.replace(N,function(a){return a/255*100+"%"})}),S&&(Q.lastIndex=0,a=a.replace(Q,function(a){return S+a})),a=a.replace(N,function(a){return b.push(+a),"{?}"}),b.unshift(a),b},ba=function(a){var b,c,d={};for(b=0,c=a.keyFrames.length;c>b;b++)ca(a.keyFrames[b],d);for(d={},b=a.keyFrames.length-1;b>=0;b--)ca(a.keyFrames[b],d)},ca=function(a,b){var c;for(c in b)h.call(a.props,c)||(a.props[c]=b[c]);for(c in a.props)b[c]=a.props[c]},da=function(a,b,c){var d,e=a.length;if(e!==b.length)throw"Can't interpolate between \""+a[0]+'" and "'+b[0]+'"';var f=[a[0]];for(d=1;e>d;d++)f[d]=a[d]+(b[d]-a[d])*c;return f},ea=function(a){var b=1;return O.lastIndex=0,a[0].replace(O,function(){return a[b++]})},fa=function(a,b){a=[].concat(a);for(var c,d,e=0,f=a.length;f>e;e++)d=a[e],c=ia[d[F]],c&&(b?(d.style.cssText=c.dirtyStyleAttr,Ea(d,c.dirtyClassAttr)):(c.dirtyStyleAttr=d.style.cssText,c.dirtyClassAttr=Da(d),d.style.cssText=c.styleAttr,Ea(d,c.classAttr)))},ga=function(){ua="translateZ(0)",g.setStyle(ja,"transform",ua);var a=j(ja),b=a.getPropertyValue("transform"),c=a.getPropertyValue(S+"transform"),d=b&&"none"!==b||c&&"none"!==c;d||(ua="")};g.setStyle=function(a,b,c){var d=a.style;if(b=b.replace(L,M).replace("-",""),"zIndex"===b)isNaN(c)?d[b]=c:d[b]=""+(0|c);else if("float"===b)d.styleFloat=d.cssFloat=c;else try{R&&(d[R+b.slice(0,1).toUpperCase()+b.slice(1)]=c),d[b]=c}catch(e){}};var ha,ia,ja,ka,la,ma,na,oa,pa,qa,ra,sa,ta,ua,va,wa=g.addEvent=function(b,c,d){var e=function(b){return b=b||a.event,b.target||(b.target=b.srcElement),b.preventDefault||(b.preventDefault=function(){b.returnValue=!1,b.defaultPrevented=!0}),d.call(this,b)};c=c.split(" ");for(var f,g=0,h=c.length;h>g;g++)f=c[g],b.addEventListener?b.addEventListener(f,d,!1):b.attachEvent("on"+f,e),Ua.push({element:b,name:f,listener:d})},xa=g.removeEvent=function(a,b,c){b=b.split(" ");for(var d=0,e=b.length;e>d;d++)a.removeEventListener?a.removeEventListener(b[d],c,!1):a.detachEvent("on"+b[d],c)},ya=function(){for(var a,b=0,c=Ua.length;c>b;b++)a=Ua[b],xa(a.element,a.name,a.listener);Ua=[]},za=function(a,b,c){ka.keyframe&&ka.keyframe.call(ha,a,b,c)},Aa=function(){var a=ha.getScrollTop();Ja=0,la&&!Sa&&(f.style.height=""),Y(),la&&!Sa&&(f.style.height=Ja+e.clientHeight+"px"),Sa?ha.setScrollTop(i.min(ha.getScrollTop(),Ja)):ha.setScrollTop(a,!0),sa=!0},Ba=function(){var a,b,c=e.clientHeight,d={};for(a in ma)b=ma[a],"function"==typeof b?b=b.call(ha):/p$/.test(b)&&(b=b.slice(0,-1)/100*c),d[a]=b;return d},Ca=function(){var a,b=0;return ja&&(b=i.max(ja.offsetHeight,ja.scrollHeight)),a=i.max(b,f.scrollHeight,f.offsetHeight,e.scrollHeight,e.offsetHeight,e.clientHeight),a-e.clientHeight},Da=function(b){var c="className";return a.SVGElement&&b instanceof a.SVGElement&&(b=b[c],c="baseVal"),b[c]},Ea=function(b,d,e){var f="className";if(a.SVGElement&&b instanceof a.SVGElement&&(b=b[f],f="baseVal"),e===c)return void(b[f]=d);for(var g=b[f],h=0,i=e.length;i>h;h++)g=Ga(g).replace(Ga(e[h])," ");g=Fa(g);for(var j=0,k=d.length;k>j;j++)-1===Ga(g).indexOf(Ga(d[j]))&&(g+=" "+d[j]);b[f]=Fa(g)},Fa=function(a){return a.replace(H,"")},Ga=function(a){return" "+a+" "},Ha=Date.now||function(){return+new Date},Ia=function(a,b){return a.frame-b.frame},Ja=0,Ka=1,La="down",Ma=-1,Na=Ha(),Oa=0,Pa=0,Qa=!1,Ra=0,Sa=!1,Ta=0,Ua=[];"function"==typeof define&&define.amd?define([],function(){return g}):"undefined"!=typeof module&&module.exports?module.exports=g:a.skrollr=g}(window,document);