!function (name, definition){
if(typeof module!='undefined'&&module.exports) module.exports=definition()
else if(typeof define=='function'&&define.amd) define(name, definition)
else this[name]=definition()
}('bowser', function (){
var t=true
function detect(ua){
function getFirstMatch(regex){
var match=ua.match(regex);
return (match&&match.length > 1&&match[1])||'';
}
function getSecondMatch(regex){
var match=ua.match(regex);
return (match&&match.length > 1&&match[2])||'';
}
var iosdevice=getFirstMatch(/(ipod|iphone|ipad)/i).toLowerCase()
, likeAndroid=/like android/i.test(ua)
, android = !likeAndroid&&/android/i.test(ua)
, nexusMobile=/nexus\s*[0-6]\s*/i.test(ua)
, nexusTablet = !nexusMobile&&/nexus\s*[0-9]+/i.test(ua)
, chromeos=/CrOS/.test(ua)
, silk=/silk/i.test(ua)
, sailfish=/sailfish/i.test(ua)
, tizen=/tizen/i.test(ua)
, webos=/(web|hpw)os/i.test(ua)
, windowsphone=/windows phone/i.test(ua)
, windows = !windowsphone&&/windows/i.test(ua)
, mac = !iosdevice&&!silk&&/macintosh/i.test(ua)
, linux = !android&&!sailfish&&!tizen&&!webos&&/linux/i.test(ua)
, edgeVersion=getFirstMatch(/edge\/(\d+(\.\d+)?)/i)
, versionIdentifier=getFirstMatch(/version\/(\d+(\.\d+)?)/i)
, tablet=/tablet/i.test(ua)
, mobile = !tablet&&/[^-]mobi/i.test(ua)
, xbox=/xbox/i.test(ua)
, result
if(/opera|opr|opios/i.test(ua)){
result={
name: 'Opera'
, opera: t
, version: versionIdentifier||getFirstMatch(/(?:opera|opr|opios)[\s\/](\d+(\.\d+)?)/i)
}}
else if(/coast/i.test(ua)){
result={
name: 'Opera Coast'
, coast: t
, version: versionIdentifier||getFirstMatch(/(?:coast)[\s\/](\d+(\.\d+)?)/i)
}}
else if(/yabrowser/i.test(ua)){
result={
name: 'Yandex Browser'
, yandexbrowser: t
, version: versionIdentifier||getFirstMatch(/(?:yabrowser)[\s\/](\d+(\.\d+)?)/i)
}}
else if(/ucbrowser/i.test(ua)){
result={
name: 'UC Browser'
, ucbrowser: t
, version: getFirstMatch(/(?:ucbrowser)[\s\/](\d+(?:\.\d+)+)/i)
}}
else if(/mxios/i.test(ua)){
result={
name: 'Maxthon'
, maxthon: t
, version: getFirstMatch(/(?:mxios)[\s\/](\d+(?:\.\d+)+)/i)
}}
else if(/epiphany/i.test(ua)){
result={
name: 'Epiphany'
, epiphany: t
, version: getFirstMatch(/(?:epiphany)[\s\/](\d+(?:\.\d+)+)/i)
}}
else if(/puffin/i.test(ua)){
result={
name: 'Puffin'
, puffin: t
, version: getFirstMatch(/(?:puffin)[\s\/](\d+(?:\.\d+)?)/i)
}}
else if(/sleipnir/i.test(ua)){
result={
name: 'Sleipnir'
, sleipnir: t
, version: getFirstMatch(/(?:sleipnir)[\s\/](\d+(?:\.\d+)+)/i)
}}
else if(/k-meleon/i.test(ua)){
result={
name: 'K-Meleon'
, kMeleon: t
, version: getFirstMatch(/(?:k-meleon)[\s\/](\d+(?:\.\d+)+)/i)
}}
else if(windowsphone){
result={
name: 'Windows Phone'
, windowsphone: t
}
if(edgeVersion){
result.msedge=t
result.version=edgeVersion
}else{
result.msie=t
result.version=getFirstMatch(/iemobile\/(\d+(\.\d+)?)/i)
}}
else if(/msie|trident/i.test(ua)){
result={
name: 'Internet Explorer'
, msie: t
, version: getFirstMatch(/(?:msie |rv:)(\d+(\.\d+)?)/i)
}}else if(chromeos){
result={
name: 'Chrome'
, chromeos: t
, chromeBook: t
, chrome: t
, version: getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i)
}}else if(/chrome.+? edge/i.test(ua)){
result={
name: 'Microsoft Edge'
, msedge: t
, version: edgeVersion
}}
else if(/vivaldi/i.test(ua)){
result={
name: 'Vivaldi'
, vivaldi: t
, version: getFirstMatch(/vivaldi\/(\d+(\.\d+)?)/i)||versionIdentifier
}}
else if(sailfish){
result={
name: 'Sailfish'
, sailfish: t
, version: getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i)
}}
else if(/seamonkey\//i.test(ua)){
result={
name: 'SeaMonkey'
, seamonkey: t
, version: getFirstMatch(/seamonkey\/(\d+(\.\d+)?)/i)
}}
else if(/firefox|iceweasel|fxios/i.test(ua)){
result={
name: 'Firefox'
, firefox: t
, version: getFirstMatch(/(?:firefox|iceweasel|fxios)[ \/](\d+(\.\d+)?)/i)
}
if(/\((mobile|tablet);[^\)]*rv:[\d\.]+\)/i.test(ua)){
result.firefoxos=t
}}
else if(silk){
result={
name: 'Amazon Silk'
, silk: t
, version:getFirstMatch(/silk\/(\d+(\.\d+)?)/i)
}}
else if(/phantom/i.test(ua)){
result={
name: 'PhantomJS'
, phantom: t
, version: getFirstMatch(/phantomjs\/(\d+(\.\d+)?)/i)
}}
else if(/slimerjs/i.test(ua)){
result={
name: 'SlimerJS'
, slimer: t
, version: getFirstMatch(/slimerjs\/(\d+(\.\d+)?)/i)
}}
else if(/blackberry|\bbb\d+/i.test(ua)||/rim\stablet/i.test(ua)){
result={
name: 'BlackBerry'
, blackberry: t
, version: versionIdentifier||getFirstMatch(/blackberry[\d]+\/(\d+(\.\d+)?)/i)
}}
else if(webos){
result={
name: 'WebOS'
, webos: t
, version: versionIdentifier||getFirstMatch(/w(?:eb)?osbrowser\/(\d+(\.\d+)?)/i)
};
if(/touchpad\//i.test(ua)){
result.touchpad=t;
}}
else if(/bada/i.test(ua)){
result={
name: 'Bada'
, bada: t
, version: getFirstMatch(/dolfin\/(\d+(\.\d+)?)/i)
};}
else if(tizen){
result={
name: 'Tizen'
, tizen: t
, version: getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.\d+)?)/i)||versionIdentifier
};}
else if(/qupzilla/i.test(ua)){
result={
name: 'QupZilla'
, qupzilla: t
, version: getFirstMatch(/(?:qupzilla)[\s\/](\d+(?:\.\d+)+)/i)||versionIdentifier
}}
else if(/chromium/i.test(ua)){
result={
name: 'Chromium'
, chromium: t
, version: getFirstMatch(/(?:chromium)[\s\/](\d+(?:\.\d+)?)/i)||versionIdentifier
}}
else if(/chrome|crios|crmo/i.test(ua)){
result={
name: 'Chrome'
, chrome: t
, version: getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i)
}}
else if(android){
result={
name: 'Android'
, version: versionIdentifier
}}
else if(/safari|applewebkit/i.test(ua)){
result={
name: 'Safari'
, safari: t
}
if(versionIdentifier){
result.version=versionIdentifier
}}
else if(iosdevice){
result={
name:iosdevice=='iphone' ? 'iPhone':iosdevice=='ipad' ? 'iPad':'iPod'
}
if(versionIdentifier){
result.version=versionIdentifier
}}
else if(/googlebot/i.test(ua)){
result={
name: 'Googlebot'
, googlebot: t
, version: getFirstMatch(/googlebot\/(\d+(\.\d+))/i)||versionIdentifier
}}else{
result={
name: getFirstMatch(/^(.*)\/(.*) /),
version: getSecondMatch(/^(.*)\/(.*) /)
};}
if(!result.msedge&&/(apple)?webkit/i.test(ua)){
if(/(apple)?webkit\/537\.36/i.test(ua)){
result.name=result.name||"Blink"
result.blink=t
}else{
result.name=result.name||"Webkit"
result.webkit=t
}
if(!result.version&&versionIdentifier){
result.version=versionIdentifier
}}else if(!result.opera&&/gecko\//i.test(ua)){
result.name=result.name||"Gecko"
result.gecko=t
result.version=result.version||getFirstMatch(/gecko\/(\d+(\.\d+)?)/i)
}
if(!result.msedge&&(android||result.silk)){
result.android=t
}else if(iosdevice){
result[iosdevice]=t
result.ios=t
}else if(mac){
result.mac=t
}else if(xbox){
result.xbox=t
}else if(windows){
result.windows=t
}else if(linux){
result.linux=t
}
var osVersion='';
if(result.windowsphone){
osVersion=getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i);
}else if(iosdevice){
osVersion=getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i);
osVersion=osVersion.replace(/[_\s]/g, '.');
}else if(android){
osVersion=getFirstMatch(/android[ \/-](\d+(\.\d+)*)/i);
}else if(result.webos){
osVersion=getFirstMatch(/(?:web|hpw)os\/(\d+(\.\d+)*)/i);
}else if(result.blackberry){
osVersion=getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i);
}else if(result.bada){
osVersion=getFirstMatch(/bada\/(\d+(\.\d+)*)/i);
}else if(result.tizen){
osVersion=getFirstMatch(/tizen[\/\s](\d+(\.\d+)*)/i);
}
if(osVersion){
result.osversion=osVersion;
}
var osMajorVersion=osVersion.split('.')[0];
if(tablet
|| nexusTablet
|| iosdevice=='ipad'
|| (android&&(osMajorVersion==3||(osMajorVersion >=4&&!mobile)))
|| result.silk
){
result.tablet=t
}else if(mobile
|| iosdevice=='iphone'
|| iosdevice=='ipod'
|| android
|| nexusMobile
|| result.blackberry
|| result.webos
|| result.bada
){
result.mobile=t
}
if(result.msedge ||
(result.msie&&result.version >=10) ||
(result.yandexbrowser&&result.version >=15) ||
(result.vivaldi&&result.version >=1.0) ||
(result.chrome&&result.version >=20) ||
(result.firefox&&result.version >=20.0) ||
(result.safari&&result.version >=6) ||
(result.opera&&result.version >=10.0) ||
(result.ios&&result.osversion&&result.osversion.split(".")[0] >=6) ||
(result.blackberry&&result.version >=10.1)
|| (result.chromium&&result.version >=20)
){
result.a=t;
}
else if((result.msie&&result.version < 10) ||
(result.chrome&&result.version < 20) ||
(result.firefox&&result.version < 20.0) ||
(result.safari&&result.version < 6) ||
(result.opera&&result.version < 10.0) ||
(result.ios&&result.osversion&&result.osversion.split(".")[0] < 6)
|| (result.chromium&&result.version < 20)
){
result.c=t
} else result.x=t
return result
}
var bowser=detect(typeof navigator!=='undefined' ? navigator.userAgent:'')
bowser.test=function (browserList){
for (var i=0; i < browserList.length; ++i){
var browserItem=browserList[i];
if(typeof browserItem==='string'){
if(browserItem in bowser){
return true;
}}
}
return false;
}
function getVersionPrecision(version){
return version.split(".").length;
}
function map(arr, iterator){
var result=[], i;
if(Array.prototype.map){
return Array.prototype.map.call(arr, iterator);
}
for (i=0; i < arr.length; i++){
result.push(iterator(arr[i]));
}
return result;
}
function compareVersions(versions){
var precision=Math.max(getVersionPrecision(versions[0]), getVersionPrecision(versions[1]));
var chunks=map(versions, function (version){
var delta=precision - getVersionPrecision(version);
version=version + new Array(delta + 1).join(".0");
return map(version.split("."), function (chunk){
return new Array(20 - chunk.length).join("0") + chunk;
}).reverse();
});
while (--precision >=0){
if(chunks[0][precision] > chunks[1][precision]){
return 1;
}
else if(chunks[0][precision]===chunks[1][precision]){
if(precision===0){
return 0;
}}else{
return -1;
}}
}
function isUnsupportedBrowser(minVersions, strictMode, ua){
var _bowser=bowser;
if(typeof strictMode==='string'){
ua=strictMode;
strictMode=void(0);
}
if(strictMode===void(0)){
strictMode=false;
}
if(ua){
_bowser=detect(ua);
}
var version="" + _bowser.version;
for (var browser in minVersions){
if(minVersions.hasOwnProperty(browser)){
if(_bowser[browser]){
return compareVersions([version, minVersions[browser]]) < 0;
}}
}
return strictMode;
}
function check(minVersions, strictMode, ua){
return !isUnsupportedBrowser(minVersions, strictMode, ua);
}
bowser.isUnsupportedBrowser=isUnsupportedBrowser;
bowser.compareVersions=compareVersions;
bowser.check=check;
bowser._detect=detect;
return bowser
});
(function($){
UABBTrigger={
triggerHook: function(hook, args){
$('body').trigger('uabb-trigger.' + hook, args);
},
addHook: function(hook, callback){
$('body').on('uabb-trigger.' + hook, callback);
},
removeHook: function(hook, callback){
$('body').off('uabb-trigger.' + hook, callback);
},
};})(jQuery);
jQuery(document).ready(function($){
if(typeof bowser!=='undefined'&&bowser!==null){
var uabb_browser=bowser.name,
uabb_browser_v=bowser.version,
uabb_browser_class=uabb_browser.replace(/\s+/g, '-').toLowerCase(),
uabb_browser_v_class=uabb_browser_class + parseInt(uabb_browser_v);
$('html').addClass(uabb_browser_class).addClass(uabb_browser_v_class);
}
$('.uabb-row-separator').parents('html').css('overflow-x', 'hidden');
});
var wpAjaxUrl='https://www.metroobra.com/wp-admin/admin-ajax.php';var flBuilderUrl='https://www.metroobra.com/wp-content/plugins/bb-plugin/';var FLBuilderLayoutConfig={
anchorLinkAnimations:{
duration:1000,
easing:'swing',
offset:100
},
paths:{
pluginUrl:'https://www.metroobra.com/wp-content/plugins/bb-plugin/',
wpAjaxUrl:'https://www.metroobra.com/wp-admin/admin-ajax.php'
},
breakpoints:{
small:768,
medium:992,
large:1200	},
waypoint: {
offset: 80
},
emptyColWidth: '0%'
};
(function($){
if(typeof FLBuilderLayout!='undefined'){
return;
}
FLBuilderLayout={
init: function(){
FLBuilderLayout._destroy();
FLBuilderLayout._initClasses();
FLBuilderLayout._initBackgrounds();
FLBuilderLayout._initButtons();
FLBuilderLayout._initRowShapeLayerHeight();
if(0===$('.fl-builder-edit').length){
FLBuilderLayout._initAnchorLinks();
FLBuilderLayout._initHash();
FLBuilderLayout._initForms();
FLBuilderLayout._reorderMenu();
}else{
FLBuilderLayout._initNestedColsWidth();
}
$('body').removeClass('fl-no-js');
},
refreshGalleries: function(element){
var $element='undefined'==typeof element ? $('body'):$(element),
mfContent=$element.find('.fl-mosaicflow-content'),
wmContent=$element.find('.fl-gallery'),
mfObject=null;
if(mfContent){
mfObject=mfContent.data('mosaicflow');
if(mfObject){
mfObject.columns=$([]);
mfObject.columnsHeights=[];
mfContent.data('mosaicflow', mfObject);
mfContent.mosaicflow('refill');
}}
if(wmContent){
wmContent.trigger('refreshWookmark');
}},
refreshGridLayout: function(element){
var $element='undefined'==typeof element ? $('body'):$(element),
msnryContent=$element.find('.masonry');
if(msnryContent.length){
msnryContent.masonry('layout');
}},
reloadSlider: function(content){
var $content='undefined'==typeof content ? $('body'):$(content);
if($content.find('.bx-viewport > div').length > 0){
$.each($content.find('.bx-viewport > div'), function (key, slider){
setTimeout(function (){
$(slider).data('bxSlider').reloadSlider();
}, 100);
});
}},
resizeAudio: function(element){
var $element='undefined'==typeof element ? $('body'):$(element),
audioPlayers=$element.find('.wp-audio-shortcode.mejs-audio'),
player=null,
mejsPlayer=null,
rail=null,
railWidth=400;
if(audioPlayers.length&&typeof mejs!=='undefined'){
audioPlayers.each(function(){
player=$(this);
mejsPlayer=mejs.players[player.attr('id')];
rail=player.find('.mejs-controls .mejs-time-rail');
var innerMejs=player.find('.mejs-inner'),
total=player.find('.mejs-controls .mejs-time-total');
if(typeof mejsPlayer!=='undefined'){
railWidth=Math.ceil(player.width() * 0.8);
if(innerMejs.length){
rail.css('width', railWidth +'px!important');
mejsPlayer.options.autosizeProgress=true;
setTimeout(function (){
mejsPlayer.setControlsSize();
}, 50);
player.find('.mejs-inner').css({
visibility: 'visible',
height: 'inherit'
});
}}
});
}},
preloadAudio: function(element){
var $element='undefined'==typeof element ? $('body'):$(element),
contentWrap=$element.closest('.fl-accordion-item'),
audioPlayers=$element.find('.wp-audio-shortcode.mejs-audio');
if(! contentWrap.hasClass('fl-accordion-item-active')&&audioPlayers.find('.mejs-inner').length){
audioPlayers.find('.mejs-inner').css({
visibility:'hidden',
height: 0
});
}},
resizeSlideshow: function(){
if(typeof YUI!=='undefined'){
YUI().use('node-event-simulate', function(Y){
Y.one(window).simulate("resize");
});
}},
reloadGoogleMap: function(element){
var $element='undefined'==typeof element ? $('body'):$(element),
googleMap=$element.find('iframe[src*="google.com/maps"]');
if(googleMap.length){
googleMap.attr('src', function(i, val){
return val;
});
}},
_destroy: function(){
var win=$(window);
win.off('scroll.fl-bg-parallax');
win.off('resize.fl-bg-video');
},
_isTouch: function(){
if(('ontouchstart' in window)||(window.DocumentTouch&&document instanceof DocumentTouch)){
return true;
}
return false;
},
_isMobile: function(){
return /Mobile|Android|Silk\/|Kindle|BlackBerry|Opera Mini|Opera Mobi|webOS/i.test(navigator.userAgent);
},
_initClasses: function(){
var body=$('body'),
ua=navigator.userAgent;
if(! body.hasClass('fl-builder-blocks-only')&&! body.hasClass('archive')&&$('.fl-builder-content-primary').length > 0){
body.addClass('fl-builder');
}
if(FLBuilderLayout._isTouch()){
body.addClass('fl-builder-touch');
}
if(FLBuilderLayout._isMobile()){
body.addClass('fl-builder-mobile');
}
if($(window).width() < FLBuilderLayoutConfig.breakpoints.small){
body.addClass('fl-builder-breakpoint-small');
}
if($(window).width() > FLBuilderLayoutConfig.breakpoints.small&&$(window).width() < FLBuilderLayoutConfig.breakpoints.medium){
body.addClass('fl-builder-breakpoint-medium');
}
if($(window).width() > FLBuilderLayoutConfig.breakpoints.medium&&$(window).width() < FLBuilderLayoutConfig.breakpoints.large){
body.addClass('fl-builder-breakpoint-large');
}
if($(window).width() > FLBuilderLayoutConfig.breakpoints.large){
body.addClass('fl-builder-breakpoint-default');
}
if(ua.indexOf('Trident/7.0') > -1&&ua.indexOf('rv:11.0') > -1){
body.addClass('fl-builder-ie-11');
}},
_initBackgrounds: function(){
var win=$(window);
if($('.fl-row-bg-parallax').length > 0&&!FLBuilderLayout._isMobile()){
FLBuilderLayout._scrollParallaxBackgrounds();
FLBuilderLayout._initParallaxBackgrounds();
win.on('resize.fl-bg-parallax', FLBuilderLayout._initParallaxBackgrounds);
win.on('scroll.fl-bg-parallax', FLBuilderLayout._scrollParallaxBackgrounds);
}
if($('.fl-bg-video').length > 0){
FLBuilderLayout._initBgVideos();
FLBuilderLayout._resizeBgVideos();
var resizeBGTimer=null;
win.on('resize.fl-bg-video', function(e){
clearTimeout(resizeBGTimer);
resizeBGTimer=setTimeout(function(){
FLBuilderLayout._resizeBgVideos(e);
}, 100);
});
}},
_initButtons: function(){
$('a.fl-button[role="button"]').on('keydown', function(event){
if(event.key==='Enter'||event.key===' '){
event.preventDefault();
$(this).trigger('click');
}});
},
_initParallaxBackgrounds: function(){
$('.fl-row-bg-parallax').each(FLBuilderLayout._initParallaxBackground);
},
_initParallaxBackground: function(){
var row=$(this),
content=row.find('> .fl-row-content-wrap'),
winWidth=$(window).width(),
screenSize='',
imageSrc={
default: '',
medium: '',
responsive: '',
};
imageSrc.default=row.data('parallax-image')||'';
imageSrc.medium=row.data('parallax-image-medium')||imageSrc.default;
imageSrc.responsive=row.data('parallax-image-responsive')||imageSrc.medium;
if(winWidth > FLBuilderLayoutConfig.breakpoints.medium){
screenSize='default';
}else if(winWidth > FLBuilderLayoutConfig.breakpoints.small&&winWidth <=FLBuilderLayoutConfig.breakpoints.medium){
screenSize='medium';
}else if(winWidth <=FLBuilderLayoutConfig.breakpoints.small){
screenSize='responsive';
}
content.css('background-image', 'url(' + imageSrc[screenSize] + ')');
row.data('current-image-loaded', screenSize);
},
_scrollParallaxBackgrounds: function(){
$('.fl-row-bg-parallax').each(FLBuilderLayout._scrollParallaxBackground);
},
_scrollParallaxBackground: function(){
var win=$(window),
row=$(this),
content=row.find('> .fl-row-content-wrap'),
speed=row.data('parallax-speed'),
offset=content.offset(),
yPos=-((win.scrollTop() - offset.top) / speed),
initialOffset=(row.data('parallax-offset')!=null) ? row.data('parallax-offset'):0,
totalOffset=yPos - initialOffset;
content.css('background-position', 'center ' + totalOffset + 'px');
},
_initBgVideos: function(){
$('.fl-bg-video').each(FLBuilderLayout._initBgVideo);
},
_initBgVideo: function(){
var wrap=$(this),
width=wrap.data('width'),
height=wrap.data('height'),
mp4=wrap.data('mp4'),
youtube=wrap.data('youtube'),
vimeo=wrap.data('vimeo'),
mp4Type=wrap.data('mp4-type'),
webm=wrap.data('webm'),
webmType=wrap.data('webm-type'),
fallback=wrap.data('fallback'),
loaded=wrap.data('loaded'),
videoMobile=wrap.data('video-mobile'),
playPauseButton=wrap.find('.fl-bg-video-play-pause-control'),
fallbackTag='',
videoTag=null,
mp4Tag=null,
webmTag=null;
if(loaded){
return;
}
videoTag=$('<video autoplay loop muted playsinline></video>');
if('undefined'!=typeof fallback&&''!=fallback){
videoTag.attr('poster', 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7')
videoTag.css({
backgroundImage: 'url("' + fallback + '")',
backgroundColor: 'transparent',
backgroundRepeat: 'no-repeat',
backgroundSize: 'cover',
backgroundPosition: 'center center',
})
}
if('undefined'!=typeof mp4&&''!=mp4){
mp4Tag=$('<source />');
mp4Tag.attr('src', mp4);
mp4Tag.attr('type', mp4Type);
videoTag.append(mp4Tag);
}
if('undefined'!=typeof webm&&''!=webm){
webmTag=$('<source />');
webmTag.attr('src', webm);
webmTag.attr('type', webmType);
videoTag.append(webmTag);
}
if(! FLBuilderLayout._isMobile()||(FLBuilderLayout._isMobile()&&"yes"==videoMobile) ){
if('undefined'!=typeof youtube){
FLBuilderLayout._initYoutubeBgVideo.apply(this);
}
else if('undefined'!=typeof vimeo){
FLBuilderLayout._initVimeoBgVideo.apply(this);
}else{
wrap.append(videoTag);
if(playPauseButton.length > 0){
var video=videoTag[0];
playPauseButton.on('click', { video: video }, function(e){
var video=e.data.video;
if(video.paused){
video.play();
}else{
video.pause();
}});
$(video).on('play playing', function (){
playPauseButton.removeClass('fa-play').addClass('fa-pause');
});
$(video).on('pause ended waiting', function (){
playPauseButton.removeClass('fa-pause').addClass('fa-play');
});
}}
}else{
videoTag.attr('src', '')
wrap.append(videoTag);
}
wrap.data('loaded', true);
},
_initYoutubeBgVideo: function(){
var playerWrap=$(this),
videoId=playerWrap.data('video-id'),
videoPlayer=playerWrap.find('.fl-bg-video-player'),
enableAudio=playerWrap.data('enable-audio'),
audioButton=playerWrap.find('.fl-bg-video-audio'),
playPauseButton=playerWrap.find('.fl-bg-video-play-pause-control'),
startTime='undefined'!==typeof playerWrap.data('start') ? playerWrap.data('start'):0,
startTime='undefined'!==typeof playerWrap.data('t')&&startTime===0 ? playerWrap.data('t'):startTime,
endTime='undefined'!==typeof playerWrap.data('end') ? playerWrap.data('end'):0,
loop='undefined'!==typeof playerWrap.data('loop') ? playerWrap.data('loop'):1,
stateCount=0,
player,fallback_showing;
if(videoId){
fallback=playerWrap.data('fallback')||false
if(fallback){
playerWrap.find('iframe').remove()
fallbackTag=$('<div></div>');
fallbackTag.addClass('fl-bg-video-fallback');
fallbackTag.css('background-image', 'url(' + playerWrap.data('fallback') + ')');
fallbackTag.css('background-size', 'cover');
fallbackTag.css('transition', 'background-image 1s')
playerWrap.append(fallbackTag);
fallback_showing=true;
}
FLBuilderLayout._onYoutubeApiReady(function(YT){
setTimeout(function(){
player=new YT.Player(videoPlayer[0], {
videoId: videoId,
events: {
onReady: function(event){
if("no"===enableAudio||FLBuilderLayout._isMobile()){
event.target.mute();
}
else if("yes"===enableAudio&&event.target.isMuted){
event.target.unMute();
}
playerWrap.data('YTPlayer', player);
FLBuilderLayout._resizeYoutubeBgVideo.apply(playerWrap);
event.target.playVideo();
if(audioButton.length > 0&&! FLBuilderLayout._isMobile()){
audioButton.on('click', {button: audioButton, player: player}, FLBuilderLayout._toggleBgVideoAudio);
}
if(playPauseButton.length > 0){
playPauseButton.on('click', {player: player}, function(e){
var player=e.data.player;
if(1===player.getPlayerState()){
player.pauseVideo();
}else{
player.playVideo();
}});
}},
onStateChange: function(event){
if(event.data===1){
if(fallback_showing){
$('.fl-bg-video-fallback').css('background-image', 'url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)')
}}
if(stateCount < 4){
stateCount++;
}
if(stateCount > 1&&-1===event.data&&"yes"===enableAudio){
player.mute();
player.playVideo();
audioButton.show();
}
if(event.data===YT.PlayerState.ENDED&&1===loop){
if(startTime > 0){
player.seekTo(startTime);
}else{
player.playVideo();
}}
if(event.data===YT.PlayerState.PLAYING){
playPauseButton.removeClass('fa-play').addClass('fa-pause');
}else if(event.data===YT.PlayerState.PAUSED){
playPauseButton.removeClass('fa-pause').addClass('fa-play');
}else if(event.data===YT.PlayerState.BUFFERING){
playPauseButton.removeClass('fa-play').addClass('fa-pause');
}else if(event.data===YT.PlayerState.CUED){
playPauseButton.removeClass('fa-pause').addClass('fa-play');
}else if(event.data===YT.PlayerState.ENDED){
playPauseButton.removeClass('fa-pause').addClass('fa-play');
}},
onError: function(event){
console.info('YT Error: ' + event.data)
FLBuilderLayout._onErrorYoutubeVimeo(playerWrap)
}},
playerVars: {
playsinline: FLBuilderLayout._isMobile() ? 1:0,
controls: 0,
showinfo: 0,
rel:0,
start: startTime,
end: endTime,
}});
}, 1);
});
}},
_onErrorYoutubeVimeo: function(playerWrap){
fallback=playerWrap.data('fallback')||false
if(! fallback){
return false;
}
playerWrap.find('iframe').remove()
fallbackTag=$('<div></div>');
fallbackTag.addClass('fl-bg-video-fallback');
fallbackTag.css('background-image', 'url(' + playerWrap.data('fallback') + ')');
playerWrap.append(fallbackTag);
},
_onYoutubeApiReady: function(callback){
if(window.YT&&YT.loaded){
callback(YT);
}else{
setTimeout(function(){
FLBuilderLayout._onYoutubeApiReady(callback);
}, 350);
}},
_initVimeoBgVideo: function(){
var playerWrap=$(this),
videoId=playerWrap.data('video-id'),
videoHash=playerWrap.data('video-hash'),
videoPlayer=playerWrap.find('.fl-bg-video-player'),
enableAudio=playerWrap.data('enable-audio'),
audioButton=playerWrap.find('.fl-bg-video-audio'),
playPauseButton=playerWrap.find('.fl-bg-video-play-pause-control'),
playerState='',
player,
width=playerWrap.outerWidth(),
ua=navigator.userAgent;
if(typeof Vimeo!=='undefined'&&videoId){
const vimOptions={
loop:true,
title:false,
portrait:false,
background:true,
autopause:false,
muted:true,
};
if(videoHash.length){
vimOptions.url=`https://player.vimeo.com/video/${ videoId }?h=${ videoHash }`;
}else{
vimOptions.id=videoId;
}
player=new Vimeo.Player(videoPlayer[0], vimOptions);
playerWrap.data('VMPlayer', player);
if("no"===enableAudio){
player.setVolume(0);
}
else if("yes"===enableAudio){
if(ua.indexOf("Safari") > -1||ua.indexOf("Chrome") > -1||ua.indexOf("Firefox") > -1){
player.setVolume(0);
audioButton.show();
}else{
player.setVolume(1);
}}
player.play().catch(function(error){
FLBuilderLayout._onErrorYoutubeVimeo(playerWrap)
});
if(audioButton.length > 0){
audioButton.on('click', {button: audioButton, player: player}, FLBuilderLayout._toggleBgVideoAudio);
}
player.on('play', function(){
playerState='play';
playPauseButton.removeClass('fa-play').addClass('fa-pause');
});
player.on('pause', function(){
playerState='pause';
playPauseButton.removeClass('fa-pause').addClass('fa-play');
});
player.on('ended', function(){
playerState='ended';
playPauseButton.removeClass('fa-pause').addClass('fa-play');
});
player.on('bufferstart', function(){
playerState='bufferstart';
playPauseButton.removeClass('fa-play').addClass('fa-pause');
});
if(playPauseButton.length > 0){
playPauseButton.on('click', { player: player }, function(e){
var player=e.data.player;
if(playerState==='play'){
player.pause();
}else{
player.play();
}});
}}
},
_toggleBgVideoAudio: function(e){
var player=e.data.player,
control=e.data.button.find('.fl-audio-control');
if(control.hasClass('fa-volume-off') ){
control
.removeClass('fa-volume-off')
.addClass('fa-volume-up');
e.data.button.find('.fa-times').hide();
if('function'===typeof player.unMute){
player.unMute();
}else{
player.setVolume(1);
}}else{
control
.removeClass('fa-volume-up')
.addClass('fa-volume-off');
e.data.button.find('.fa-times').show();
if('function'===typeof player.unMute){
player.mute();
}else{
player.setVolume(0);
}}
},
_videoBgSourceError: function(e){
var source=$(e.target),
wrap=source.closest('.fl-bg-video'),
vid=wrap.find('video'),
fallback=wrap.data('fallback'),
fallbackTag='';
source.remove();
if(vid.find('source').length){
return;
}else if(''!==fallback){
fallbackTag=$('<div></div>');
fallbackTag.addClass('fl-bg-video-fallback');
fallbackTag.css('background-image', 'url(' + fallback + ')');
wrap.append(fallbackTag);
vid.remove();
}},
_resizeBgVideos: function(){
$('.fl-bg-video').each(function(){
FLBuilderLayout._resizeBgVideo.apply(this);
if($(this).parent().find('img').length > 0){
$(this).parent().imagesLoaded($.proxy(FLBuilderLayout._resizeBgVideo, this) );
}});
},
_resizeBgVideo: function(){
if(0===$(this).find('video').length&&0===$(this).find('iframe').length){
return;
}
var wrap=$(this),
wrapHeight=wrap.outerHeight(),
wrapWidth=wrap.outerWidth(),
vid=wrap.find('video'),
vidHeight=wrap.data('height'),
vidWidth=wrap.data('width'),
newWidth=wrapWidth,
newHeight=Math.round(vidHeight * wrapWidth/vidWidth),
newLeft=0,
newTop=0,
iframe=wrap.find('iframe'),
isRowFullHeight=$(this).closest('.fl-row-bg-video').hasClass('fl-row-full-height'),
vidCSS={
top:       '50%',
left:      '50%',
transform: 'translate(-50%,-50%)',
};
if(vid.length){
if(vidHeight===''||typeof vidHeight==='undefined'||vidWidth===''||typeof vidWidth==='undefined'){
vid.css({
'left':'0px',
'top':'0px',
'width':newWidth + 'px'
});
vid.on('loadedmetadata', FLBuilderLayout._resizeOnLoadedMeta);
return;
}
if(! isRowFullHeight){
if(newHeight < wrapHeight){
newHeight=wrapHeight;
newLeft=-((newWidth - wrapWidth) / 2);
newWidth=vidHeight ? Math.round(vidWidth * wrapHeight/vidHeight):newWidth;
}else{
newTop=-((newHeight - wrapHeight)/2);
}
vidCSS={
left:newLeft + 'px',
top:newTop + 'px',
height:newHeight + 'px',
width:newWidth + 'px',
}}
vid.css(vidCSS);
}
else if(iframe.length){
if(typeof wrap.data('youtube')!=='undefined'){
FLBuilderLayout._resizeYoutubeBgVideo.apply(this);
}}
},
_resizeOnLoadedMeta: function(){
var video=$(this),
wrapHeight=video.parent().outerHeight(),
wrapWidth=video.parent().outerWidth(),
vidWidth=video[0].videoWidth,
vidHeight=video[0].videoHeight,
newHeight=Math.round(vidHeight * wrapWidth/vidWidth),
newWidth=wrapWidth,
newLeft=0,
newTop=0;
if(newHeight < wrapHeight){
newHeight=wrapHeight;
newWidth=Math.round(vidWidth * wrapHeight/vidHeight);
newLeft=-((newWidth - wrapWidth)/2);
}else{
newTop=-((newHeight - wrapHeight)/2);
}
video.parent().data('width', vidWidth);
video.parent().data('height', vidHeight);
video.css({
'left':newLeft + 'px',
'top':newTop + 'px',
'width':newWidth + 'px',
'height':newHeight + 'px'
});
},
_resizeYoutubeBgVideo: function(){
var wrap=$(this),
wrapWidth=wrap.outerWidth(),
wrapHeight=wrap.outerHeight(),
player=wrap.data('YTPlayer'),
video=player ? player.getIframe():null,
aspectRatioSetting='16:9',
aspectRatioArray=aspectRatioSetting.split(':'),
aspectRatio=aspectRatioArray[0] / aspectRatioArray[1],
ratioWidth=wrapWidth / aspectRatio,
ratioHeight=wrapHeight * aspectRatio,
isWidthFixed=wrapWidth / wrapHeight > aspectRatio,
width=isWidthFixed ? wrapWidth:ratioHeight,
height=isWidthFixed ? ratioWidth:wrapHeight;
if(video){
$(video).width(width).height(height);
}},
_initHash: function(){
var hash=window.location.hash.replace('#', '').split('/').shift(),
element=null,
tabs=null,
responsiveLabel=null,
tabIndex=null,
label=null;
if(''!==hash){
try {
element=$('#' + hash);
if(element.length > 0){
if(element.hasClass('fl-accordion-item') ){
setTimeout(function(){
element.find('.fl-accordion-button').trigger('click');
}, 100);
}
if(element.hasClass('fl-tabs-panel') ){
setTimeout(function(){
tabs=element.closest('.fl-tabs');
responsiveLabel=element.find('.fl-tabs-panel-label');
tabIndex=responsiveLabel.data('index');
label=tabs.find('.fl-tabs-labels .fl-tabs-label[data-index=' + tabIndex + ']');
label[0].click();
FLBuilderLayout._scrollToElement(element);
}, 100);
}}
}
catch(e){}}
},
_initAnchorLinks: function(){
$('a, [role="link"]').each(FLBuilderLayout._initAnchorLink);
},
_initAnchorLink: function(){
var link=$(this),
href=link.data('url') ? link.data('url'):link.attr('href'),
target=link.data('url') ? new URL(href, window.location.href):this,
loc=window.location,
id=null,
element=null,
flNode=false;
if('undefined'!=typeof href&&href.indexOf('#') > -1&&link.closest('svg').length < 1){
if(loc.pathname.replace(/^\//, '')==target.pathname.replace(/^\//, '')&&loc.hostname==target.hostname){
try {
id=href.split('#').pop();
if(! id){
return;
}
element=$('#' + id);
if(element.length > 0){
flNode=element.hasClass('fl-row')||element.hasClass('fl-col')||element.hasClass('fl-module');
if(!element.hasClass('fl-no-scroll')&&(link.hasClass('fl-scroll-link')||flNode) ){
$(link).on('click', FLBuilderLayout._scrollToElementOnLinkClick);
}
if(element.hasClass('fl-accordion-item') ){
$(link).on('click', FLBuilderLayout._scrollToAccordionOnLinkClick);
}
if(element.hasClass('fl-tabs-panel') ){
$(link).on('click', FLBuilderLayout._scrollToTabOnLinkClick);
}}
}
catch(e){}}
}},
_scrollToElementOnLinkClick: function(e, callback){
var attribute=$(this).data('url') ? $(this).data('url'):$(this).attr('href');
var element=$('#' + attribute.split('#').pop());
FLBuilderLayout._scrollToElement(element, callback);
e.preventDefault();
},
_scrollToElement: function(element, callback){
var config=FLBuilderLayoutConfig.anchorLinkAnimations,
dest=0,
win=$(window),
doc=$(document);
if(element.length > 0){
if('fixed'===element.css('position')||'fixed'===element.parent().css('position')){
dest=element.position().top;
}
else if(element.offset().top > doc.height() - win.height()){
dest=doc.height() - win.height();
}else{
dest=element.offset().top - config.offset;
}
$('html, body').stop(true).animate({ scrollTop: dest }, config.duration, config.easing, function(){
if('undefined'!=typeof callback){
callback();
}
if(undefined!=element.attr('id')&&window.location.hash!=='#' + element.attr('id') ){
var firefox_version=window.navigator.userAgent.match(/Firefox\/(\d+)\./),
firefox_version=firefox_version ? parseInt(firefox_version[1], 10):null;
if(firefox_version!==null&&firefox_version < 135){
window.location.hash=element.attr('id');
}else{
if(history.pushState){
history.pushState(null, null, '#' + element.attr('id') );
}else{
window.location.hash=element.attr('id');
}}
}});
}},
_scrollToAccordionOnLinkClick: function(e){
var element=$('#' + $(this).attr('href').split('#').pop());
if(element.length > 0){
var callback=function(){
if(element){
element.find('.fl-accordion-button').trigger('click');
element=false;
}};
FLBuilderLayout._scrollToElementOnLinkClick.call(this, e, callback);
}},
_scrollToTabOnLinkClick: function(e){
var element=$('#' + $(this).attr('href').split('#').pop()),
tabs=null,
label=null,
responsiveLabel=null;
if(element.length > 0){
tabs=element.closest('.fl-tabs');
responsiveLabel=element.find('.fl-tabs-panel-label');
tabIndex=responsiveLabel.data('index');
label=tabs.find('.fl-tabs-labels .fl-tabs-label[data-index=' + tabIndex + ']');
if(responsiveLabel.is(':visible') ){
var callback=function(){
if(element){
responsiveLabel.trigger($.Event('click', { which: 1 }) );
}};
FLBuilderLayout._scrollToElementOnLinkClick.call(this, e, callback);
}else{
label[0].click();
FLBuilderLayout._scrollToElement(element);
}
e.preventDefault();
}},
_initForms: function(){
if(! FLBuilderLayout._hasPlaceholderSupport){
$('.fl-form-field input').each(FLBuilderLayout._initFormFieldPlaceholderFallback);
}
$('.fl-form-field input').on('focus', FLBuilderLayout._clearFormFieldError);
},
_hasPlaceholderSupport: function(){
var input=document.createElement('input');
return 'undefined'!=input.placeholder;
},
_initFormFieldPlaceholderFallback: function(){
var field=$(this),
val=field.val(),
placeholder=field.attr('placeholder');
if('undefined'!=placeholder&&''===val){
field.val(placeholder);
field.on('focus', FLBuilderLayout._hideFormFieldPlaceholderFallback);
field.on('blur', FLBuilderLayout._showFormFieldPlaceholderFallback);
}},
_hideFormFieldPlaceholderFallback: function(){
var field=$(this),
val=field.val(),
placeholder=field.attr('placeholder');
if(val==placeholder){
field.val('');
}},
_showFormFieldPlaceholderFallback: function(){
var field=$(this),
val=field.val(),
placeholder=field.attr('placeholder');
if(''===val){
field.val(placeholder);
}},
_clearFormFieldError: function(){
var field=$(this);
field.removeAttr('aria-invalid');
field.removeClass('fl-form-error');
const message=field.attr('aria-describedby');
message ? $('#' + message).hide():field.siblings('.fl-form-error-message').hide();
},
_initRowShapeLayerHeight: function (){
FLBuilderLayout._adjustRowShapeLayerHeight();
$(window).on('resize', FLBuilderLayout._adjustRowShapeLayerHeight);
},
_initNestedColsWidth: function(){
var nestedCols=$('.fl-col-has-cols');
if(nestedCols.length <=0){
return;
}
$(nestedCols).each(function(index, col){
if($(col).width() <=0){
$(col).css('width', FLBuilderLayoutConfig.emptyColWidth);
}});
},
_adjustRowShapeLayerHeight: function(){
var rowShapeLayers=$('.fl-builder-shape-layer');
$(rowShapeLayers).each(function (index){
var rowShapeLayer=$(this),
shape=$(rowShapeLayer).find('svg'),
height=shape.height(),
excludeShapes='.fl-builder-shape-circle, .fl-builder-shape-dot-cluster, .fl-builder-shape-topography, .fl-builder-shape-rect';
if(! rowShapeLayer.is(excludeShapes) ){
$(shape).css('height', Math.ceil(height) );
}});
},
_string_to_slug: function(str){
str=str.replace(/^\s+|\s+$/g, '');
if('undefined'==typeof window._fl_string_to_slug_regex){
regex=new RegExp('[^a-zA-Z0-9\'":() !.,-_|]', 'g');
}else{
regex=new RegExp('[^' + window._fl_string_to_slug_regex + '\'":\(\) !.,-_|\\\p{Letter}]', 'ug');
}
str=str.replace(regex, '')
.replace(/\s+/g, ' ');
return str;
},
_reorderMenu: function(){
if($('#wp-admin-bar-fl-builder-frontend-edit-link-default li').length > 1){
$('#wp-admin-bar-fl-builder-frontend-duplicate-link')
.appendTo('#wp-admin-bar-fl-builder-frontend-edit-link-default')
.css('padding-top', '5px')
.css('border-top', '2px solid #1D2125')
.css('margin-top', '5px')
}}
};
$(function(){
FLBuilderLayout.init();
});
})(jQuery);
(function($){
if(typeof FLBuilderLayoutModules!=='undefined'){
return;
}
FLBuilderLayoutModules={
init: function(){
if(0===$('.fl-builder-edit').length){
FLBuilderLayoutModules._initModuleAnimations();
}},
_initModuleAnimations: function(){
if(typeof jQuery.fn.waypoint!=='undefined'){
$('.fl-animation').each(function(){
var node=$(this),
nodeTop=node.offset().top,
winHeight=$(window).height(),
bodyHeight=$('body').height(),
waypoint=FLBuilderLayoutConfig.waypoint,
offset='80%';
if(typeof waypoint.offset!==undefined){
offset=FLBuilderLayoutConfig.waypoint.offset + '%';
}
if(bodyHeight - nodeTop < winHeight * 0.2){
offset='100%';
}
node.waypoint({
offset: offset,
handler: FLBuilderLayoutModules._doModuleAnimation
});
});
}},
_doModuleAnimation: function(){
var module='undefined'==typeof this.element ? $(this):$(this.element),
delay=parseFloat(module.data('animation-delay')),
duration=parseFloat(module.data('animation-duration'));
if(! isNaN(duration) ){
module.css('animation-duration', duration + 's');
}
if(!isNaN(delay)&&delay > 0){
setTimeout(function(){
module.addClass('fl-animated');
}, delay * 1000);
}else{
setTimeout(function(){
module.addClass('fl-animated');
}, 1);
}}
};
$(function(){
FLBuilderLayoutModules.init();
});
})(jQuery);
;(function($){
UABBCreativeMenu=function(settings){
this.settingsId=settings.id;
this.nodeClass='.fl-node-' + settings.id;
this.wrapperClass=this.nodeClass + ' .uabb-creative-menu';
this.type=settings.type;
this.mobileToggle=settings.mobile;
this.mobileBelowRow=settings.mobileBelowRow;
this.breakPoints=settings.breakPoints;
this.mobileBreakpoint=settings.mobileBreakpoint;
this.mediaBreakpoint=settings.mediaBreakpoint;
this.mobileMenuType=settings.mobileMenuType;
this.isBuilderActive=settings.isBuilderActive;
this.currentBrowserWidth=$(window).width();
this._initMenu();
$(window).on('resize', $.proxy(function(e){
var width=$(window).width();
if(width!=this.currentBrowserWidth){
this._initMenu();
this._clickOrHover();
this.currentBrowserWidth=width;
}}, this) );
};
UABBCreativeMenu.prototype={
nodeClass:'',
wrapperClass:'',
type:'',
breakPoints:{},
$submenus:null,
_isMobile: function(){
return $(window).width() <=this.breakPoints.small ? true:false;
},
_isMedium: function(){
return $(window).width() <=this.breakPoints.medium ? true:false;
},
_isCustom: function(){
return $(window).width() <=this.breakPoints.custom ? true:false;
},
_isMenuToggle: function(){
if('always'==this.mobileBreakpoint
||(this._isMobile()&&'mobile'==this.mobileBreakpoint)
||(this._isMedium()&&'medium-mobile'==this.mobileBreakpoint)
||(this._isCustom()&&'custom'==this.mobileBreakpoint)
){
return true;
}
return false;
},
_initMenu: function(){
this._menuOnFocus();
if($(this.nodeClass).length){
this._initMegaMenus();
}
if(this._isMenuToggle()||this.type=='accordion'){
$(this.wrapperClass).off('mouseenter mouseleave');
this._menuOnClick();
this._clickOrHover();
}else{
$(this.wrapperClass).off('click');
this._submenuOnRight();
}
if(this.mobileToggle!='expanded'){
this._toggleForMobile();
this._initBelowRowMenu();
if(this.mobileMenuType==='off-canvas'){
this._initializeCanvas();
}
if(this.mobileMenuType==='full-screen'){
this.__initializeFullScreen();
}}
},
_menuOnFocus: function(){
$(this.nodeClass).off('focus').on('focus', 'a', $.proxy(function(e){
var $menuItem=$(e.target).parents('.menu-item').first(),
$parents=$(e.target).parentsUntil(this.wrapperClass);
$('.uabb-creative-menu .focus').removeClass('focus');
$menuItem.addClass('focus');
$parents.addClass('focus');
}, this) ).on('focusout', 'a', $.proxy(function(e){
$(e.target).parentsUntil(this.wrapperClass).removeClass('focus');
}, this) );
},
_menuOnClick: function(){
$('.uabb-has-submenu-container').off().click($.proxy(function(e){
var $link=$(e.target).parents('.uabb-has-submenu').first(),
$subMenu=$link.children('.sub-menu').first(),
$href=$link.children('.uabb-has-submenu-container').first().find('> a').attr('href'),
$subMenuParents=$(e.target).parents('.sub-menu'),
$activeParent=$(e.target).closest('.uabb-has-submenu.uabb-active');
if(!$subMenu.is(':visible')||$(e.target).hasClass('uabb-menu-toggle')
|| ($subMenu.is(':visible')&&(typeof $href==='undefined'||$href=='#'))){
e.preventDefault();
}else{
window.location.href=$href;
return;
}
if($(this.wrapperClass).hasClass('uabb-creative-menu-accordion-collapse')){
if(!$link.parents('.menu-item').hasClass('uabb-active')){
$('.uabb-active', this.wrapperClass).not($link).removeClass('uabb-active');
}
else if($link.parents('.menu-item').hasClass('uabb-active')&&$link.parent('.sub-menu').length){
$('.uabb-active', this.wrapperClass).not($link).not($activeParent).removeClass('uabb-active');
}
$('.sub-menu', this.wrapperClass).not($subMenu).not($subMenuParents).slideUp('normal');
}
$subMenu.slideToggle();
$link.toggleClass('uabb-active');
}, this) );
},
_clickOrHover: function(){
this.$submenus=this.$submenus||$(this.wrapperClass).find('.sub-menu');
var $wrapper=$(this.wrapperClass),
$menu=$wrapper.find('.menu');
$li=$wrapper.find('.uabb-has-submenu');
if(this._isMenuToggle()){
$li.each(function(el){
if(!$(this).hasClass('uabb-active')){
$(this).find('.sub-menu').fadeOut();
}});
}else{
$li.each(function(el){
if(!$(this).hasClass('uabb-active')){
$(this).find('.sub-menu').css({
'display':'',
'opacity':''
});
}});
}},
_submenuOnRight: function(){
$(this.wrapperClass)
.on('mouseenter', '.uabb-has-submenu', $.proxy(function(e){
if($(e.currentTarget).find('.sub-menu').length===0){
return;
}
var $link=$(e.currentTarget),
$parent=$link.parent(),
$subMenu=$link.find('.sub-menu'),
subMenuWidth=$subMenu.width(),
subMenuPos=0,
winWidth=$(window).width();
if($link.closest('.uabb-menu-submenu-right').length!==0){
$link.addClass('uabb-menu-submenu-right');
}else if($('body').hasClass('rtl') ){
subMenuPos=$parent.is('.sub-menu') ?
$parent.offset().left - subMenuWidth:
$link.offset().left - subMenuWidth;
if(subMenuPos <=0){
$link.addClass('uabb-menu-submenu-right');
}}else{
subMenuPos=$parent.is('.sub-menu') ?
$parent.offset().left + $parent.width() + subMenuWidth :
$link.offset().left + subMenuWidth;
if(subMenuPos > winWidth){
$link.addClass('uabb-menu-submenu-right');
}}
}, this) )
.on('mouseleave', '.uabb-has-submenu', $.proxy(function(e){
$(e.currentTarget).removeClass('uabb-menu-submenu-right');
}, this) );
},
_toggleForMobile: function(){
var $wrapper=null,
$menu=null;
if(this._isMenuToggle()){
$wrapper=$(this.wrapperClass);
$menu=$wrapper.children('.menu');
if(!$wrapper.find('.uabb-creative-menu-mobile-toggle').hasClass('uabb-active') ){
if(window.innerWidth <=this.mediaBreakpoint){
$menu.css({ display: 'none' });
}else{
if(this.mobileBelowRow=='below-row'){
$menu.css({ display: 'block' });
}}
}
$wrapper.find('.uabb-creative-menu-mobile-toggle').off().on('focus', function(e){
$(this).on('keypress', function(e){
if(e.which===13){
$(this).trigger('click');
}});
});
$wrapper.off().on('click', '.uabb-creative-menu-mobile-toggle', function(e){
$(this).toggleClass('uabb-active');
$menu.slideToggle();
});
$menu.on('click', '.menu-item > a[href*="#"]', function(e){
var $href=$(this).attr('href'),
$targetID='';
if($href!=='#'){
$targetID=$href.split('#')[1];
if($('body').find('#'+  $targetID).length > 0){
e.preventDefault();
$(this).toggleClass('uabb-active');
$menu.slideToggle('fast', function(){
setTimeout(function(){
$('html, body').animate({
scrollTop: $('#'+ $targetID).offset().top
}, 1000, function(){
window.location.hash=$targetID;
});
}, 500);
});
}}
});
}else{
$wrapper=$(this.wrapperClass),
$menu=$wrapper.children('.menu');
$wrapper.find('.uabb-creative-menu-mobile-toggle').removeClass('uabb-active');
$menu.css({ display: '' });
}},
_initBelowRowMenu: function(){
var $wrapper=null,
$menu=null;
if(this._isMenuToggle()&&(window.innerWidth <=this.mediaBreakpoint||this.mediaBreakpoint=='always')){
if(this._isMobileBelowRowEnabled()){
this._placeMobileMenuBelowRow();
$wrapper=$(this.wrapperClass);
$menu=$(this.nodeClass + '-clone');
$menu.find('ul.menu').show();
}else{
$wrapper=$(this.wrapperClass);
$menu=$wrapper.children('.menu');
}
if(false!=this.mobileBelowRow&&!$wrapper.find('.uabb-creative-menu-mobile-toggle').hasClass('uabb-active') ){
if(window.innerWidth <=this.mediaBreakpoint||this.mediaBreakpoint=='always'){
$menu.css({ display: 'none' });
}else{
$menu.css({ display: 'block' });
}}
$wrapper.find('.uabb-creative-menu-mobile-toggle').off().on('focus', function(e){
$(this).on('keypress', function(e){
if(e.which===13){
$(this).trigger('click');
}});
});
$wrapper.off().on('click', '.uabb-creative-menu-mobile-toggle', function(e){
$(this).toggleClass('uabb-active');
$menu.slideToggle();
});
}else{
if(this._isMobileBelowRowEnabled()){
this._removeMenuFromBelowRow();
}
$wrapper=$(this.wrapperClass),
$menu=$wrapper.children('.menu');
$wrapper.find('.uabb-creative-menu-mobile-toggle').removeClass('uabb-active');
$menu.css({ display: '' });
}},
_initializeCanvas: function(){
if(this.isBuilderActive){
this._toggleMenu();
return;
}
if('always'===this.mediaBreakpoint||this.mediaBreakpoint >=this.currentBrowserWidth){
$(this.nodeClass).find('.uabb-creative-menu.off-canvas').appendTo('body').wrap('<div class="fl-node-'+this.settingsId+'">');
}
this._toggleMenu();
},
__initializeFullScreen: function(){
if(this.isBuilderActive){
this._toggleMenu();
return;
}
if('always'===this.mediaBreakpoint||this.mediaBreakpoint >=this.currentBrowserWidth){
$(this.nodeClass).find('.uabb-creative-menu.full-screen').appendTo('body').wrap('<div class="fl-node-'+this.settingsId+'">');
}
this._toggleMenu();
},
_toggleMenu: function(){
var self=this;
$(self.nodeClass).find('.uabb-creative-menu-mobile-toggle').off().on('focus', function(e){
$(this).on('keypress', function(e){
if(e.which===13){
$(this).trigger('click');
}});
});
$(self.nodeClass).find('.uabb-creative-menu-mobile-toggle').off('click').on('click', function(){
if($(self.nodeClass).find('.uabb-creative-menu').hasClass('menu-open')){
$(self.nodeClass).find('.uabb-creative-menu').addClass('menu-close');
$(self.nodeClass).find('.uabb-creative-menu').removeClass('menu-open');
}else{
$(self.nodeClass).find('.uabb-creative-menu').addClass('menu-open');
}});
$(self.nodeClass).find('.uabb-creative-menu .uabb-menu-close-btn, .uabb-clear').on('click', function(){
$(self.nodeClass).find('.uabb-creative-menu').addClass('menu-close');
$(self.nodeClass).find('.uabb-creative-menu').removeClass('menu-open');
});
if(this.isBuilderActive){
setTimeout(function(){
if($('.fl-builder-settings[data-node="'+self.settingsId+'"]').length > 0){
$('.uabb-creative-menu').removeClass('menu-open');
$(self.nodeClass).find('.uabb-creative-menu-mobile-toggle').trigger('click');
}}, 600);
FLBuilder.addHook('settings-form-init', function(){
if(!($('.fl-builder-settings[data-node="'+self.settingsId+'"]').length > 0) ){
return;
}
if(! $(self.nodeClass).find('.uabb-creative-menu').hasClass('uabb-menu-overlay')){
$('.fl-builder-panel').css('z-index', '999999');
}
if(! $(self.nodeClass).find('.uabb-creative-menu').hasClass('menu-open')){
$('.uabb-creative-menu').removeClass('menu-open');
$('.uabb-creative-menu-mobile-toggle').removeClass('uabb-active');
$(self.nodeClass).find('.uabb-creative-menu-mobile-toggle').trigger('click');
}});
}},
_isMobileBelowRowEnabled: function(){
return this.mobileBelowRow&&$(this.nodeClass).closest('.fl-col').length;
},
_placeMobileMenuBelowRow: function(){
if($(this.nodeClass + '-clone').length){
return;
}
var module=$(this.nodeClass),
clone=null,
col=module.closest('.fl-col');
if(module.length < 1){
return;
}
clone=(module.length > 1) ? $(module[0]).clone():module.clone();
module.find('ul.menu').css('display','none');
clone.addClass(( this.nodeClass + '-clone').replace('.', '') );
clone.find('.uabb-creative-menu-mobile-toggle').remove();
col.after(clone);
this._menuOnClick();
},
_removeMenuFromBelowRow: function(){
if(! $(this.nodeClass + '-clone').length){
return;
}
var module=$(this.nodeClass);
module.find('ul.menu').css('display','none'),
clone=$(this.nodeClass + '-clone');
menu=clone.find('ul.menu');
module.find('ul.menu').after(menu);
clone.remove();
},
_initMegaMenus: function(){
var module=$(this.nodeClass),
rowContent=module.closest('.fl-row-content'),
rowWidth=rowContent.width(),
rowOffset=(rowContent.offset.left!=undefined) ? rowContent.offset().left:'',
megas=module.find('.mega-menu'),
disabled=module.find('.mega-menu-disabled'),
isToggle=this._isMenuToggle();
if(isToggle){
megas.removeClass('mega-menu').addClass('mega-menu-disabled');
module.find('li.mega-menu-disabled > ul.sub-menu').css('width', '');
rowContent.css('position', '');
}else{
disabled.removeClass('mega-menu-disabled').addClass('mega-menu');
module.find('li.mega-menu > ul.sub-menu').css('width', rowWidth + 'px');
rowContent.css('position', 'relative');
}},
};})(jQuery);
jQuery(document).ready(function(){
new UABBCreativeMenu({
id: 'c4ga3fxm7eub',
type: 'horizontal',
mobile: 'hamburger-label',
mobileBelowRow: false,
breakPoints: {
medium: 992,
small: 768,
custom: 768		},
mobileBreakpoint: 'mobile',
mediaBreakpoint: '768',
mobileMenuType: 'off-canvas',
fullScreenAnimation: '',
isBuilderActive: false	});
});
jQuery(function($){
$(function(){
$('.fl-node-scl3my4rnd85 .fl-photo-img')
.on('mouseenter', function(e){
$(this).data('title', $(this).attr('title') ).removeAttr('title');
})
.on('mouseleave', function(e){
$(this).attr('title', $(this).data('title') ).data('title', null);
});
});
window._fl_string_to_slug_regex='a-zA-Z0-9';
});
jQuery(function($){
$(function(){
$('.fl-node-zmheuntvc0pj .fl-photo-img')
.on('mouseenter', function(e){
$(this).data('title', $(this).attr('title') ).removeAttr('title');
})
.on('mouseleave', function(e){
$(this).attr('title', $(this).data('title') ).data('title', null);
});
});
window._fl_string_to_slug_regex='a-zA-Z0-9';
});
jQuery(document).ready(function(){
new UABBCreativeMenu({
id: 'ck0hyordl3qt',
type: 'horizontal',
mobile: 'hamburger-label',
mobileBelowRow: false,
breakPoints: {
medium: 992,
small: 768,
custom: 768		},
mobileBreakpoint: 'mobile',
mediaBreakpoint: '768',
mobileMenuType: 'off-canvas',
fullScreenAnimation: '',
isBuilderActive: false	});
});
(function($){
FLThemeBuilderHeaderLayout={
win:null,
body:null,
header:null,
overlay:false,
hasAdminBar:false,
stickyOn: '',
breakpointWidth: 0,
init: function(){
var editing=$('html.fl-builder-edit').length,
header=$('.fl-builder-content[data-type=header]'),
menuModule=header.find('.fl-module-menu'),
breakpoint=null;
if(! editing&&header.length){
header.imagesLoaded($.proxy(function(){
this.win=$(window);
this.body=$('body');
this.header=header.eq(0);
this.overlay     = !! Number(header.attr('data-overlay') );
this.hasAdminBar = !! $('body.admin-bar').length;
this.stickyOn=this.header.data('sticky-on');
breakpoint=this.header.data('sticky-breakpoint');
if(''==this.stickyOn){
if(typeof FLBuilderLayoutConfig.breakpoints[ breakpoint ]!==undefined){
this.breakpointWidth=FLBuilderLayoutConfig.breakpoints[ breakpoint ];
}else{
this.breakpointWidth=FLBuilderLayoutConfig.breakpoints.medium;
}}
if(Number(header.attr('data-sticky') )){
this.header.data('original-top', this.header.offset().top);
this.win.on('resize', $.throttle(500, $.proxy(this._initSticky, this) ));
this._initSticky();
}}, this) );
}},
_initSticky: function(e){
var header=$('.fl-builder-content[data-type=header]'),
windowSize=this.win.width(),
makeSticky=false;
makeSticky=this._makeWindowSticky(windowSize);
if(makeSticky||(this.breakpointWidth > 0&&windowSize >=this.breakpointWidth) ){
this.win.on('scroll.fl-theme-builder-header-sticky', $.proxy(this._doSticky, this) );
if(e&&'resize'===e.type){
if(this.header.hasClass('fl-theme-builder-header-sticky') ){
this._doSticky(e);
}
this._adjustStickyHeaderWidth();
}
if(Number(header.attr('data-shrink') )){
this.header.data('original-height', this.header.outerHeight());
this.win.on('resize', $.throttle(500, $.proxy(this._initShrink, this) ));
this._initShrink();
}
this._initFlyoutMenuFix(e);
}else{
this.win.off('scroll.fl-theme-builder-header-sticky');
this.win.off('resize.fl-theme-builder-header-sticky');
this.header.removeClass('fl-theme-builder-header-sticky');
this.header.removeAttr('style');
this.header.parent().css('padding-top', '0');
}},
_makeWindowSticky: function(windowSize){
var makeSticky=false;
switch (this.stickyOn){
case 'xl':
makeSticky=windowSize > FLBuilderLayoutConfig.breakpoints['large'];
break;
case '':
case 'desktop':
makeSticky=windowSize >=FLBuilderLayoutConfig.breakpoints['medium'];
break;
case 'desktop-medium':
makeSticky=windowSize > FLBuilderLayoutConfig.breakpoints['small'];
break;
case 'large':
makeSticky=windowSize > FLBuilderLayoutConfig.breakpoints['medium']&&windowSize <=FLBuilderLayoutConfig.breakpoints['large'];
break;
case 'large-medium':
makeSticky=windowSize > FLBuilderLayoutConfig.breakpoints['small']&&windowSize <=FLBuilderLayoutConfig.breakpoints['large'];
break;
case 'medium':
makeSticky=(windowSize <=FLBuilderLayoutConfig.breakpoints['medium']&&windowSize > FLBuilderLayoutConfig.breakpoints['small']);
break;
case 'medium-mobile':
makeSticky=(windowSize <=FLBuilderLayoutConfig.breakpoints['medium']);
break;
case 'mobile':
makeSticky=(windowSize <=FLBuilderLayoutConfig.breakpoints['small']);
break;
case 'all':
makeSticky=true;
break;
}
return makeSticky;
},
_doSticky: function(e){
var winTop=Math.floor(this.win.scrollTop()),
headerTop=Math.floor(this.header.data('original-top') ),
hasStickyClass=this.header.hasClass('fl-theme-builder-header-sticky'),
hasScrolledClass=this.header.hasClass('fl-theme-builder-header-scrolled'),
beforeHeader=this.header.prevAll('.fl-builder-content'),
bodyTopPadding=parseInt(jQuery('body').css('padding-top')),
winBarHeight=$('#wpadminbar').length ? $('#wpadminbar').outerHeight():0,
headerHeight=0;
if(isNaN(bodyTopPadding) ){
bodyTopPadding=0;
}
if(this.hasAdminBar&&this.win.width() > 600){
winTop +=Math.floor(winBarHeight);
}
if(winTop > headerTop){
if(! hasStickyClass){
if(e&&('scroll'===e.type||'smartscroll'===e.type) ){
this.header.addClass('fl-theme-builder-header-sticky');
if(this.overlay&&beforeHeader.length){
this.header.css('top', winBarHeight);
}}
if(! this.overlay){
this._adjustHeaderHeight();
}}
}
else if(hasStickyClass){
this.header.removeClass('fl-theme-builder-header-sticky');
this.header.removeAttr('style');
this.header.parent().css('padding-top', '0');
}
this._adjustStickyHeaderWidth();
if(winTop > headerTop){
if(! hasScrolledClass){
this.header.addClass('fl-theme-builder-header-scrolled');
}}else if(hasScrolledClass){
this.header.removeClass('fl-theme-builder-header-scrolled');
}
this._flyoutMenuFix(e);
},
_initFlyoutMenuFix: function(e){
var header=this.header,
menuModule=header.closest('.fl-menu'),
flyoutMenu=menuModule.find('.fl-menu-mobile-flyout'),
isPushMenu=menuModule.hasClass('fl-menu-responsive-flyout-push')||menuModule.hasClass('fl-menu-responsive-flyout-push-opacity'),
isOverlay=menuModule.hasClass('fl-menu-responsive-flyout-overlay'),
flyoutPos=menuModule.hasClass('fl-flyout-right') ? 'right':'left',
flyoutParent=header.parent().is('header') ? header.parent().parent():header.parent();
isFullWidth=this.win.width()===header.width(),
flyoutLayout='',
activePos=250,
headerPos=0;
if(! flyoutMenu.length){
return;
}
if(this.win.width() > header.parent().width()){
headerPos=(this.win.width() - header.width()) / 2;
}
if(isOverlay){
activePos=headerPos;
}
else if(isPushMenu){
activePos=activePos + headerPos;
}
flyoutMenu.data('activePos', activePos);
if(isPushMenu){
flyoutLayout='push-' + flyoutPos;
}
else if(isOverlay){
flyoutLayout='overlay-' + flyoutPos;
}
if(isPushMenu&&! $('html').hasClass('fl-theme-builder-has-flyout-menu') ){
$('html').addClass('fl-theme-builder-has-flyout-menu');
}
if(! flyoutParent.hasClass('fl-theme-builder-flyout-menu-' + flyoutLayout) ){
flyoutParent.addClass('fl-theme-builder-flyout-menu-' + flyoutLayout);
}
if(! header.hasClass('fl-theme-builder-flyout-menu-overlay')&&isOverlay){
header.addClass('fl-theme-builder-flyout-menu-overlay');
}
if(! header.hasClass('fl-theme-builder-header-full-width')&&isFullWidth){
header.addClass('fl-theme-builder-header-full-width');
}
else if(! isFullWidth){
header.removeClass('fl-theme-builder-header-full-width');
}
menuModule.on('click', '.fl-menu-mobile-toggle', $.proxy(function(event){
if(menuModule.find('.fl-menu-mobile-toggle.fl-active').length){
$('html').addClass('fl-theme-builder-flyout-menu-active');
event.stopImmediatePropagation();
}else{
$('html').removeClass('fl-theme-builder-flyout-menu-active');
}
this._flyoutMenuFix(event);
}, this) );
},
_flyoutMenuFix: function(e){
var header=this.header,
menuModule=$(e.target).closest('.fl-menu'),
flyoutMenu=menuModule.find('.fl-menu-mobile-flyout'),
flyoutPos=menuModule.hasClass('fl-flyout-right') ? 'right':'left',
menuOpacity=menuModule.find('.fl-menu-mobile-opacity'),
isScroll='undefined'!==typeof e&&'scroll'===e.handleObj.type,
activePos='undefined'!==typeof flyoutMenu.data('activePos') ? flyoutMenu.data('activePos'):0,
headerPos=(this.win.width() - header.width()) / 2,
inactivePos=headerPos > 0 ? activePos + 4:254;
if(! flyoutMenu.length){
return;
}
if(this.overlay){
return;
}
if($('.fl-theme-builder-flyout-menu-active').length){
if(isScroll&&! flyoutMenu.hasClass('fl-menu-disable-transition') ){
flyoutMenu.addClass('fl-menu-disable-transition');
}
if(header.hasClass('fl-theme-builder-header-sticky') ){
if(! isScroll){
setTimeout($.proxy(function(){
flyoutMenu.css(flyoutPos, '-' + activePos + 'px');
}, this), 1);
}else{
flyoutMenu.css(flyoutPos, '-' + activePos + 'px');
}}else{
flyoutMenu.css(flyoutPos, '0px');
}}else{
if(flyoutMenu.hasClass('fl-menu-disable-transition') ){
flyoutMenu.removeClass('fl-menu-disable-transition');
}
if(header.hasClass('fl-theme-builder-flyout-menu-overlay')&&headerPos > 0&&headerPos < 250){
if(header.hasClass('fl-theme-builder-header-sticky') ){
inactivePos=headerPos + 254;
}else{
inactivePos=254;
}}
if(e&&e.type==='resize'){
inactivePos=headerPos + 254;
}
flyoutMenu.css(flyoutPos, '-' + inactivePos + 'px');
}
if(e&&menuModule.is('.fl-menu-responsive-flyout-overlay')&&$.infinitescroll){
e.stopImmediatePropagation();
}
if(menuOpacity.length){
if(header.hasClass('fl-theme-builder-header-sticky') ){
if('0px'===menuOpacity.css('left') ){
menuOpacity.css('left', '-' + headerPos + 'px');
}}else{
menuOpacity.css('left', '');
}}
},
_adjustStickyHeaderWidth: function (){
if($('body').hasClass('fl-fixed-width') ){
var parentWidth=this.header.parent().width();
if(this.win.width() >=992){
this.header.css({
'margin': '0 auto',
'max-width': parentWidth,
});
}else{
this.header.css({
'margin': '',
'max-width': '',
});
}}
},
_adjustHeaderHeight: function (){
var beforeHeader=this.header.prevAll('.fl-builder-content'),
beforeHeaderHeight=0,
beforeHeaderFix=0,
headerHeight=Math.floor(this.header.outerHeight()),
bodyTopPadding=parseInt($('body').css('padding-top') ),
wpAdminBarHeight=0,
totalHeaderHeight=0;
if(isNaN(bodyTopPadding) ){
bodyTopPadding=0;
}
if(beforeHeader.length){
$.each(beforeHeader, function(){
beforeHeaderHeight +=Math.floor($(this).outerHeight());
});
beforeHeaderFix=2;
}
if(this.hasAdminBar&&this.win.width() <=600){
wpAdminBarHeight=Math.floor($('#wpadminbar').outerHeight());
}
totalHeaderHeight=Math.floor(beforeHeaderHeight + headerHeight);
if(headerHeight > 0){
var headerParent=this.header.parent(),
headerParentTopPadding=0;
if($(headerParent).is('body')){
headerParentTopPadding=Math.floor(headerHeight - wpAdminBarHeight);
}else{
headerParentTopPadding=Math.floor(headerHeight - bodyTopPadding - wpAdminBarHeight);
}
$(headerParent).css('padding-top',(headerParentTopPadding - beforeHeaderFix) + 'px');
this.header.css({
'-webkit-transform': 'translate(0px, -' + totalHeaderHeight + 'px)',
'-ms-transform': 'translate(0px, -' + totalHeaderHeight + 'px)',
'transform': 'translate(0px, -' + totalHeaderHeight + 'px)'
});
}},
_initShrink: function(e){
if(this.win.width() >=this.breakpointWidth){
this.win.on('scroll.fl-theme-builder-header-shrink', $.proxy(this._doShrink, this) );
this._setImageMaxHeight();
if(this.win.scrollTop() > 0){
this._doShrink();
}}else{
this.header.parent().css('padding-top', '0');
this.win.off('scroll.fl-theme-builder-header-shrink');
this._removeShrink();
this._removeImageMaxHeight();
}},
_doShrink: function(e){
var winTop=this.win.scrollTop(),
headerTop=this.header.data('original-top'),
headerHeight=this.header.data('original-height'),
shrinkImageHeight=this.header.data('shrink-image-height'),
windowSize=this.win.width(),
makeSticky=this._makeWindowSticky(windowSize),
hasClass=this.header.hasClass('fl-theme-builder-header-shrink');
if(this.hasAdminBar){
winTop +=32;
}
if(makeSticky&&(winTop > headerTop + headerHeight) ){
if(! hasClass){
this.header.addClass('fl-theme-builder-header-shrink');
this.header.find('img').each(function(i){
var image=$(this),
maxMegaMenu=image.closest('.max-mega-menu').length,
imageInLightbox=image.closest('.fl-button-lightbox-content').length,
imageInNavMenu=image.closest('li.menu-item').length;
if(!(imageInLightbox||imageInNavMenu||maxMegaMenu) ){
image.css('max-height', shrinkImageHeight);
}});
this.header.find('.fl-row-content-wrap').each(function(){
var row=$(this);
if(parseInt(row.css('padding-bottom') ) > 5){
row.addClass('fl-theme-builder-header-shrink-row-bottom');
}
if(parseInt(row.css('padding-top') ) > 5){
row.addClass('fl-theme-builder-header-shrink-row-top');
}});
this.header.find('.fl-module').each(function(){
var module=$(this).find('.fl-module-content').length ? $(this).find('.fl-module-content'):$(this);
if(parseInt(module.css('margin-bottom') ) > 5){
module.addClass('fl-theme-builder-header-shrink-module-bottom');
}
if(parseInt(module.css('margin-top') ) > 5){
module.addClass('fl-theme-builder-header-shrink-module-top');
}});
}}else if(hasClass){
this.header.find('img').css('max-height', '');
this._removeShrink();
}
if('undefined'===typeof(e)&&$('body').hasClass('fl-fixed-width') ){
if(! this.overlay){
this._adjustHeaderHeight();
}}
},
_removeShrink: function(){
var rows=this.header.find('.fl-row-content-wrap'),
modules=this.header.find('.fl-module, .fl-module-content');
rows.removeClass('fl-theme-builder-header-shrink-row-bottom');
rows.removeClass('fl-theme-builder-header-shrink-row-top');
modules.removeClass('fl-theme-builder-header-shrink-module-bottom');
modules.removeClass('fl-theme-builder-header-shrink-module-top');
this.header.removeClass('fl-theme-builder-header-shrink');
},
_setImageMaxHeight: function(){
var head=$('head'),
stylesId='fl-header-styles-' + this.header.data('post-id'),
styles='',
images=this.header.find('.fl-module img');
if($('#' + stylesId).length){
return;
}
images.each(function(i){
var image=$(this),
height=image.height(),
node=image.closest('.fl-module').data('node'),
className='fl-node-' + node + '-img-' + i,
maxMegaMenu=image.closest('.max-mega-menu').length,
imageInLightbox=image.closest('.fl-button-lightbox-content').length,
imageInNavMenu=image.closest('li.menu-item').length;
if(!(imageInLightbox||imageInNavMenu||maxMegaMenu) ){
image.addClass(className);
styles +='.' + className + ' { max-height: ' +(height ? height:image[0].height)  + 'px }';
}});
if(''!==styles){
head.append('<style id="' + stylesId + '">' + styles + '</style>');
}},
_removeImageMaxHeight: function(){
$('#fl-header-styles-' + this.header.data('post-id') ).remove();
},
};
$(function(){ FLThemeBuilderHeaderLayout.init(); });
})(jQuery);
!function (name, definition){
if(typeof module!='undefined'&&module.exports) module.exports=definition()
else if(typeof define=='function'&&define.amd) define(name, definition)
else this[name]=definition()
}('bowser', function (){
var t=true
function detect(ua){
function getFirstMatch(regex){
var match=ua.match(regex);
return (match&&match.length > 1&&match[1])||'';
}
function getSecondMatch(regex){
var match=ua.match(regex);
return (match&&match.length > 1&&match[2])||'';
}
var iosdevice=getFirstMatch(/(ipod|iphone|ipad)/i).toLowerCase()
, likeAndroid=/like android/i.test(ua)
, android = !likeAndroid&&/android/i.test(ua)
, nexusMobile=/nexus\s*[0-6]\s*/i.test(ua)
, nexusTablet = !nexusMobile&&/nexus\s*[0-9]+/i.test(ua)
, chromeos=/CrOS/.test(ua)
, silk=/silk/i.test(ua)
, sailfish=/sailfish/i.test(ua)
, tizen=/tizen/i.test(ua)
, webos=/(web|hpw)os/i.test(ua)
, windowsphone=/windows phone/i.test(ua)
, windows = !windowsphone&&/windows/i.test(ua)
, mac = !iosdevice&&!silk&&/macintosh/i.test(ua)
, linux = !android&&!sailfish&&!tizen&&!webos&&/linux/i.test(ua)
, edgeVersion=getFirstMatch(/edge\/(\d+(\.\d+)?)/i)
, versionIdentifier=getFirstMatch(/version\/(\d+(\.\d+)?)/i)
, tablet=/tablet/i.test(ua)
, mobile = !tablet&&/[^-]mobi/i.test(ua)
, xbox=/xbox/i.test(ua)
, result
if(/opera|opr|opios/i.test(ua)){
result={
name: 'Opera'
, opera: t
, version: versionIdentifier||getFirstMatch(/(?:opera|opr|opios)[\s\/](\d+(\.\d+)?)/i)
}}
else if(/coast/i.test(ua)){
result={
name: 'Opera Coast'
, coast: t
, version: versionIdentifier||getFirstMatch(/(?:coast)[\s\/](\d+(\.\d+)?)/i)
}}
else if(/yabrowser/i.test(ua)){
result={
name: 'Yandex Browser'
, yandexbrowser: t
, version: versionIdentifier||getFirstMatch(/(?:yabrowser)[\s\/](\d+(\.\d+)?)/i)
}}
else if(/ucbrowser/i.test(ua)){
result={
name: 'UC Browser'
, ucbrowser: t
, version: getFirstMatch(/(?:ucbrowser)[\s\/](\d+(?:\.\d+)+)/i)
}}
else if(/mxios/i.test(ua)){
result={
name: 'Maxthon'
, maxthon: t
, version: getFirstMatch(/(?:mxios)[\s\/](\d+(?:\.\d+)+)/i)
}}
else if(/epiphany/i.test(ua)){
result={
name: 'Epiphany'
, epiphany: t
, version: getFirstMatch(/(?:epiphany)[\s\/](\d+(?:\.\d+)+)/i)
}}
else if(/puffin/i.test(ua)){
result={
name: 'Puffin'
, puffin: t
, version: getFirstMatch(/(?:puffin)[\s\/](\d+(?:\.\d+)?)/i)
}}
else if(/sleipnir/i.test(ua)){
result={
name: 'Sleipnir'
, sleipnir: t
, version: getFirstMatch(/(?:sleipnir)[\s\/](\d+(?:\.\d+)+)/i)
}}
else if(/k-meleon/i.test(ua)){
result={
name: 'K-Meleon'
, kMeleon: t
, version: getFirstMatch(/(?:k-meleon)[\s\/](\d+(?:\.\d+)+)/i)
}}
else if(windowsphone){
result={
name: 'Windows Phone'
, windowsphone: t
}
if(edgeVersion){
result.msedge=t
result.version=edgeVersion
}else{
result.msie=t
result.version=getFirstMatch(/iemobile\/(\d+(\.\d+)?)/i)
}}
else if(/msie|trident/i.test(ua)){
result={
name: 'Internet Explorer'
, msie: t
, version: getFirstMatch(/(?:msie |rv:)(\d+(\.\d+)?)/i)
}}else if(chromeos){
result={
name: 'Chrome'
, chromeos: t
, chromeBook: t
, chrome: t
, version: getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i)
}}else if(/chrome.+? edge/i.test(ua)){
result={
name: 'Microsoft Edge'
, msedge: t
, version: edgeVersion
}}
else if(/vivaldi/i.test(ua)){
result={
name: 'Vivaldi'
, vivaldi: t
, version: getFirstMatch(/vivaldi\/(\d+(\.\d+)?)/i)||versionIdentifier
}}
else if(sailfish){
result={
name: 'Sailfish'
, sailfish: t
, version: getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i)
}}
else if(/seamonkey\//i.test(ua)){
result={
name: 'SeaMonkey'
, seamonkey: t
, version: getFirstMatch(/seamonkey\/(\d+(\.\d+)?)/i)
}}
else if(/firefox|iceweasel|fxios/i.test(ua)){
result={
name: 'Firefox'
, firefox: t
, version: getFirstMatch(/(?:firefox|iceweasel|fxios)[ \/](\d+(\.\d+)?)/i)
}
if(/\((mobile|tablet);[^\)]*rv:[\d\.]+\)/i.test(ua)){
result.firefoxos=t
}}
else if(silk){
result={
name: 'Amazon Silk'
, silk: t
, version:getFirstMatch(/silk\/(\d+(\.\d+)?)/i)
}}
else if(/phantom/i.test(ua)){
result={
name: 'PhantomJS'
, phantom: t
, version: getFirstMatch(/phantomjs\/(\d+(\.\d+)?)/i)
}}
else if(/slimerjs/i.test(ua)){
result={
name: 'SlimerJS'
, slimer: t
, version: getFirstMatch(/slimerjs\/(\d+(\.\d+)?)/i)
}}
else if(/blackberry|\bbb\d+/i.test(ua)||/rim\stablet/i.test(ua)){
result={
name: 'BlackBerry'
, blackberry: t
, version: versionIdentifier||getFirstMatch(/blackberry[\d]+\/(\d+(\.\d+)?)/i)
}}
else if(webos){
result={
name: 'WebOS'
, webos: t
, version: versionIdentifier||getFirstMatch(/w(?:eb)?osbrowser\/(\d+(\.\d+)?)/i)
};
if(/touchpad\//i.test(ua)){
result.touchpad=t;
}}
else if(/bada/i.test(ua)){
result={
name: 'Bada'
, bada: t
, version: getFirstMatch(/dolfin\/(\d+(\.\d+)?)/i)
};}
else if(tizen){
result={
name: 'Tizen'
, tizen: t
, version: getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.\d+)?)/i)||versionIdentifier
};}
else if(/qupzilla/i.test(ua)){
result={
name: 'QupZilla'
, qupzilla: t
, version: getFirstMatch(/(?:qupzilla)[\s\/](\d+(?:\.\d+)+)/i)||versionIdentifier
}}
else if(/chromium/i.test(ua)){
result={
name: 'Chromium'
, chromium: t
, version: getFirstMatch(/(?:chromium)[\s\/](\d+(?:\.\d+)?)/i)||versionIdentifier
}}
else if(/chrome|crios|crmo/i.test(ua)){
result={
name: 'Chrome'
, chrome: t
, version: getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i)
}}
else if(android){
result={
name: 'Android'
, version: versionIdentifier
}}
else if(/safari|applewebkit/i.test(ua)){
result={
name: 'Safari'
, safari: t
}
if(versionIdentifier){
result.version=versionIdentifier
}}
else if(iosdevice){
result={
name:iosdevice=='iphone' ? 'iPhone':iosdevice=='ipad' ? 'iPad':'iPod'
}
if(versionIdentifier){
result.version=versionIdentifier
}}
else if(/googlebot/i.test(ua)){
result={
name: 'Googlebot'
, googlebot: t
, version: getFirstMatch(/googlebot\/(\d+(\.\d+))/i)||versionIdentifier
}}else{
result={
name: getFirstMatch(/^(.*)\/(.*) /),
version: getSecondMatch(/^(.*)\/(.*) /)
};}
if(!result.msedge&&/(apple)?webkit/i.test(ua)){
if(/(apple)?webkit\/537\.36/i.test(ua)){
result.name=result.name||"Blink"
result.blink=t
}else{
result.name=result.name||"Webkit"
result.webkit=t
}
if(!result.version&&versionIdentifier){
result.version=versionIdentifier
}}else if(!result.opera&&/gecko\//i.test(ua)){
result.name=result.name||"Gecko"
result.gecko=t
result.version=result.version||getFirstMatch(/gecko\/(\d+(\.\d+)?)/i)
}
if(!result.msedge&&(android||result.silk)){
result.android=t
}else if(iosdevice){
result[iosdevice]=t
result.ios=t
}else if(mac){
result.mac=t
}else if(xbox){
result.xbox=t
}else if(windows){
result.windows=t
}else if(linux){
result.linux=t
}
var osVersion='';
if(result.windowsphone){
osVersion=getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i);
}else if(iosdevice){
osVersion=getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i);
osVersion=osVersion.replace(/[_\s]/g, '.');
}else if(android){
osVersion=getFirstMatch(/android[ \/-](\d+(\.\d+)*)/i);
}else if(result.webos){
osVersion=getFirstMatch(/(?:web|hpw)os\/(\d+(\.\d+)*)/i);
}else if(result.blackberry){
osVersion=getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i);
}else if(result.bada){
osVersion=getFirstMatch(/bada\/(\d+(\.\d+)*)/i);
}else if(result.tizen){
osVersion=getFirstMatch(/tizen[\/\s](\d+(\.\d+)*)/i);
}
if(osVersion){
result.osversion=osVersion;
}
var osMajorVersion=osVersion.split('.')[0];
if(tablet
|| nexusTablet
|| iosdevice=='ipad'
|| (android&&(osMajorVersion==3||(osMajorVersion >=4&&!mobile)))
|| result.silk
){
result.tablet=t
}else if(mobile
|| iosdevice=='iphone'
|| iosdevice=='ipod'
|| android
|| nexusMobile
|| result.blackberry
|| result.webos
|| result.bada
){
result.mobile=t
}
if(result.msedge ||
(result.msie&&result.version >=10) ||
(result.yandexbrowser&&result.version >=15) ||
(result.vivaldi&&result.version >=1.0) ||
(result.chrome&&result.version >=20) ||
(result.firefox&&result.version >=20.0) ||
(result.safari&&result.version >=6) ||
(result.opera&&result.version >=10.0) ||
(result.ios&&result.osversion&&result.osversion.split(".")[0] >=6) ||
(result.blackberry&&result.version >=10.1)
|| (result.chromium&&result.version >=20)
){
result.a=t;
}
else if((result.msie&&result.version < 10) ||
(result.chrome&&result.version < 20) ||
(result.firefox&&result.version < 20.0) ||
(result.safari&&result.version < 6) ||
(result.opera&&result.version < 10.0) ||
(result.ios&&result.osversion&&result.osversion.split(".")[0] < 6)
|| (result.chromium&&result.version < 20)
){
result.c=t
} else result.x=t
return result
}
var bowser=detect(typeof navigator!=='undefined' ? navigator.userAgent:'')
bowser.test=function (browserList){
for (var i=0; i < browserList.length; ++i){
var browserItem=browserList[i];
if(typeof browserItem==='string'){
if(browserItem in bowser){
return true;
}}
}
return false;
}
function getVersionPrecision(version){
return version.split(".").length;
}
function map(arr, iterator){
var result=[], i;
if(Array.prototype.map){
return Array.prototype.map.call(arr, iterator);
}
for (i=0; i < arr.length; i++){
result.push(iterator(arr[i]));
}
return result;
}
function compareVersions(versions){
var precision=Math.max(getVersionPrecision(versions[0]), getVersionPrecision(versions[1]));
var chunks=map(versions, function (version){
var delta=precision - getVersionPrecision(version);
version=version + new Array(delta + 1).join(".0");
return map(version.split("."), function (chunk){
return new Array(20 - chunk.length).join("0") + chunk;
}).reverse();
});
while (--precision >=0){
if(chunks[0][precision] > chunks[1][precision]){
return 1;
}
else if(chunks[0][precision]===chunks[1][precision]){
if(precision===0){
return 0;
}}else{
return -1;
}}
}
function isUnsupportedBrowser(minVersions, strictMode, ua){
var _bowser=bowser;
if(typeof strictMode==='string'){
ua=strictMode;
strictMode=void(0);
}
if(strictMode===void(0)){
strictMode=false;
}
if(ua){
_bowser=detect(ua);
}
var version="" + _bowser.version;
for (var browser in minVersions){
if(minVersions.hasOwnProperty(browser)){
if(_bowser[browser]){
return compareVersions([version, minVersions[browser]]) < 0;
}}
}
return strictMode;
}
function check(minVersions, strictMode, ua){
return !isUnsupportedBrowser(minVersions, strictMode, ua);
}
bowser.isUnsupportedBrowser=isUnsupportedBrowser;
bowser.compareVersions=compareVersions;
bowser.check=check;
bowser._detect=detect;
return bowser
});
(function($){
UABBTrigger={
triggerHook: function(hook, args){
$('body').trigger('uabb-trigger.' + hook, args);
},
addHook: function(hook, callback){
$('body').on('uabb-trigger.' + hook, callback);
},
removeHook: function(hook, callback){
$('body').off('uabb-trigger.' + hook, callback);
},
};})(jQuery);
jQuery(document).ready(function($){
if(typeof bowser!=='undefined'&&bowser!==null){
var uabb_browser=bowser.name,
uabb_browser_v=bowser.version,
uabb_browser_class=uabb_browser.replace(/\s+/g, '-').toLowerCase(),
uabb_browser_v_class=uabb_browser_class + parseInt(uabb_browser_v);
$('html').addClass(uabb_browser_class).addClass(uabb_browser_v_class);
}
$('.uabb-row-separator').parents('html').css('overflow-x', 'hidden');
});
;
(function($){
FLBuilderMenu=function(settings){
this.nodeId=settings.id;
this.nodeClass='.fl-node-' + settings.id;
this.wrapperClass=this.nodeClass + ' .fl-menu';
this.type=settings.type;
this.mobileToggle=settings.mobile;
this.mobileBelowRow=settings.mobileBelowRow;
this.mobileFlyout=settings.mobileFlyout;
this.breakPoints=settings.breakPoints;
this.mobileBreakpoint=settings.mobileBreakpoint;
this.currentBrowserWidth=$(window).width();
this.postId=settings.postId;
this.mobileStacked=settings.mobileStacked;
this.submenuIcon=settings.submenuIcon;
this.flyoutWidth=settings.flyoutWidth;
this._initMenu();
$(window).on('resize', $.proxy(function(){
var width=$(window).width();
if(width!=this.currentBrowserWidth){
this.currentBrowserWidth=width;
this._initMenu(true);
this._clickOrHover(true);
}
this._resizeFlyoutMenuPanel();
}, this) );
$(window).on('scroll', $.proxy(function(){
this._resizeFlyoutMenuPanel();
}, this) );
$(this.wrapperClass).on('keydown', '.fl-menu-mobile-toggle, .menu-item:first a:first', $.proxy(function(event){
if(event.key!=='Tab'||! this._isMenuToggle()||! this._isMobileBelowRowEnabled()){
return;
}
if(event.shiftKey&&$(event.currentTarget).is('a') ){
event.preventDefault();
$(this.wrapperClass).find('.fl-menu-mobile-toggle').trigger('focus');
}
else if(! event.shiftKey&&$(event.currentTarget).hasClass('fl-menu-mobile-toggle')&&$(event.currentTarget).hasClass('fl-active') ){
event.preventDefault();
$(this.wrapperClass).find('.menu-item:first a:first').trigger('focus');
}}, this) );
$(this.wrapperClass).on('focusout', $.proxy(function(event){
if($(this.wrapperClass + ' nav').has($(event.relatedTarget) ).length===0){
if(this.type==='accordion'){
this._toggleSubmenu($(event.target).parents('.fl-has-submenu:last'), false);
}else{
this._clickOrHover(true);
}
const mobileToggle=$(this.wrapperClass).find('.fl-menu-mobile-toggle');
if(this._isMenuToggle()&&mobileToggle.hasClass('fl-active')&&! $(event.relatedTarget).is(mobileToggle)&&'expanded'!==this.mobileToggle){
mobileToggle.trigger('click');
}}
}, this) );
};
FLBuilderMenu.prototype={
nodeClass:'',
wrapperClass: '',
type:'',
breakPoints:{},
$submenus:null,
_isMobile: function(){
return this.currentBrowserWidth <=this.breakPoints.small ? true:false;
},
_isMouseAvailable: function(){
return window.matchMedia("(pointer: fine) and (hover: hover)").matches;
},
_isMedium: function(){
return this.currentBrowserWidth <=this.breakPoints.medium ? true:false;
},
_isLarge: function(){
return this.currentBrowserWidth <=this.breakPoints.large ? true:false;
},
_isMenuToggle: function(){
if(( 'always'==this.mobileBreakpoint
||(this._isMobile()&&'mobile'==this.mobileBreakpoint)
||(this._isMedium()&&'medium-mobile'==this.mobileBreakpoint)
||(this._isLarge()&&'large-mobile'==this.mobileBreakpoint)
)&&($(this.wrapperClass).find('.fl-menu-mobile-toggle').is(':visible')||'expanded'==this.mobileToggle) ){
return true;
}
return false;
},
_initMenu: function(resized=false){
this._setupSubmenu();
if(! resized){
this._menuOnFocus();
this._menuOnClick();
this._menuOnEscape();
}
if($(this.nodeClass).length&&this.type=='horizontal'){
this._initMegaMenus();
}
if(this._isMenuToggle()||this.type=='accordion'){
$(this.wrapperClass).off('mouseenter mouseleave');
this._clickOrHover();
}else{
this._submenuOnRight();
this._submenuRowZindexFix();
}
if(this.mobileToggle!='expanded'){
this._toggleForMobile();
}
if($(this.wrapperClass).find('.fl-menu-search-item').length){
this._toggleMenuSearch();
}
if($(this.wrapperClass).find('.fl-menu-cart-item').length){
this._wooUpdateParams();
}},
_setupSubmenu: function(){
if(! this._isMouseAvailable()||this._isMenuToggle()||this.type==='accordion'){
$(this.wrapperClass).addClass('no-hover');
}else{
$(this.wrapperClass).removeClass('no-hover');
}},
_menuOnFocus: function(){
$(this.wrapperClass).on('focus', 'a, .fl-menu-toggle', $.proxy(function(event){
const focusedMenuItem=$(event.currentTarget).closest('.menu-item');
const blurredMenuItem=$(event.relatedTarget).closest('.menu-item');
if(focusedMenuItem.closest('ul').is(blurredMenuItem.closest('ul') )){
if(! focusedMenuItem.is(blurredMenuItem) ){
this._toggleSubmenu(blurredMenuItem, false);
}}
else if(focusedMenuItem.has(blurredMenuItem).length===blurredMenuItem.has(focusedMenuItem).length){
blurredMenuItem.parents('.fl-has-submenu').each(( _, parent)=> {
if(focusedMenuItem.closest('ul').is($(parent).closest('ul') )){
this._toggleSubmenu($(parent), false);
return false;
}});
}
else if(focusedMenuItem.has(blurredMenuItem).length){
if(this.type!=='accordion'&&this.submenuIcon==='none'){
this._toggleSubmenu(blurredMenuItem, false);
}}
}, this) );
},
_menuOnEscape: function(){
$(this.wrapperClass).on('keydown', $.proxy(function(event){
if(event.key!=='Escape') return;
const menuItem=$(event.target).closest('.menu-item');
const mobileToggle=$(this.wrapperClass).find('.fl-menu-mobile-toggle');
if(menuItem.length||$(event.target).hasClass('fl-menu-mobile-close') ){
if(menuItem.hasClass('fl-has-submenu')&&menuItem.find('.sub-menu:first').is(':visible') ){
this._toggleSubmenu(menuItem, false);
}else{
const parentMenuItem=menuItem.parents('.fl-has-submenu').not('.mega-menu.hide-heading, .mega-menu-disabled.hide-heading').first();
if(parentMenuItem.length===0&&this._isMenuToggle()&&mobileToggle.hasClass('fl-active') ){
mobileToggle.trigger('blur').trigger('focus');
}
else if(parentMenuItem.length!==0){
this._toggleSubmenu(parentMenuItem, false);
parentMenuItem.find('a:first').trigger('focus');
}}
}
else if($(event.target).hasClass('fl-menu-mobile-toggle')&&mobileToggle.hasClass('fl-active') ){
mobileToggle.trigger('blur').trigger('focus');
}}, this) );
},
_menuOnClick: function(){
$(this.wrapperClass).on('keydown', 'span.fl-menu-toggle', $.proxy(function(event){
if(event.key==='Enter'||event.key===' '){
event.preventDefault();
$(event.currentTarget).trigger('click');
}}, this) );
$(this.wrapperClass).on('click', 'a, .fl-menu-toggle', $.proxy(function(event){
event.stopPropagation();
if(this._isMouseAvailable()&&! this._isMenuToggle()&&event.detail&&this.type!=='accordion') return;
if($(event.currentTarget).is('a')&&(this.submenuIcon!=='none'||this.type==='accordion') ) return;
const menuItem=$(event.currentTarget).closest('.menu-item, .fl-menu-logo');
const menuLink=menuItem.find('a:first').attr('href');
const submenuHidden=menuItem.find('.sub-menu:first').is(':hidden');
if(typeof menuLink==='undefined'||menuLink==='#'||submenuHidden){
event.preventDefault();
}
if($(event.currentTarget).hasClass('fl-menu-toggle')||submenuHidden){
this._toggleSubmenu(menuItem, submenuHidden);
}}, this) );
},
_toggleSubmenu: function(menuItem, opened){
const togglingClass=this._isMenuToggle()||this.type==='accordion' ? 'fl-active':'focus';
const toggleElement=this.submenuIcon==='none' ? 'a':'.fl-menu-toggle';
const hiddenMenu='.mega-menu.hide-heading, .mega-menu-disabled.hide-heading';
if(opened&&menuItem.hasClass('fl-has-submenu')&&! menuItem.is(hiddenMenu) ){
menuItem.addClass(togglingClass);
menuItem.find(toggleElement).first().attr('aria-expanded', true);
if(this._isMenuToggle()||this.type==='accordion'){
menuItem.find('.sub-menu:first:hidden').slideDown();
}}else{
menuItem.parent().find('.menu-item').removeClass(togglingClass);
menuItem.parent().find('.fl-has-submenu').not(hiddenMenu).find(toggleElement).attr('aria-expanded', false);
if(this._isMenuToggle()||this.type==='accordion'){
menuItem.find('.sub-menu:visible').slideUp();
}}
},
_clickOrHover: function(clear=false){
const selector=this._isMobileBelowRowEnabled() ? this.nodeClass + '-clone':this.nodeClass;
this.$submenus=this.$submenus||$(selector).find('.sub-menu');
const className=this._isMenuToggle()||this.type==='accordion' ? 'fl-active':'focus';
const toggleElement=this.submenuIcon==='none' ? 'a':'.fl-menu-toggle';
const hiddenMenu='.mega-menu.hide-heading, .mega-menu-disabled.hide-heading';
$(selector).find('.fl-has-submenu').not(hiddenMenu).each(function(){
if(clear||! $(this).hasClass(className) ){
if(clear) $(this).removeClass(className);
$(this).find(toggleElement + ':first').attr('aria-expanded', false);
if(className==='fl-active'){
$(this).find('.sub-menu').fadeOut();
}else if(className==='focus'){
$(this).find('.sub-menu').css({
'display':'',
'opacity':''
});
}}
});
},
_submenuOnRight: function(){
$(this.wrapperClass)
.on('mouseenter focus', '.fl-has-submenu', $.proxy(function(e){
if($(e.currentTarget).find('.sub-menu').length===0){
return;
}
var $link=$(e.currentTarget),
$parent=$link.parent(),
$subMenu=$link.find('.sub-menu'),
subMenuWidth=$subMenu.width(),
subMenuPos=0,
bodyWidth=$('body').width();
if($link.closest('.fl-menu-submenu-right').length!==0){
$link.addClass('fl-menu-submenu-right');
}else if($('body').hasClass('rtl') ){
subMenuPos=$parent.is('.sub-menu') ?
$parent.offset().left - subMenuWidth:
$link.offset().left - $link.width() - subMenuWidth;
if(subMenuPos <=0){
$link.addClass('fl-menu-submenu-right');
}}else{
subMenuPos=$parent.is('.sub-menu') ?
$parent.offset().left + $parent.width() + subMenuWidth :
$link.offset().left + $link.width() + subMenuWidth;
if(subMenuPos > bodyWidth){
$link.addClass('fl-menu-submenu-right');
}}
}, this) )
.on('mouseleave', '.fl-has-submenu', $.proxy(function(e){
$(e.currentTarget).removeClass('fl-menu-submenu-right');
}, this) );
},
_submenuRowZindexFix: function(){
$(this.wrapperClass)
.on('mouseenter', 'ul.menu > .fl-has-submenu', $.proxy(function(e){
if($(e.currentTarget).find('.sub-menu').length===0){
return;
}
$(this.nodeClass)
.closest('.fl-row')
.find('.fl-row-content')
.css('z-index', '10');
}, this) )
.on('mouseleave', 'ul.menu > .fl-has-submenu', $.proxy(function(){
$(this.nodeClass)
.closest('.fl-row')
.find('.fl-row-content')
.css('z-index', '');
}, this) );
},
_toggleForMobile: function(){
var $wrapper=null,
$menu=null,
self=this;
$(this.wrapperClass).find('.fl-menu-mobile-toggle').attr('aria-controls', $(this.wrapperClass).find('ul.menu').attr('id'));
if(this._isMenuToggle()){
if(this._isMobileBelowRowEnabled()){
this._placeMobileMenuBelowRow();
$wrapper=$(this.wrapperClass);
$menu=$(this.nodeClass + '-clone');
$menu.find('ul.menu').show();
}else{
$wrapper=$(this.wrapperClass);
$menu=$wrapper.find('.menu');
}
if(!$wrapper.find('.fl-menu-mobile-toggle').hasClass('fl-active')&&! self.mobileFlyout){
$menu.css({ display: 'none' });
}
if(self.mobileFlyout){
this._initFlyoutMenu();
}
$wrapper.on('click', '.fl-menu-mobile-toggle', function(e){
e.stopImmediatePropagation();
$(this).toggleClass('fl-active');
if(self.mobileFlyout){
self._toggleFlyoutMenu();
const flyoutWrapper=$('.fl-menu-mobile-flyout');
if($(this).hasClass('fl-active') ){
flyoutWrapper.attr('aria-hidden', false);
flyoutWrapper.find('a[href], button, input, select, textarea, span.fl-menu-toggle, [tabindex="-1"]').attr('tabindex', 0);
}else{
flyoutWrapper.attr('aria-hidden', true);
flyoutWrapper.find('a[href], button, input, select, textarea, span.fl-menu-toggle, [tabindex]:not([tabindex="-1"])').attr('tabindex', -1);
}}else{
var targetMenu=null;
if(self.mobileBelowRow){
var $closestCol=$(this).parents('.fl-col, .fl-module-box'),
$closestColGroup=$closestCol.length ? $closestCol.parent('.fl-col-group'):null;
targetMenu=$closestCol.length ? $closestCol.last().next('.fl-menu-mobile-clone'):null;
if($closestColGroup.length){
if($closestColGroup.hasClass('fl-col-group-responsive-reversed') ){
$closestColGroup.find('.fl-menu-mobile-clone').css('order', -1);
}else if($closestColGroup){
$closestColGroup.find('.fl-menu-mobile-clone').css('order', 2);
}}
}else{
targetMenu=$(this).closest('.fl-menu').find('ul.menu');
}
if(targetMenu.length){
$menu=$(targetMenu);
}
$menu.slideToggle();
}
e.stopPropagation();
});
$menu.off().on('click', '.menu-item > a[href*="#"]:not([href="#"])', function(){
var $href=$(this).attr('href'),
$targetID=$href.split('#')[1],
element=$('#' + $targetID);
if($('body').find(element).length > 0){
$(this).toggleClass('fl-active');
FLBuilderLayout._scrollToElement(element);
if(! self._isMenuToggle()){
$menu.slideToggle();
}}
});
}else{
if(this._isMobileBelowRowEnabled()){
this._removeMenuFromBelowRow();
}
$wrapper=$(this.wrapperClass),
$menu=$wrapper.find('ul.menu');
$wrapper.find('.fl-menu-mobile-toggle').removeClass('fl-active');
$menu.css({ display: '' });
if(! this._isMobileBelowRowEnabled()){
$menu.off('click', '.menu-item > a[href*="#"]:not([href="#"])');
}
if(this.mobileFlyout&&$wrapper.find('.fl-menu-mobile-flyout').length > 0){
$('body').css('margin', '');
$('.fl-builder-ui-pinned-content-transform').css('transform', '');
$menu.unwrap();
$wrapper.find('.fl-menu-mobile-close').remove();
$wrapper.find('.fl-menu-mobile-opacity').remove();
}}
},
_initMegaMenus: function(){
var module=$(this.nodeClass),
rowContent=module.closest('.fl-row-content'),
rowWidth=rowContent.width(),
megas=module.find('.mega-menu'),
disabled=module.find('.mega-menu-disabled'),
isToggle=this._isMenuToggle();
if(isToggle){
megas.removeClass('mega-menu').addClass('mega-menu-disabled');
module.find('li.mega-menu-disabled > ul.sub-menu').css('width', '');
rowContent.css('position', '');
}else{
disabled.removeClass('mega-menu-disabled').addClass('mega-menu');
module.find('li.mega-menu > ul.sub-menu').css('width', rowWidth + 'px');
rowContent.css('position', 'relative');
}},
_isMobileBelowRowEnabled: function(){
return this.mobileBelowRow&&($(this.nodeClass).parents('.fl-col, .fl-module-box').length);
},
_placeMobileMenuBelowRow: function(){
if($(this.nodeClass + '-clone').length){
return;
}
var module=$(this.nodeClass),
clone=null,
col=module.parents('.fl-col, .fl-module-box').last();
if(module.length < 1){
return;
}
clone=(module.length > 1) ? $(module[0]).clone():module.clone();
module.find('ul.menu').remove();
clone.addClass(( this.nodeClass + '-clone').replace('.', '') );
clone.addClass('fl-menu-mobile-clone');
clone.find('.fl-menu-mobile-toggle').remove();
col.after(clone);
if(module.hasClass('fl-animation') ){
clone.removeClass('fl-animation');
}
this._menuOnFocus();
this._menuOnClick();
this._menuOnEscape();
},
_removeMenuFromBelowRow: function(){
if(! $(this.nodeClass + '-clone').length){
return;
}
var module=$(this.nodeClass),
clone=$(this.nodeClass + '-clone'),
menu=clone.find('ul.menu'),
nav=module.find('nav');
if(nav.length){
nav.append(menu);
}else{
module.find('.fl-menu-mobile-toggle').after(menu);
}
clone.remove();
menu.find('a').each(FLBuilderLayout._initAnchorLink);
},
_initFlyoutMenu: function(){
var wrapper=$(this.wrapperClass),
menu=wrapper.find('ul.menu'),
button=wrapper.find('.fl-menu-mobile-toggle');
if(0===wrapper.find('.fl-menu-mobile-flyout').length){
menu.wrap('<div class="fl-menu-mobile-flyout" aria-hidden="true"></div>');
}
if(0===wrapper.find('.fl-menu-mobile-close').length){
var close=window.fl_responsive_close||'Close'
wrapper.find('.fl-menu-mobile-flyout').prepend('<button class="fl-menu-mobile-close fl-content-ui-button" aria-label="' + close + '"><i class="fas fa-times"></i></button>');
}
if(wrapper.hasClass('fl-menu-responsive-flyout-push-opacity')&&0===wrapper.find('.fl-menu-mobile-opacity').length){
wrapper.append('<div class="fl-menu-mobile-opacity"></div>');
}
wrapper.off('click', '.fl-menu-mobile-opacity, .fl-menu-mobile-close').on('click', '.fl-menu-mobile-opacity, .fl-menu-mobile-close', function(e){
button.trigger('focus').trigger('click');
e.stopPropagation();
});
if('undefined'!==typeof FLBuilder){
FLBuilder.addHook('restartEditingSession', function(){
$('.fl-builder-ui-pinned-content-transform').css('transform', '');
if(button.hasClass('fl-active') ){
button.trigger('click');
}});
}
$('.fl-menu-mobile-flyout').find('a[href], button, input, select, textarea, span.fl-menu-toggle, [tabindex]:not([tabindex="-1"])').attr('tabindex', -1);
},
_toggleFlyoutMenu: function(){
var wrapper=$(this.wrapperClass),
button=wrapper.find('.fl-menu-mobile-toggle'),
position=wrapper.hasClass('fl-flyout-right') ? 'right':'left',
pushMenu=wrapper.hasClass('fl-menu-responsive-flyout-push')||wrapper.hasClass('fl-menu-responsive-flyout-push-opacity'),
opacity=wrapper.find('.fl-menu-mobile-opacity'),
marginPos={},
fixedPos={},
fixedHeader=$('header, header > div');
this._resizeFlyoutMenuPanel();
if($('.fl-builder-ui-pinned-content-transform').length > 0&&! $('body').hasClass('fl-builder-edit') ){
$('.fl-builder-ui-pinned-content-transform').css('transform', 'none');
}
if(pushMenu){
marginPos[ 'margin-' + position ]=button.hasClass('fl-active') ? this.flyoutWidth + 'px':'0px';
$('body').animate(marginPos, 200);
if(fixedHeader.length > 0){
fixedPos[ position]=button.hasClass('fl-active') ? this.flyoutWidth + 'px':'0px';
fixedHeader.each(function(){
if('fixed'==$(this).css('position') ){
$(this).css({ 'transition':'none' });
$(this).animate(fixedPos, 200);
}});
}}
if(opacity.length > 0&&button.hasClass('fl-active') ){
opacity.show();
}else{
opacity.hide();
}},
_resizeFlyoutMenuPanel: function(){
const wrapper=$(this.wrapperClass);
const wrapFlyout=wrapper.find('.fl-menu-mobile-flyout');
if(wrapFlyout.length > 0){
wrapFlyout.css(this._getFlyoutMenuPanelPosition());
}},
_getFlyoutMenuPanelPosition: function(){
var wrapper=$(this.wrapperClass),
button=wrapper.find('.fl-menu-mobile-toggle'),
side=wrapper.hasClass('fl-flyout-right') ? 'right':'left',
winHeight=$(window).outerHeight(),
winTop=$(window).scrollTop(),
adminBarHeight=$('#wpadminbar').length ? $('#wpadminbar').height():0,
flyoutPosition={};
flyoutPosition[ side ]='-' +(parseInt(this.flyoutWidth) + 15) + 'px';
if(! button.hasClass('fl-active') ){
return flyoutPosition;
}
flyoutPosition[ side ]='0px';
flyoutPosition[ 'height' ]=winHeight + 'px';
flyoutPosition[ 'top' ]='0px';
if(adminBarHeight > 0){
const diff=adminBarHeight - winTop;
flyoutPosition[ 'top' ]=diff <=0 ? '0px':(diff) + 'px';
}
return flyoutPosition;
},
_toggleMenuSearch: function(){
var wrapper=$(this.wrapperClass).find('.fl-menu-search-item'),
button=wrapper.find('.fl-button:is(a, button)'),
form=wrapper.find('.fl-search-form-input-wrap'),
self=this;
button.attr('tabindex', 0);
button.attr('aria-label', 'Search');
button.on('click', function(e){
e.preventDefault();
if(form.is(':visible')){
form.stop().fadeOut(200);
}else{
form.stop().fadeIn(200);
$('body').on('click.fl-menu-search', $.proxy(self._hideMenuSearch, self));
form.find('.fl-search-text').focus();
}});
},
_hideMenuSearch: function(e){
var form=$(this.wrapperClass).find('.fl-search-form-input-wrap');
if(e!==undefined){
if($(e.target).closest('.fl-menu-search-item').length > 0){
return;
}}
form.stop().fadeOut(200);
$('body').off('click.fl-menu-search');
},
_wooUpdateParams: function(){
if('undefined'!==typeof wc_cart_fragments_params){
wc_cart_fragments_params.wc_ajax_url +='&fl-menu-node='+ this.nodeId +'&post-id='+ this.postId;
}
if('undefined'!==typeof wc_add_to_cart_params){
wc_add_to_cart_params.wc_ajax_url +='&fl-menu-node='+ this.nodeId +'&post-id='+ this.postId;
}},
};})(jQuery);
(function($){
$(function(){
new FLBuilderMenu({
id: '609c9b8d43ce7',
type: 'horizontal',
mobile: 'hamburger',
mobileBelowRow: false,
mobileFlyout: false,
breakPoints: {
large: 1200,
medium: 992,
small: 768			},
mobileBreakpoint: 'mobile',
postId:'4058',
mobileStacked: true,
submenuIcon: 'none',
flyoutWidth: '250',
});
});
})(jQuery);