PageSourceSearch

https://theduckinnchicago.com/contact/files/stacks_page_page12.js?rwcache=797635386

js theduckinnchicago.com collected 2026-09-26 01:02:27 UTC 116,367 bytes, 2,164 lines download raw bytes

vendor: 7,199 bytes, lines 1-2
1/*! jQuery Migrate v1.2.1 | (c) 2005, 2013 jQuery Foundation, Inc. and other contributors | jquery.org/license */
2jQuery.migrateMute===void 0&&(jQuery.migrateMute=!0),function(e,t,n){function r(n){var r=t.console;i[n]||(i[n]=!0,e.migrateWarnings.push(n),r&&r.warn&&!e.migrateMute&&(r.warn("JQMIGRATE: "+n),e.migrateTrace&&r.trace&&r.trace()))}function a(t,a,i,o){if(Object.defineProperty)try{return Object.defineProperty(t,a,{configurable:!0,enumerable:!0,get:function(){return r(o),i},set:function(e){r(o),i=e}}),n}catch(s){}e._definePropertyBroken=!0,t[a]=i}var i={};e.migrateWarnings=[],!e.migrateMute&&t.console&&t.console.log&&t.console.log("JQMIGRATE: Logging is active"),e.migrateTrace===n&&(e.migrateTrace=!0),e.migrateReset=function(){i={},e.migrateWarnings.length=0},"BackCompat"===document.compatMode&&r("jQuery is not compatible with Quirks Mode");var o=e("<input/>",{size:1}).attr("size")&&e.attrFn,s=e.attr,u=e.attrHooks.value&&e.attrHooks.value.get||function(){return null},c=e.attrHooks.value&&e.attrHooks.value.set||function(){return n},l=/^(?:input|button)$/i,d=/^[238]$/,p=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,f=/^(?:checked|selected)$/i;a(e,"attrFn",o||{},"jQuery.attrFn is deprecated"),e.attr=function(t,a,i,u){var c=a.toLowerCase(),g=t&&t.nodeType;return u&&(4>s.length&&r("jQuery.fn.attr( props, pass ) is deprecated"),t&&!d.test(g)&&(o?a in o:e.isFunction(e.fn[a])))?e(t)[a](i):("type"===a&&i!==n&&l.test(t.nodeName)&&t.parentNode&&r("Can't change the 'type' of an input or button in IE 6/7/8"),!e.attrHooks[c]&&p.test(c)&&(e.attrHooks[c]={get:function(t,r){var a,i=e.prop(t,r);return i===!0||"boolean"!=typeof i&&(a=t.getAttributeNode(r))&&a.nodeValue!==!1?r.toLowerCase():n},set:function(t,n,r){var a;return n===!1?e.removeAttr(t,r):(a=e.propFix[r]||r,a in t&&(t[a]=!0),t.setAttribute(r,r.toLowerCase())),r}},f.test(c)&&r("jQuery.fn.attr('"+c+"') may use property instead of attribute")),s.call(e,t,a,i))},e.attrHooks.value={get:function(e,t){var n=(e.nodeName||"").toLowerCase();return"button"===n?u.apply(this,arguments):("input"!==n&&"option"!==n&&r("jQuery.fn.attr('value') no longer gets properties"),t in e?e.value:null)},set:function(e,t){var a=(e.nodeName||"").toLowerCase();return"button"===a?c.apply(this,arguments):("input"!==a&&"option"!==a&&r("jQuery.fn.attr('value', val) no longer sets properties"),e.value=t,n)}};var g,h,v=e.fn.init,m=e.parseJSON,y=/^([^<]*)(<[\w\W]+>)([^>]*)$/;e.fn.init=function(t,n,a){var i;return t&&"string"==typeof t&&!e.isPlainObject(n)&&(i=y.exec(e.trim(t)))&&i[0]&&("<"!==t.charAt(0)&&r("$(html) HTML strings must start with '<' character"),i[3]&&r("$(html) HTML text after last tag is ignored"),"#"===i[0].charAt(0)&&(r("HTML string cannot start with a '#' character"),e.error("JQMIGRATE: Invalid selector string (XSS)")),n&&n.context&&(n=n.context),e.parseHTML)?v.call(this,e.parseHTML(i[2],n,!0),n,a):v.apply(this,arguments)},e.fn.init.prototype=e.fn,e.parseJSON=function(e){return e||null===e?m.apply(this,arguments):(r("jQuery.parseJSON requires a valid JSON string"),null)},e.uaMatch=function(e){e=e.toLowerCase();var t=/(chrome)[ \/]([\w.]+)/.exec(e)||/(webkit)[ \/]([\w.]+)/.exec(e)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(e)||/(msie) ([\w.]+)/.exec(e)||0>e.indexOf("compatible")&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(e)||[];return{browser:t[1]||"",version:t[2]||"0"}},e.browser||(g=e.uaMatch(navigator.userAgent),h={},g.browser&&(h[g.browser]=!0,h.version=g.version),h.chrome?h.webkit=!0:h.webkit&&(h.safari=!0),e.browser=h),a(e,"browser",e.browser,"jQuery.browser is deprecated"),e.sub=function(){function t(e,n){return new t.fn.init(e,n)}e.extend(!0,t,this),t.superclass=this,t.fn=t.prototype=this(),t.fn.constructor=t,t.sub=this.sub,t.fn.init=function(r,a){return a&&a instanceof e&&!(a instanceof t)&&(a=t(a)),e.fn.init.call(this,r,a,n)},t.fn.init.prototype=t.fn;var n=t(document);return r("jQuery.sub() is deprecated"),t},e.ajaxSetup({converters:{"text json":e.parseJSON}});var b=e.fn.data;e.fn.data=function(t){var a,i,o=this[0];return!o||"events"!==t||1!==arguments.length||(a=e.data(o,t),i=e._data(o,t),a!==n&&a!==i||i===n)?b.apply(this,arguments):(r("Use of jQuery.fn.data('events') is deprecated"),i)};var j=/\/(java|ecma)script/i,w=e.fn.andSelf||e.fn.addBack;e.fn.andSelf=function(){return r("jQuery.fn.andSelf() replaced by jQuery.fn.addBack()"),w.apply(this,arguments)},e.clean||(e.clean=function(t,a,i,o){a=a||document,a=!a.nodeType&&a[0]||a,a=a.ownerDocument||a,r("jQuery.clean() is deprecated");var s,u,c,l,d=[];if(e.merge(d,e.buildFragment(t,a).childNodes),i)for(c=function(e){return!e.type||j.test(e.type)?o?o.push(e.parentNode?e.parentNode.removeChild(e):e):i.appendChild(e):n},s=0;null!=(u=d[s]);s++)e.nodeName(u,"script")&&c(u)||(i.appendChild(u),u.getElementsByTagName!==n&&(l=e.grep(e.merge([],u.getElementsByTagName("script")),c),d.splice.apply(d,[s+1,0].concat(l)),s+=l.length));return d});var Q=e.event.add,x=e.event.remove,k=e.event.trigger,N=e.fn.toggle,T=e.fn.live,M=e.fn.die,S="ajaxStart|ajaxStop|ajaxSend|ajaxComplete|ajaxError|ajaxSuccess",C=RegExp("\\b(?:"+S+")\\b"),H=/(?:^|\s)hover(\.\S+|)\b/,A=function(t){return"string"!=typeof t||e.event.special.hover?t:(H.test(t)&&r("'hover' pseudo-event is deprecated, use 'mouseenter mouseleave'"),t&&t.replace(H,"mouseenter$1 mouseleave$1"))};e.event.props&&"attrChange"!==e.event.props[0]&&e.event.props.unshift("attrChange","attrName","relatedNode","srcElement"),e.event.dispatch&&a(e.event,"handle",e.event.dispatch,"jQuery.event.handle is undocumented and deprecated"),e.event.add=function(e,t,n,a,i){e!==document&&C.test(t)&&r("AJAX events should be attached to document: "+t),Q.call(this,e,A(t||""),n,a,i)},e.event.remove=function(e,t,n,r,a){x.call(this,e,A(t)||"",n,r,a)},e.fn.error=function(){var e=Array.prototype.slice.call(arguments,0);return r("jQuery.fn.error() is deprecated"),e.splice(0,0,"error"),arguments.length?this.bind.apply(this,e):(this.triggerHandler.apply(this,e),this)},e.fn.toggle=function(t,n){if(!e.isFunction(t)||!e.isFunction(n))return N.apply(this,arguments);r("jQuery.fn.toggle(handler, handler...) is deprecated");var a=arguments,i=t.guid||e.guid++,o=0,s=function(n){var r=(e._data(this,"lastToggle"+t.guid)||0)%o;return e._data(this,"lastToggle"+t.guid,r+1),n.preventDefault(),a[r].apply(this,arguments)||!1};for(s.guid=i;a.length>o;)a[o++].guid=i;return this.click(s)},e.fn.live=function(t,n,a){return r("jQuery.fn.live() is deprecated"),T?T.apply(this,arguments):(e(this.context).on(t,this.selector,n,a),this)},e.fn.die=function(t,n){return r("jQuery.fn.die() is deprecated"),M?M.apply(this,arguments):(e(this.context).off(t,this.selector||"**",n),this)},e.event.trigger=function(e,t,n,a){return n||C.test(e)||r("Global events are undocumented and deprecated"),k.call(this,e,t,n||document,a)},e.each(S.split("|"),function(t,n){e.event.special[n]={setup:function(){var t=this;return t!==document&&(e.event.add(document,n+"."+e.guid,function(){e.event.trigger(n,null,t,!0)}),e._data(this,n,e.guid++)),!1},teardown:function(){return this!==document&&e.event.remove(document,n+"."+e._data(this,n)),!1}}})}(jQuery,window);
2
3var stacks = {};
4stacks.jQuery = jQuery.noConflict(true);
5stacks.com_bigwhiteduck_stacks_dropem = {};
6stacks.com_bigwhiteduck_stacks_dropem = (function(stack) {
7var jQuery = stacks.jQuery;var $ = jQuery;(function(window,document,undefined){'use strict';(function(factory){if(typeof define==='function'&&define.amd){define(['jquery'],factory);}else if(typeof exports==='object'){module.exports=factory(require('jquery'));}else{factory(stacks.jQuery);}}(function($){var pluginName='popDrop';var pluginClass='popdrop-popover';var pluginType='webui.popover';var defaults={uniqueID:'stack',parent:$('.pop-launcher'),placement:'auto',mobplacement:'auto',mobBP:'640',bias:'',container:null,width:'auto',maxWidth:1000,height:'auto',modal:false,trigger:'click',closeOnClick:false,style:'',delay:{show:null,hide:300},async:{type:'GET',before:null,success:null,error:null},cache:true,multi:false,arrow:true,title:'',allowListTitles:false,content:'',closeable:false,padding:true,url:'',type:'html',direction:'',animation:null,template:'<div class="popdrop-popover">'+'<div class="popdrop-arrow"></div>'+'<div class="popdrop-popover-inner">'+'<a href="#" class="popdrop-close"></a>'+'<h3 class="popdrop-popover-title"></h3>'+'<div class="popdrop-popover-content"><i class="icon-refresh"></i> <p>&nbsp;</p></div>'+'</div>'+'</div>',backdrop:false,dismissible:true,onShow:null,onHide:null,abortXHR:true,autoHide:false,offsetTop:0,offsetLeft:0,iframeOptions:{frameborder:'0',allowtransparency:'true',id:'',name:'',scrolling:'',onload:'',height:'',width:''},hideEmpty:false};var rtlClass=pluginClass+'-rtl';var _srcElements=[];var backdrop=$('<div class="popdrop-popover-backdrop"></div>');var _globalIdSeed=0;var _isBodyEventHandled=false;var _offsetOut=-2000;var $document=$(document);var toNumber=function(numeric,fallback){return isNaN(numeric)?(fallback||0):Number(numeric);};var getPopFromElement=function($element){return $element.data('plugin_'+pluginName);};var hideAllPop=function(){var pop=null;for(var i=0;i<_srcElements.length;i++){pop=getPopFromElement(_srcElements[i]);if(pop){pop.hide(true);}}
8$document.trigger('hiddenAll.'+pluginType);};var isMobile=('ontouchstart'in document.documentElement)&&(/Mobi/.test(navigator.userAgent));var pointerEventToXY=function(e){var out={x:0,y:0};if(e.type==='touchstart'||e.type==='touchmove'||e.type==='touchend'||e.type==='touchcancel'){var touch=e.originalEvent.touches[0]||e.originalEvent.changedTouches[0];out.x=touch.pageX;out.y=touch.pageY;}else if(e.type==='mousedown'||e.type==='mouseup'||e.type==='click'){out.x=e.pageX;out.y=e.pageY;}
9return out;};function WebuiPopover(element,options){this.$element=$(element);if(options){if($.type(options.delay)==='string'||$.type(options.delay)==='number'){options.delay={show:options.delay,hide:options.delay};}}
10this.options=$.extend({},defaults,options);this._defaults=defaults;this._name=pluginName;this._targetclick=false;this.init();_srcElements.push(this.$element);}
11WebuiPopover.prototype={init:function(){if(this.options.hidemob&&isMobile){return false;}
12if(this.getTrigger()!=='manual'){if(this.getTrigger()==='click'||isMobile){this.$element.off('click touchend').on('click touchend',$.proxy(this.toggle,this));}else if(this.getTrigger()==='hover'){this.$element.off('mouseenter mouseleave click').on('mouseenter',$.proxy(this.mouseenterHandler,this)).on('mouseleave',$.proxy(this.mouseleaveHandler,this));}}
13this._poped=false;this._inited=true;this._opened=false;this._idSeed=_globalIdSeed;this.options.container=$(this.options.container||document.body).first();if(isMobile){$('html').addClass('popdrop-touch');}
14if(this.options.backdrop){backdrop.appendTo(this.options.container).hide();}
15_globalIdSeed++;if(this.getTrigger()==='sticky'){this.show();}},destroy:function(){var index=-1;for(var i=0;i<_srcElements.length;i++){if(_srcElements[i]===this.$element){index=i;break;}}
16_srcElements.splice(index,1);this.hide();this.$element.data('plugin_'+pluginName,null);if(this.getTrigger()==='click'){this.$element.off('click');}else if(this.getTrigger()==='hover'){this.$element.off('mouseenter mouseleave');}
17if(this.$target){this.$target.remove();}},hide:function(force,event){if(!force&&this.getTrigger()==='sticky'){return;}
18if(!this._opened){return;}
19if(event){event.preventDefault();event.stopPropagation();}
20if(this.xhr&&this.options.abortXHR===true){this.xhr.abort();this.xhr=null;}
21var e=$.Event('hide.'+pluginType);this.$element.trigger(e,[this.$target]);if(this.$target){this.$target.removeClass('in').addClass(this.getHideAnimation());var that=this;setTimeout(function(){that.$target.hide();if(!that.getCache()){that.$target.remove();}},that.getHideDelay());}
22if(this.options.backdrop){backdrop.hide();}
23this._opened=false;$('html').removeClass('popdrop-open');this.options.parent.removeClass('popdrop-open');if(this.options.modal){$('html').removeClass('popdrop-modal').removeClass('pop-drop-'+this.options.uniqueID);}
24this.$element.trigger('hidden.'+pluginType,[this.$target]);if(this.options.onHide){this.options.onHide(this.$target);}
25if(!this.options.multi){this.hideAll();}},resetAutoHide:function(){var that=this;var autoHide=that.getAutoHide();if(autoHide){if(that.autoHideHandler){clearTimeout(that.autoHideHandler);}
26that.autoHideHandler=setTimeout(function(){that.hide();},autoHide);}},toggle:function(e){if(e){e.preventDefault();e.stopPropagation();}
27this[this.getTarget().hasClass('in')?'hide':'show']();},hideAll:function(){hideAllPop();},show:function(){if(this._opened){return;}
28var
29$target=this.getTarget().removeClass().addClass(pluginClass).addClass(this._customTargetClass);if(!this.options.multi){this.hideAll();}
30if(!this.getCache()||!this._poped||this.content===''){this.content='';if(!this.options.closeable){$target.find('.popdrop-close').off('click').remove();}
31if(!this.isAsync()){this.setContent(this.getContent());}else{this.setContentASync(this.options.content);}
32if(this.canEmptyHide()&&this.content===''){return;}
33this.setTitle(this.getTitle());$target.show();}
34this.displayContent();if(this.options.onShow){this.options.onShow($target);}
35this.bindBodyEvents();if(this.options.backdrop){backdrop.show();}
36this._opened=true;$('html').addClass('popdrop-open');this.options.parent.addClass('popdrop-open');$('>div',this.options.parent).removeClass('is-fresh');if(this.options.modal){$('html').addClass('popdrop-modal').addClass('pop-drop-'+this.options.uniqueID);var overflowContent=$target.find('.popdrop-popover-content'),titleSize=($target.find('.popdrop-popover-title')).outerHeight()||0,topmargin=parseInt($target.css('margin-top'))||0,adjust=(topmargin*2)+titleSize;overflowContent.css({'max-height':'calc(100vh - '+adjust+'px)'});}
37this.resetAutoHide();},isFixed:function(el){var fixedParent=false;el.parents().filter(function(){fixedParent=$(this).css('position')=='fixed'?true:fixedParent;});return fixedParent;},displayContent:function(){var
38elementPos=this.getElementPosition(),$target=this.getTarget().removeClass().addClass(pluginClass).addClass(this._customTargetClass),$targetContent=this.getContentElement(),targetWidth=$target[0].offsetWidth,targetHeight=$target[0].offsetHeight,placement='bottom',e=$.Event('show.'+pluginType);if(this.canEmptyHide()){var content=$targetContent.children().html();if(content!==null&&content.trim().length===0){return;}}
39this.$element.trigger(e,[$target]);var optWidth=this.$element.data('width')||this.options.width;if(optWidth===''){optWidth=this._defaults.width;}
40if(optWidth!=='auto'){$target.width(optWidth);}
41if(optWidth==='mega'){var win=$(window).width();if(win>=this.options.maxWidth){$target.width(this.options.maxWidth);}else{$target.width($(window).width());}}
42if(optWidth==='contained'){$target.width(this.$element.outerWidth());}
43var optHeight=this.$element.data('height')||this.options.height;if(optHeight===''){optHeight=this._defaults.height;}
44if(optHeight!=='auto'){$targetContent.height(optHeight);}
45if(this.options.style){this.$target.addClass(pluginClass+'-'+this.options.style);}
46if(this.options.direction==='rtl'&&!$targetContent.hasClass(rtlClass)){$targetContent.addClass(rtlClass);}
47if(!this.options.arrow){$target.find('.popdrop-arrow').remove();}
48$target.detach().css({top:_offsetOut,left:_offsetOut,display:'block'});if(this.getAnimation()){$target.addClass(this.getAnimation());}
49$target.appendTo(this.options.container);placement=this.getPlacement(elementPos);this.$element.trigger('added.'+pluginType);this.initTargetEvents();if(!this.options.padding){if(this.options.height!=='auto'){$targetContent.css('height',$targetContent.outerHeight());}
50this.$target.addClass('popdrop-no-padding');}
51targetWidth=$target[0].offsetWidth;targetHeight=$target[0].offsetHeight;var postionInfo=this.getTargetPositin(elementPos,placement,targetWidth,targetHeight);this.$target.css(postionInfo.position).addClass(placement).addClass('in');if(this.isFixed(this.$element)||this.options.modal){this.$element.addClass('popdrop-fixed');this.$target.css('position','fixed');}
52if(this.options.type==='iframe'){var $iframe=$target.find('iframe');var iframeWidth=$target.width();var iframeHeight=$iframe.parent().height();if(this.options.iframeOptions.width!==''&&this.options.iframeOptions.width!=='auto'){iframeWidth=this.options.iframeOptions.width;}
53if(this.options.iframeOptions.height!==''&&this.options.iframeOptions.height!=='auto'){iframeHeight=this.options.iframeOptions.height;}
54$iframe.width(iframeWidth).height(iframeHeight);}
55if(!this.options.arrow){this.$target.css({'margin':0});}
56if(this.options.arrow){var $arrow=this.$target.find('.popdrop-arrow');$arrow.removeAttr('style');if(placement==='left'||placement==='right'){$arrow.css({top:this.$target.height()/2});}else if(placement==='top'||placement==='bottom'){$arrow.css({left:this.$target.width()/2});}
57if(this.options.modal){$arrow.hide();}
58if(postionInfo.arrowOffset){if(postionInfo.arrowOffset.left===-1||postionInfo.arrowOffset.top===-1){$arrow.hide();}else{$arrow.css(postionInfo.arrowOffset);}}
59var optWidth=this.$element.data('width')||this.options.width;if(optWidth==='mega'){var win=$(window).width(),targetOffset=win>this.options.maxWidth?(win-this.options.maxWidth)/2:0;$arrow.css({left:this.$element.offset().left+(this.$element.outerWidth()/2)-targetOffset});}}
60this._poped=true;this.$element.trigger('shown.'+pluginType,[this.$target]);},isTargetLoaded:function(){return this.getTarget().find('i.glyphicon-refresh').length===0;},getTriggerElement:function(){return this.$element;},getTarget:function(){if(!this.$target){var id=pluginName+this._idSeed;this.$target=$(this.options.template).attr('id',id).attr('data-pop-source',this.options.uniqueID).data('trigger-element',this.getTriggerElement());this._customTargetClass=this.$target.attr('class')!==pluginClass?this.$target.attr('class'):null;this.getTriggerElement().attr('data-target',id);}
61return this.$target;},getTitleElement:function(){return this.getTarget().find('.'+pluginClass+'-title');},getContentElement:function(){if(!this.$contentElement){this.$contentElement=this.getTarget().find('.'+pluginClass+'-content');}
62return this.$contentElement;},getTitle:function(){return this.$element.attr('data-title')||this.options.title||this.$element.attr('title');},getUrl:function(){return this.$element.attr('data-url')||this.options.url;},getAutoHide:function(){return this.$element.attr('data-auto-hide')||this.options.autoHide;},getOffsetTop:function(){return toNumber(this.$element.attr('data-offset-top'))||this.options.offsetTop;},getOffsetLeft:function(){return toNumber(this.$element.attr('data-offset-left'))||this.options.offsetLeft;},getCache:function(){var dataAttr=this.$element.attr('data-cache');if(typeof(dataAttr)!=='undefined'){switch(dataAttr.toLowerCase()){case'true':case'yes':case'1':return true;case'false':case'no':case'0':return false;}}
63return this.options.cache;},getTrigger:function(){return this.$element.attr('data-trigger')||this.options.trigger;},getDelayShow:function(){var dataAttr=this.$element.attr('data-delay-show');if(typeof(dataAttr)!=='undefined'){return dataAttr;}
64return this.options.delay.show===0?0:this.options.delay.show||100;},getHideDelay:function(){var dataAttr=this.$element.attr('data-delay-hide');if(typeof(dataAttr)!=='undefined'){return dataAttr;}
65return this.options.delay.hide===0?0:this.options.delay.hide||100;},getAnimation:function(){var dataAttr=this.$element.attr('data-animation');return dataAttr||this.options.animation;},getHideAnimation:function(){var ani=this.getAnimation();return ani?ani+'-out':'out';},setTitle:function(title){var $titleEl=this.getTitleElement();if(title){if(this.options.direction==='rtl'&&!$titleEl.hasClass(rtlClass)){$titleEl.addClass(rtlClass);}
66$titleEl.html(title);}else{$titleEl.remove();}},hasContent:function(){return this.getContent();},canEmptyHide:function(){return this.options.hideEmpty&&this.options.type==='html';},getIframe:function(){var $iframe=$('<iframe></iframe>').attr('src',this.getUrl());var self=this;$.each(this._defaults.iframeOptions,function(opt){if(typeof self.options.iframeOptions[opt]!=='undefined'){$iframe.attr(opt,self.options.iframeOptions[opt]);}});return $iframe;},getTipItem:function(){var
67tipdata=this.options.url,thisTipID=$.trim(this.$element.attr('data-tip-name')),thisTip=tipdata.find('[data-tip-id="'+thisTipID+'"]');if(this.options.allowListTitles){var tipTitle=$.trim($('.tip-title',thisTip).text());this.options.title=tipTitle;}
68if(!thisTip.length){console.log('Tip ID '+thisTipID+' is not defined in TipList Stack');return;}else{return $('.tip-content',thisTip);}},getContent:function(){if(this.getUrl()){switch(this.options.type){case'iframe':this.content=this.getIframe();break;case'tiplist':try{this.content=this.getTipItem();if(!this.content.is(':visible')){this.content.show();}}catch(error){throw new Error('Tip ID must be specified in TipList. Check Log.');}
69break;case'html':try{this.content=$(this.getUrl());if(!this.content.is(':visible')){this.content.show();}}catch(error){throw new Error('Unable to get popover content. Invalid selector specified.');}
70break;}}else if(!this.content){var content='';if($.isFunction(this.options.content)){content=this
vendor: 6,108 bytes, lines 70-82
70.options.content.apply(this.$element[0],[this]);}else{content=this.options.content;}
71this.content=this.$element.attr('data-content')||content;if(!this.content){var $next=this.$element.next();if($next&&$next.hasClass(pluginClass+'-content')){this.content=$next;}}}
72return this.content;},setContent:function(content){var $target=this.getTarget();var $ct=this.getContentElement();if(typeof content==='string'){$ct.html(content);}else if(content instanceof jQuery){$ct.html('');if(!this.options.cache){content.clone(true,true).addClass('popdrop-live').removeClass(pluginClass+'-content').appendTo($ct);}else{content.addClass('popdrop-live').removeClass(pluginClass+'-content').appendTo($ct);}}
73this.$target=$target;},isAsync:function(){return this.options.type==='async';},setContentASync:function(content){var that=this;if(this.xhr){return;}
74this.xhr=$.ajax({url:this.getUrl(),type:this.options.async.type,cache:this.getCache(),beforeSend:function(xhr){if(that.options.async.before){that.options.async.before(that,xhr);}},success:function(data){that.bindBodyEvents();if(content&&$.isFunction(content)){that.content=content.apply(that.$element[0],[data]);}else{that.content=data;}
75that.setContent(that.content);var $targetContent=that.getContentElement();$targetContent.removeAttr('style');that.displayContent();if(that.options.async.success){that.options.async.success(that,data);}},complete:function(){that.xhr=null;},error:function(xhr,data){if(that.options.async.error){that.options.async.error(that,xhr,data);}}});},bindBodyEvents:function(){if(_isBodyEventHandled){return;}
76if(this.options.dismissible&&this.getTrigger()==='click'){$document.off('keyup.popdrop-popover').on('keyup.popdrop-popover',$.proxy(this.escapeHandler,this));$document.off('click.popdrop-popover touchend.popdrop-popover').on('click.popdrop-popover touchend.popdrop-popover',$.proxy(this.bodyClickHandler,this));}else if(this.getTrigger()==='hover'){$document.off('touchend.popdrop-popover').on('touchend.popdrop-popover',$.proxy(this.bodyClickHandler,this));}},mouseenterHandler:function(){var self=this;if(self._timeout){clearTimeout(self._timeout);}
77self._enterTimeout=setTimeout(function(){if(!self.getTarget().is(':visible')){self.show();}},this.getDelayShow());},mouseleaveHandler:function(){var self=this;clearTimeout(self._enterTimeout);self._timeout=setTimeout(function(){self.hide();},this.getHideDelay());},escapeHandler:function(e){if(e.keyCode===27){this.hideAll();}},bodyClickHandler:function(e){_isBodyEventHandled=true;var canHide=true;for(var i=0;i<_srcElements.length;i++){var pop=getPopFromElement(_srcElements[i]);if(pop&&pop._opened){var offset=pop.getTarget().offset();var popX1=offset.left;var popY1=offset.top;var popX2=offset.left+pop.getTarget().width();var popY2=offset.top+pop.getTarget().height();var pt=pointerEventToXY(e);var inPop=pt.x>=popX1&&pt.x<=popX2&&pt.y>=popY1&&pt.y<=popY2;if(inPop){canHide=false;break;}}}
78if(canHide){hideAllPop();}},initTargetEvents:function(){if(this.getTrigger()==='hover'){this.$target.off('mouseenter mouseleave').on('mouseenter',$.proxy(this.mouseenterHandler,this)).on('mouseleave',$.proxy(this.mouseleaveHandler,this));}
79this.$target.find('.popdrop-close').off('click').on('click',$.proxy(this.hide,this,true));if(this.options.closeOnClick){var self=this;this.$target.find('a').on('click',function(){$.proxy(self.hide(),self,true);});}},getPlacement:function(pos){var
80placement,container=this.options.container,clientWidth=container.innerWidth(),clientHeight=container.innerHeight(),scrollTop=document.documentElement.scrollTop+container.scrollTop(),scrollLeft=document.documentElement.scrollLeft+container.scrollLeft(),pageX=Math.max(0,pos.left-scrollLeft),pageY=Math.max(0,pos.top-scrollTop);if($(window).width()>this.options.mobBP){if(typeof(this.options.placement)==='function'){placement=this.options.placement.call(this,this.getTarget()[0],this.$element[0]);}else{placement=this.$element.data('placement')||this.options.placement;}}else{if(typeof(this.options.mobplacement)==='function'){placement=this.options.mobplacement.call(this,this.getTarget()[0],this.$element[0]);}else{placement=this.$element.data('mobplacement')||this.options.mobplacement;}}
81var bias=this.$element.data('bias')||this.options.bias;var isH=placement==='horizontal';var isV=placement==='vertical';var detect=placement==='auto'||isH||isV;if(detect){if(pageX<clientWidth/3){if(pageY<clientHeight/3){placement=isH?'right-bottom':'bottom-right';}else if(pageY<clientHeight*2/3){if(isV){placement=pageY<=clientHeight/2?'bottom-right':'top-right';}else{placement='right';}}else{placement=isH?'right-top':'top-right';}}else if(pageX<clientWidth*2/3){if(pageY<clientHeight/3){if(isH){placement=pageX<=clientWidth/2?'right-bottom':'left-bottom';}else{placement='bottom';}}else if(pageY<clientHeight*2/3){if(isH){placement=pageX<=clientWidth/2?'right':'left';}else{placement=pageY<=clientHeight/2?'bottom':'top';}}else{if(isH){placement=pageX<=clientWidth/2?'right-top':'left-top';}else{placement='top';}}}else{if(pageY<clientHeight/3){placement=isH?'left-bottom':'bottom-left';}else if(pageY<clientHeight*2/3){if(isV){placement=pageY<=clientHeight/2?'bottom-left':'top-left';}else{placement='left';}}else{placement=isH?'left-top':'top-left';}}}else if(placement==='auto-top'){if(pageX<clientWidth/3){placement='top-right';}else if(pageX<clientWidth*2/3){placement='top';}else{placement='top-left';}}else if(placement==='auto-bottom'){if(pageX<clientWidth/3){placement='bottom-right';}else if(pageX<clientWidth*2/3){placement='bottom';}else{placement='bottom-left';}}else if(placement==='auto-left'){if(pageY<clientHeight/3){placement='left-top';}else if(pageY<clientHeight*2/3){placement='left';}else{placement='left-bottom';}}else if(placement==='auto-right'){if(pageY<clientHeight/3){placement='right-top';}else if(pageY<clientHeight*2/3){placement='right';}else{placement='right-bottom';}}
82return placement;},getElementPosition:function(){var elRect=this.$element[0].getBoundingClientRect();if(this.isFixed(this.$element)){var containerRect=this.options.container[0].getBoundingClientRect();
82return{top:elRect.top,left:elRect.left,width:elRect.width,height:elRect.height};}
83if(this.options.container.is(document.body)||this.options.container.css('position')!=='fixed'||!this.$element[0].hasClass('popdrop-fixed')){return $.extend({},this.$element.offset(),{width:this.$element[0].offsetWidth||elRect.width,height:this.$element[0].offsetHeight||elRect.height});}else{var containerRect=this.options.container[0].getBoundingClientRect();return{top:elRect.top-containerRect.top+this.options.container.scrollTop(),left:elRect.left-containerRect.left+this.options.container.scrollLeft(),width:elRect.width,height:elRect.height};}},getTargetPositin:function(elementPos,placement,targetWidth,targetHeight){var pos=elementPos,container=this.options.container,elementW=this.$element.outerWidth(),elementH=this.$element.outerHeight(),scrollTop=container.scrollTop(),scrollLeft=container.scrollLeft(),position={},arrowOffset=null,arrowSize=this.options.arrow?20:0,padding=10,fixedW=elementW<arrowSize+padding?arrowSize:0,fixedH=elementH<arrowSize+padding?arrowSize:0,refix=0,pageH=document.documentElement.clientHeight+scrollTop,pageW=document.documentElement.clientWidth+scrollLeft;
83var validLeft=pos.left+pos.width/2-fixedW>0;var validRight=pos.left+pos.width/2+fixedW<pageW;var validTop=pos.top+pos.height/2-fixedH>0;var validBottom=pos.top+pos.height/2+fixedH<pageH;switch(placement){case'bottom':position={top:pos.top+pos.height,left:pos.left+pos.width/2-targetWidth/2};break;case'top':position={top:pos.top-targetHeight,left:pos.left+pos.width/2-targetWidth/2};break;case'left':position={top:pos.top+pos.height/2-targetHeight/2,left:pos.left-targetWidth};break;case'right':position={top:pos.top+pos.height/2-targetHeight/2,left:pos.left+pos.width};break;case'top-right':position={top:pos.top-targetHeight,left:validLeft?pos.left-fixedW:padding};arrowOffset={left:validLeft?Math.min(elementW,targetWidth)/2+fixedW:_offsetOut};break;case'top-left':refix=validRight?fixedW:-padding;position={top:pos.top-targetHeight,left:pos.left-targetWidth+pos.width+refix};arrowOffset={left:validRight?targetWidth-Math.min(elementW,targetWidth)/2-fixedW:_offsetOut};break;case'bottom-right':position={top:pos.top+pos.height,left:validLeft?pos.left-fixedW:padding};arrowOffset={left:validLeft?Math.min(elementW,targetWidth)/2+fixedW:_offsetOut};break;case'bottom-left':refix=validRight?fixedW:-padding;position={top:pos.top+pos.height,left:pos.left-targetWidth+pos.width+refix};arrowOffset={left:validRight?targetWidth-Math.min(elementW,targetWidth)/2-fixedW:_offsetOut};break;case'right-top':refix=validBottom?fixedH:-padding;position={top:pos.top-targetHeight+pos.height+refix,left:pos.left+pos.width};arrowOffset={top:validBottom?targetHeight-Math.min(elementH,targetHeight)/2-fixedH:_offsetOut};break;case'right-bottom':position={top:validTop?pos.top-fixedH:padding,left:pos.left+pos.width};arrowOffset={top:validTop?Math.min(elementH,targetHeight)/2+fixedH:_offsetOut};break;case'left-top':refix=validBottom?fixedH:-padding;position={top:pos.top-targetHeight+pos.height+refix,left:pos.left-targetWidth};arrowOffset={top:validBottom?targetHeight-Math.min(elementH,targetHeight)/2-fixedH:_offsetOut};break;case'left-bottom':position={top:validTop?pos.top-fixedH:padding,left:pos.left-targetWidth};arrowOffset={top:validTop?Math.min(elementH,targetHeight)/2+fixedH:_offsetOut};break;}
84position.top+=this.getOffsetTop();var optWidth=this.$element.data('width')||this.options.width;if(optWidth==='auto'){position.left+=this.getOffsetLeft();}else{if(optWidth==='mega'){var win=$(window).width();if(win>=this.options.maxWidth){position.left=(win-this.options.maxWidth)/2;}else{position.left=0;}}
85if(optWidth==='contained'){position.left=this.$element.offset().left;}}
86if(this.options.modal){position.top=Math.max(0,($(window).height()/2)-(targetHeight/2));}
87return{position:position,arrowOffset:arrowOffset};}};$.fn[pluginName]=function(options,noInit){var results=[];var $result=this.each(function(){var webuiPopover=$.data(this,'plugin_'+pluginName);if(!webuiPopover){if(!options){webuiPopover=new WebuiPopover(this,null);}else if(typeof options==='string'){if(options!=='destroy'){if(!noInit){webuiPopover=new WebuiPopover(this,null);results.push(webuiPopover[options]());}}}else if(typeof options==='object'){webuiPopover=new WebuiPopover(this,options);}
88$.data(this,'plugin_'+pluginName,webuiPopover);}else{if(options==='destroy'){webuiPopover.destroy();}else if(typeof options==='string'){results.push(webuiPopover[options]());}}});return(results.length)?results:$result;};var popdropPopovers=(function(){var _hideAll=function(){hideAllPop();};var _show=function(selector){$(selector).webuiPopover('show');};var _hide=function(selector){$(selector).webuiPopover('hide');};return{show:_show,hide:_hide,hideAll:_hideAll};})();window.PopDropPopovers=popdropPopovers;}));})(window,document);
89
90return stack;})(stacks.com_bigwhiteduck_stacks_dropem);
91stacks.com_bigwhiteduck_stacks_headerpro = {};
92stacks.com_bigwhiteduck_stacks_headerpro = (function(stack) {
93var jQuery = stacks.jQuery;var $ = jQuery; var elements=document.getElementsByClassName('hp-slice');while(elements.length>0){elements[0].parentNode.removeChild(elements[0]);}
94
95return stack;})(stacks.com_bigwhiteduck_stacks_headerpro);
96stacks.com_stacks4stacks_stacks_topbox4 = {};
97stacks.com_stacks4stacks_stacks_topbox4 = (function(stack) {
98var jQuery = stacks.jQuery;var $ = jQuery;/**
99* Cookie plugin
100*
101* Copyright (c) 2006 Klaus Hartl (stilbuero.de)
102* Dual licensed under the MIT and GPL licenses:
103* http://www.opensource.org/licenses/mit-license.php
104* http://www.gnu.org/licenses/gpl.html
105*
106*/
107
108/**
109* Create a cookie with the given name and value and other optional parameters.
110*
111* @example $.cookie('the_cookie', 'the_value');
112* @desc Set the value of a cookie.
113* @example $.cookie('the_cookie', 'the_value', { expires: 7, path: '/', domain: 'jquery.com', secure: true });
114* @desc Create a cookie with all available options.
115* @example $.cookie('the_cookie', 'the_value');
116* @desc Create a session cookie.
117* @example $.cookie('the_cookie', null);
118* @desc Delete a cookie by passing null as value. Keep in mind that you have to use the same path and domain
119*       used when the cookie was set.
120*
121* @param String name The name of the cookie.
122* @param String value The value of the cookie.
123* @param Object options An object literal containing key/value pairs to provide optional cookie attributes.
124* @option Number|Date expires Either an integer specifying the expiration date from now on in days or a Date object.
125*                             If a negative value is specified (e.g. a date in the past), the cookie will be deleted.
126*                             If set to null or omitted, the cookie will be a session cookie and will not be retained
127*                             when the the browser exits.
128* @option String path The value of the path atribute of the cookie (default: path of page that created the cookie).
129* @option String domain The value of the domain attribute of the cookie (default: domain of page that created the cookie).
130* @option Boolean secure If true, the secure attribute of the cookie will be set and the cookie transmission will
131*                        require a secure protocol (like HTTPS).
132* @type undefined
133*
134* @name $.cookie
135* @cat Plugins/Cookie
136* @author Klaus Hartl/[email protected]
137*/
138
139/**
140* Get the value of a cookie with the given name.
141*
142* @example $.cookie('the_cookie');
143* @desc Get the value of a cookie.
144*
145* @param String name The name of the cookie.
146* @return The value of the cookie.
147* @type String
148*
149* @name $.cookie
150* @cat Plugins/Cookie
151* @author Klaus Hartl/[email protected]
152*/
153jQuery.cookie = function(name, value, options) {
154    if (typeof value != 'undefined') { // name and value given, set cookie
155        options = options || {};
156        if (value === null) {
157            value = '';
158            options.expires = -1;
159        }
160        var expires = '';
161        if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {
162            var date;
163            if (typeof options.expires == 'number') {
164                date = new Date();
165                date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));
166            } else {
167                date = options.expires;
168            }
169            expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE
170        }
171        // CAUTION: Needed to parenthesize options.path and options.domain
172        // in the following expressions, otherwise they evaluate to undefined
173        // in the packed version for some reason...
174        var path = options.path ? '; path=' + (options.path) : '';
175        var domain = options.domain ? '; domain=' + (options.domain) : '';
176        var secure = options.secure ? '; secure' : '';
177        document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');
178    } else { // only name given, get cookie
179        var cookieValue = null;
180        if (document.cookie && document.cookie != '') {
181            var cookies = document.cookie.split(';');
182            for (var i = 0; i < cookies.length; i++) {
183                var cookie = jQuery.trim(cookies[i]);
184                // Does this cookie string begin with the name we want?
185                if (cookie.substring(0, name.length + 1) == (name + '=')) {
186                    cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
187                    break;
188                }
189            }
190        }
191        return cookieValue;
192    }
193  };
194
195
196/*
197 * Nivo Lightbox v1.3.1
198 * http://dev7studios.com/nivo-lightbox
199 *
200 * Copyright 2013, Dev7studios
201 * Free to use and abuse under the MIT license.
202 * http://www.opensource.org/licenses/mit-license.php
203 */
204
205;(function($, window, document, undefined){
206
207    var pluginName = 'nivoLightbox',
208        defaults = {
209            effect: 'fade',
210            theme: 'default',
211            keyboardNav: true,
212            clickImgToClose: false,
213            clickOverlayToClose: true,
214            onInit: function(){},
215            beforeShowLightbox: function(){},
216            afterShowLightbox: function(lightbox){},
217            beforeHideLightbox: function(){},
218            afterHideLightbox: function(){},
219            beforePrev: function(element){},
220            onPrev: function(element){},
221            beforeNext: function(element){},
222            onNext: function(element){},
223            errorMessage: 'The requested content cannot be loaded. Please try again later.'
224        };
225
226    function NivoLightbox(element, options){
227        this.el = element;
228        this.$el = $(this.el);
229
230        this.options = $.extend({}, defaults, options);
231
232        this._defaults = defaults;
233        this._name = pluginName;
234
235        this.init();
236    }
237
238    NivoLightbox.prototype = {
239
240        init: function(){
241			var $this = this;
242
243			// Need this so we don't use CSS transitions in mobile
244			if(!$('html').hasClass('nivo-lightbox-notouch')) $('html').addClass('nivo-lightbox-notouch');
245			if('ontouchstart' in document) $('html').removeClass('nivo-lightbox-notouch');
246
247			// Setup the click
248            this.$el.on('click', function(e){
249                $this.showLightbox(e);
250            });
251
252            // keyboardNav
253            if(this.options.keyboardNav){
254                $('body').off('keyup').on('keyup', function(e){
255                    var code = (e.keyCode ? e.keyCode : e.which);
256                    // Escape
257                    if(code == 27) $this.destructLightbox();
258                    // Left
259                    if(code == 37) $('.nivo-lightbox-prev').trigger('click');
260                    // Right
261                    if(code == 39) $('.nivo-lightbox-next').trigger('click');
262				});
263			}
264
265			this.options.onInit.call(this);
266
267        },
268
269        showLightbox: function(e){
270            var $this = this,
271                currentLink = this.$el;
272
273			// Check content
274			var check = this.checkContent(currentLink);
275			if(!check) return;
276
277			e.preventDefault();
278            this.options.beforeShowLightbox.call(this);
279            var lightbox = this.constructLightbox();
280            if(!lightbox) return;
281            var content = lightbox.find('.nivo-lightbox-content');
282            if(!content) return;
283
284            $('body').addClass('nivo-lightbox-body-effect-'+ this.options.effect);
285
286			this.processContent( content, currentLink );
287
288            // Nav
289            if(this.$el.attr('data-lightbox-gallery')){
290                var galleryItems = $('[data-lightbox-gallery="'+ this.$el.attr('data-lightbox-gallery') +'"]');
291
292                $('.nivo-lightbox-nav').show();
293
294				// Prev
295                $('.nivo-lightbox-prev').off('click').on('click', function(e){
296                    e.preventDefault();
297                    var index = galleryItems.index(currentLink);
298                    currentLink = galleryItems.eq(index - 1);
299                    if(!$(currentLink).length) currentLink = galleryItems.last();
300                    $.when($this.options.beforePrev.call(this, [ currentLink ])).done(function(){
301                        $this.processContent(content, currentLink);
302                        $this.options.onPrev.call(this, [ currentLink ]);
303                    });
304                });
305
306                // Next
307                $('.nivo-lightbox-next').off('click').on('click', function(e){
308                    e.preventDefault();
309                    var index = galleryItems.index(currentLink);
310                    currentLink = galleryItems.eq(index + 1);
311                    if(!$(currentLink).length) currentLink = galleryItems.first();
312                    $.when($this.options.beforeNext.call(this, [ currentLink ])).done(function(){
313                        $this.processContent(content, currentLink);
314                        $this.options.onNext.call(this, [ currentLink ]);
315                    });
316                });
317            }
318
319            setTimeout(function(){
320                lightbox.addClass('nivo-lightbox-open');
321                $this.options.afterShowLightbox.call(this, [ lightbox ]);
322            }, 1); // For CSS transitions
323        },
324
325		checkContent: function( link ) {
326			var $this = this,
327                href = link.attr('href'),
328                video = href.match(/(youtube|youtube-nocookie|youtu|vimeo)\.(com|be)\/(watch\?v=([\w-]+)|([\w-]+))/);
329
330            if(href.match(/\.(jpeg|jpg|gif|png)$/i) !== null){
331				return true;
332            }
333            // HTML5 Audio
334            else if(link.attr('data-lightbox-type') == 'html5audio'){
335				return true;
336            }
337            // HTML5 Video
338            else if(link.attr('data-lightbox-type') == 'html5video'){
339				return true;
340			}
341			// Video (Youtube/Vimeo)
342            else if(video){
343				return true;
344			}
345			// AJAX
346			else if(link.attr('data-lightbox-type') == 'ajax'){
347				return true;
348			}
349			// Inline HTML
350			else if(href.substring(0, 1) == '#' && link.attr('data-lightbox-type') == 'inline'){
351				return true;
352			}
353			// iFrame (default)
354			else if(link.attr('data-lightbox-type') == 'iframe'){
355				return true;
356			}
357
358			return false;
359		},
360
361        processContent: function(content, link){
362            var $this = this,
363                href = link.attr('href'),
364                video = href.match(/(youtube|youtube-nocookie|youtu|vimeo)\.(com|be)\/(watch\?v=([\w-]+)|([\w-]+))/);
365
366            content.html('').addClass('nivo-lightbox-loading');
367
368            // Is HiDPI?
369            if(this.isHidpi() && link.attr('data-lightbox-hidpi')){
370                href = link.attr('data-lightbox-hidpi');
371            }
372
373            // Image
374            if(href.match(/\.(jpeg|jpg|gif|png)$/i) !== null){
375                var img = $('<img>', { src: href, 'class': 'nivo-lightbox-image-display' });
376                img.one('load', function() {
377					var wrap = $('<div class="nivo-lightbox-image" />');
378                    wrap.append(img);
379					content.html(wrap).removeClass('nivo-lightbox-loading');
380
381					// Vertically center images
382					wrap.css({
383						'line-height': $('.nivo-lightbox-content').height() +'px',
384						'height': $('.nivo-lightbox-content').height() +'px' // For Firefox
385					});
386					$(window).resize(function() {
387						wrap.css({
388							'line-height': $('.nivo-lightbox-content').height() +'px',
389							'height': $('.nivo-lightbox-content').height() +'px' // For Firefox
390						});
391					});
392				}).each(function() {
393					if(this.complete) $(this).load();
394				});
395
396				img.error(function() {
397					var wrap = $('<div class="nivo-lightbox-error"><p>'+ $this.options.errorMessage +'</p></div>');
398                    content.html(wrap).removeClass('nivo-lightbox-loading');
399				});
400            }
401
402            // Video (Youtube/Vimeo)
403            else if(video){
404                var src = '',
405                    classTerm = 'nivo-lightbox-video';
406
407                if(video[1] == 'youtube'){
408                    src = 'https://www.youtube.com/embed/'+ video[4]+'?autoplay=1&amp;rel=0';
409                    classTerm = 'nivo-lightbox-youtube';
410                }
411                if(video[1] == 'youtube-nocookie'){
412                    src = href; //https://www.youtube-nocookie.com/embed/...
413                    classTerm = 'nivo-lightbox-youtube';
414                }
415                if(video[1] == 'youtu'){
416                    src = 'https://www.youtube.com/embed/'+ video[3]+'?autoplay=1&amp;rel=0';
417                    classTerm = 'nivo-lightbox-youtube';
418                }
419                if(video[1] == 'vimeo'){
420                    src = 'https://player.vimeo.com/video/'+ video[3]+'?autoplay=1&amp;rel=0&amp;playsinline=0';
421                    classTerm = 'nivo-lightbox-vimeo';
422                }
423
424                if(src){
425                    var iframeVideo = $('<iframe>', {
426                        src: src,
427                        'class': classTerm,
428                        frameborder: 0,
429                        vspace: 0,
430                        hspace: 0,
431                        scrolling: 'auto',
432                        allowfullscreen: 'true'
433                    });
434                    content.html(iframeVideo);
435                    iframeVideo.load(function(){ content.removeClass('nivo-lightbox-loading'); });
436                }
437            }
438            // AJAX
439            else if(link.attr('data-lightbox-type') == 'ajax'){
440				$.ajax({
441					url: href,
442					cache: false,
443					success: function(data) {
444						var wrap = $('<div class="nivo-lightbox-ajax" />');
445						wrap.append(data);
446						content.html(wrap).removeClass('nivo-lightbox-loading');
447
448						// Vertically center html
449						if(wrap.outerHeight() < content.height()){
450							wrap.css({
451								'position': 'relative',
452								'top': '50%',
453								'margin-top': -(wrap.outerHeight()/2) +'px'
454							});
455						}
456						$(window).resize(function() {
457							if(wrap.outerHeight() < content.height()){
458								wrap.css({
459									'position': 'relative',
460									'top': '50%',
461									'margin-top': -(wrap.outerHeight()/2) +'px'
462								});
463							}
464						});
465					},
466					error: function(){
467						var wrap = $('<div class="nivo-lightbox-error"><p>'+ $this.options.errorMessage +'</p></div>');
468                        content.html(wrap).removeClass('nivo-lightbox-loading');
469					}
470				});
471            }
472            // Inline HTML
473            else if(href.substring(0, 1) == '#' && link.attr('data-lightbox-type') == 'inline'){
474                if($(href).length){
475                    var wrap = $('<div class="nivo-lightbox-inline" />');
476					wrap.append($(href).clone().show());
477                    content.html(wrap).removeClass('nivo-lightbox-loading');
478
479                    // Vertically center html
480					if(wrap.outerHeight() < content.height()){
481						wrap.css({
482							'position': 'relative',
483							'top': '50%',
484							'margin-top': -(wrap.outerHeight()/2) +'px'
485						});
486					}
487					$(window).resize(function() {
488						if(wrap.outerHeight() < content.height()){
489							wrap.css({
490								'position': 'relative',
491								'top': '50%',
492								'margin-top': -(wrap.outerHeight()/2) +'px'
493							});
494						}
495					});
496				} else {
497					var wrapError = $('<div class="nivo-lightbox-error"><p>'+ $this.options.errorMessage +'</p></div>');
498                    content.html(wrapError).removeClass('nivo-lightbox-loading');
499				}
500            }
501
502            // HTML5 audio
503            else if(link.attr('data-lightbox-type') == 'html5audio'){
504                var vidframe = $('<audio>', {
505                    src: href,
506                    'class': 'nivo-lightbox-html5audio',
507                    'controls': 'true',
508                    'playsinline': 'true',
509                    'preload': 'auto',
510                    'autoplay': 'true'
511                });
512                content.html(vidframe);
513                vidframe.load(function(){ content.removeClass('nivo-lightbox-loading'); });
514            }
515
516            // HTML5 video
517            else if(link.attr('data-lightbox-type') == 'html5video'){
518                var vidframe = $('<video>', {
519                    src: href,
520                    'class': 'nivo-lightbox-html5video',
521                    'controls': 'true',
522                    'playsinline': 'true',
523                    'preload': 'auto',
524                    'autoplay': 'true'
525                });
526                content.html(vidframe);
527                vidframe.load(function(){ content.removeClass('nivo-lightbox-loading'); });
528            }
529
530            // iFrame (default)
531            else if(link.attr('data-lightbox-type') == 'iframe'){
532                var iframe = $('<iframe>', {
533                    src: href,
534                    'class': 'nivo-lightbox-item',
535                    frameborder: 0,
536                    vspace: 0,
537                    hspace: 0,
538                    scrolling: 'auto'
539                });
540                content.html(iframe);
541                iframe.load(function(){ content.removeClass('nivo-lightbox-loading'); });
542            } else {
543                return false;
544            }
545
546            // Set the title
547            if(link.attr('title')){
548                var titleWrap = $('<span>', { 'class': 'nivo-lightbox-title' });
549                titleWrap.text(link.attr('title'));
550                $('.nivo-lightbox-title-wrap').html(titleWrap);
551            } else {
552                $('.nivo-lightbox-title-wrap').html('');
553            }
554        },
555
556        constructLightbox: function(){
557            if($('.nivo-lightbox-overlay').length) return $('.nivo-lightbox-overlay');
558
559            var overlay = $('<div>', { 'class': 'nivo-lightbox-overlay nivo-lightbox-theme-'+ this.options.theme +' nivo-lightbox-effect-'+ this.options.effect });
560            var wrap = $('<div>', { 'class': 'nivo-lightbox-wrap' });
561            var content = $('<div>', { 'class': 'nivo-lightbox-content' });
562            var nav = $('<a href="#" class="nivo-lightbox-nav nivo-lightbox-prev"><i class="fa fa-chevron-left"></i></a><a href="#" class="nivo-lightbox-nav nivo-lightbox-next"><i class="fa fa-chevron-right"></i></a>');
563            var close = $('<a href="#" class="nivo-lightbox-close" title="Close">Close</a>');
564            var title = $('<div>', { 'class': 'nivo-lightbox-title-wrap' });
565
566            var isMSIE = /*@cc_on!@*/0;
567            if(isMSIE) overlay.addClass('nivo-lightbox-ie');
568
569            wrap.append(content);
570            wrap.append(title);
571            overlay.append(wrap);
572            overlay.append(nav);
573            overlay.append(close);
574            $('body').append(overlay);
575
576            var $this = this;
577            if($this.options.clickOverlayToClose){
578                overlay.on('click', function(e){
579                    if(e.target === this || $(e.target).hasClass('nivo-lightbox-content') || $(e.target).hasClass('nivo-lightbox-image')){
580                        $this.destructLightbox();
581                    }
582                });
583            }
584            if($this.options.clickImgToClose){
585                overlay.on('click', function(e){
586                    if(e.target === this || $(e.target).hasClass('nivo-lightbox-image-display')){
587                        $this.destructLightbox();
588                    }
589                });
590            }
591
592            close.on('click', function(e){
593                e.preventDefault();
594                $this.destructLightbox();
595            });
596
597            return overlay;
598        },
599
600        destructLightbox: function(){
601            var $this = this;
602            this.options.beforeHideLightbox.call(this);
603
604            $('.nivo-lightbox-overlay').removeClass('nivo-lightbox-open');
605            $('.nivo-lightbox-nav').hide();
606            $('body').removeClass('nivo-lightbox-body-effect-'+ $this.options.effect);
607
608            // For IE
609            var isMSIE = /*@cc_on!@*/0;
610            if(isMSIE){
611                $('.nivo-lightbox-overlay iframe').attr("src", " ");
612                $('.nivo-lightbox-overlay iframe').remove();
613            }
614
615            // Remove click handlers
616            $('.nivo-lightbox-prev').off('click');
617            $('.nivo-lightbox-next').off('click');
618
619            // Empty content (for videos)
620            $('.nivo-lightbox-content').empty();
621
622            this.options.afterHideLightbox.call(this);
623        },
624
625        isHidpi: function(){
626			var mediaQuery = "(-webkit-min-device-pixel-ratio: 1.5),\
627                              (min--moz-device-pixel-ratio: 1.5),\
628                              (-o-min-device-pixel-ratio: 3/2),\
629                              (min-resolution: 1.5dppx)";
630			if(window.devicePixelRatio > 1) return true;
631			if(window.matchMedia && window.matchMedia(mediaQuery).matches) return true;
632			return false;
633		}
634
635    };
636
637    $.fn[pluginName] = function(options){
638        return this.each(function(){
639            if(!$.data(this, pluginName)){
640                $.data(this, pluginName, new NivoLightbox(this, options));
641            }
642        });
643    };
644
645})(jQuery, window, document);
646
647
648
649/*
650WHW changes
651- Replace '<a href="#" class="nivo-lightbox-nav nivo-lightbox-prev">Previous</a>' with '<a href="#" class="nivo-lightbox-nav nivo-lightbox-prev"><i class="fa fa-chevron-left"></i></a>'
652- Replace '<a href="#" class="nivo-lightbox-nav nivo-lightbox-next">Next</a>' with '<a href="#" class="nivo-lightbox-nav nivo-lightbox-next"><i class="fa fa-chevron-right"></i></a>'
653- Replace '<a href="#" class="nivo-lightbox-close" title="Close">Close</a>' with '<a href="#" class="nivo-lightbox-close"></a>'
654- Replace 'http://player.vimeo.com' with 'https://player.vimeo.com'
655- Replace 'http://www.youtube.com/embed/' with 'https://www.youtube.com/embed/'
656- Replace '[4]' with '[4]+'?autoplay=1&amp;rel=0''
657- Replace '[3]' with '[3]+'?autoplay=1&amp;rel=0''
658- Replace 'scrolling:"auto"' with 'scrolling:"auto",allowfullscreen:"true"'
659*/
660
661return stack;})(stacks.com_stacks4stacks_stacks_topbox4);
662stacks.stacks_in_468 = {};
663stacks.stacks_in_468 = (function(stack) {
664var jQuery = stacks.jQuery;var $ = jQuery;
665( function($) {
666
667  $.easytabs = function(container, options) {
668
669        // Attach to plugin anything that should be available via
670        // the $container.data('easytabs') object
671    var plugin = this,
672        $container = $(container),
673
674        defaults = {
675          animate: true,
676          panelActiveClass: "active",
677          tabActiveClass: "active",
678          defaultTab: "li:first-child",
679          animationSpeed: "normal",
680          tabs: "> ul > li",
681          updateHash: true,
682          cycle: false,
683          collapsible: false,
684          collapsedClass: "collapsed",
685          collapsedByDefault: true,
686          uiTabs: false,
687          transitionIn: 'fadeIn',
688          transitionOut: 'fadeOut',
689          transitionInEasing: 'swing',
690          transitionOutEasing: 'swing',
691          transitionCollapse: 'slideUp',
692          transitionUncollapse: 'slideDown',
693          transitionCollapseEasing: 'swing',
694          transitionUncollapseEasing: 'swing',
695          containerClass: "",
696          tabsClass: "",
697          tabClass: "",
698          panelClass: "",
699          cache: true,
700          panelContext: $container
701        },
702
703        // Internal instance variables
704        // (not available via easytabs object)
705        $defaultTab,
706        $defaultTabLink,
707        transitions,
708        lastHash,
709        skipUpdateToHash,
710        animationSpeeds = {
711          fast: 200,
712          normal: 400,
713          slow: 600
714        },
715
716        // Shorthand variable so that we don't need to call
717        // plugin.settings throughout the plugin code
718        settings;
719
720    // =============================================================
721    // Functions available via easytabs object
722    // =============================================================
723
724    plugin.init = function() {
725
726      plugin.settings = settings = $.extend({}, defaults, options);
727
728      // Add jQuery UI's crazy class names to markup,
729      // so that markup will match theme CSS
730      if ( settings.uiTabs ) {
731        settings.tabActiveClass = 'ui-tabs-selected';
732        settings.containerClass = 'ui-tabs ui-widget ui-widget-content ui-corner-all';
733        settings.tabsClass = 'ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all';
734        settings.tabClass = 'ui-state-default ui-corner-top';
735        settings.panelClass = 'ui-tabs-panel ui-widget-content ui-corner-bottom';
736      }
737
738      // If collapsible is true and defaultTab specified, assume user wants defaultTab showing (not collapsed)
739      if ( settings.collapsible && options.defaultTab !== undefined && options.collpasedByDefault === undefined ) {
740        settings.collapsedByDefault = false;
741      }
742
743      // Convert 'normal', 'fast', and 'slow' animation speed settings to their respective speed in milliseconds
744      if ( typeof(settings.animationSpeed) === 'string' ) {
745        settings.animationSpeed = animationSpeeds[settings.animationSpeed];
746      }
747
748      $('a.anchor').remove().prependTo('body');
749
750      // Store easytabs object on container so we can easily set
751      // properties throughout
752      $container.data('easytabs', {});
753
754      plugin.setTransitions();
755
756      plugin.getTabs();
757
758      addClasses();
759
760      setDefaultTab();
761
762      bindToTabClicks();
763
764      initHashChange();
765
766      initCycle();
767
768      // Append data-easytabs HTML attribute to make easy to query for
769      // easytabs instances via CSS pseudo-selector
770      $container.attr('data-easytabs', true);
771    };
772
773    // Set transitions for switching between tabs based on options.
774    // Could be used to update transitions if settings are changes.
775    plugin.setTransitions = function() {
776      transitions = ( settings.animate ) ? {
777          show: settings.transitionIn,
778          hide: settings.transitionOut,
779          speed: settings.animationSpeed,
780          collapse: settings.transitionCollapse,
781          uncollapse: settings.transitionUncollapse,
782          halfSpeed: settings.animationSpeed / 2
783        } :
784        {
785          show: "show",
786          hide: "hide",
787          speed: 0,
788          collapse: "hide",
789          uncollapse: "show",
790          halfSpeed: 0
791        };
792    };
793
794    // Find and instantiate tabs and panels.
795    // Could be used to reset tab and panel collection if markup is
796    // modified.
797    plugin.getTabs = function() {
798      var $matchingPanel;
799
800      // Find the initial set of elements matching the setting.tabs
801      // CSS selector within the container
802      plugin.tabs = $container.find(settings.tabs),
803
804      // Instantiate panels as empty jquery object
805      plugin.panels = $(),
806
807      plugin.tabs.each(function(){
808        var $tab = $(this),
809            $a = $tab.children('a'),
810
811            // targetId is the ID of the panel, which is either the
812            // `href` attribute for non-ajax tabs, or in the
813            // `data-target` attribute for ajax tabs since the `href` is
814            // the ajax URL
815            targetId = $tab.children('a').data('target');
816
817        $tab.data('easytabs', {});
818
819        // If the tab has a `data-target` attribute, and is thus an ajax tab
820        if ( targetId !== undefined && targetId !== null ) {
821          $tab.data('easytabs').ajax = $a.attr('href');
822        } else {
823          targetId = $a.attr('href');
824        }
825        targetId = targetId.match(/#([^\?]+)/)[0].substr(1);
826
827        $matchingPanel = settings.panelContext.find("#" + targetId);
828
829        // If tab has a matching panel, add it to panels
830        if ( $matchingPanel.length ) {
831
832          // Store panel height before hiding
833          $matchingPanel.data('easytabs', {
834            position: $matchingPanel.css('position'),
835            visibility: $matchingPanel.css('visibility')
836          });
837
838          // Don't hide panel if it's active (allows `getTabs` to be called manually to re-instantiate tab collection)
839          $matchingPanel.not(settings.panelActiveClass).hide();
840
841          plugin.panels = plugin.panels.add($matchingPanel);
842
843          $tab.data('easytabs').panel = $matchingPanel;
844
845        // Otherwise, remove tab from tabs collection
846        } else {
847          plugin.tabs = plugin.tabs.not($tab);
848        }
849      });
850    };
851
852    // Select tab and fire callback
853    plugin.selectTab = function($clicked, callback) {
854      var url = window.location,
855          hash = url.hash.match(/^[^\?]*/)[0],
856          $targetPanel = $clicked.parent().data('easytabs').panel,
857          ajaxUrl = $clicked.parent().data('easytabs').ajax;
858
859      // Tab is collapsible and active => toggle collapsed state
860      if( settings.collapsible && ! skipUpdateToHash && ($clicked.hasClass(settings.tabActiveClass) || $clicked.hasClass(settings.collapsedClass)) ) {
861        plugin.toggleTabCollapse($clicked, $targetPanel, ajaxUrl, callback);
862
863      // Tab is not active and panel is not active => select tab
864      } else if( ! $clicked.hasClass(settings.tabActiveClass) || ! $targetPanel.hasClass(settings.panelActiveClass) ){
865        activateTab($clicked, $targetPanel, ajaxUrl, callback);
866
867      // Cache is disabled => reload (e.g reload an ajax tab).
868      } else if ( ! settings.cache ){
869        activateTab($clicked, $targetPanel, ajaxUrl, callback);
870      }
871
872    };
873
874    // Toggle tab collapsed state and fire callback
875    plugin.toggleTabCollapse = function($clicked, $targetPanel, ajaxUrl, callback) {
876      plugin.panels.stop(true,true);
877
878      if( fire($container,"easytabs:before", [$clicked, $targetPanel, settings]) ){
879        plugin.tabs.filter("." + settings.tabActiveClass).removeClass(settings.tabActiveClass).children().removeClass(settings.tabActiveClass);
880
881        // If panel is collapsed, uncollapse it
882        if( $clicked.hasClass(settings.collapsedClass) ){
883
884          // If ajax panel and not already cached
885          if( ajaxUrl && (!settings.cache || !$clicked.parent().data('easytabs').cached) ) {
886            $container.trigger('easytabs:ajax:beforeSend', [$clicked, $targetPanel]);
887
888            $targetPanel.load(ajaxUrl, function(response, status, xhr){
889              $clicked.parent().data('easytabs').cached = true;
890              $container.trigger('easytabs:ajax:complete', [$clicked, $targetPanel, response, status, xhr]);
891            });
892          }
893
894          // Update CSS classes of tab and panel
895          $clicked.parent()
896            .removeClass(settings.collapsedClass)
897            .addClass(settings.tabActiveClass)
898            .children()
899              .removeClass(settings.collapsedClass)
900              .addClass(settings.tabActiveClass);
901
902          $targetPanel
903            .addClass(settings.panelActiveClass)
904            [transitions.uncollapse](transitions.speed, settings.transitionUncollapseEasing, function(){
905              $container.trigger('easytabs:midTransition', [$clicked, $targetPanel, settings]);
906              if(typeof callback == 'function') callback();
907            });
908
909        // Otherwise, collapse it
910        } else {
911
912          // Update CSS classes of tab and panel
913          $clicked.addClass(settings.collapsedClass)
914            .parent()
915              .addClass(settings.collapsedClass);
916
917          $targetPanel
918            .removeClass(settings.panelActiveClass)
919            [transitions.collapse](transitions.speed, settings.transitionCollapseEasing, function(){
920              $container.trigger("easytabs:midTransition", [$clicked, $targetPanel, settings]);
921              if(typeof callback == 'function') callback();
922            });
923        }
924      }
925    };
926
927
928    // Find tab with target panel matching value
929    plugin.matchTab = function(hash) {
930      return plugin.tabs.find("[href='" + hash + "'],[data-target='" + hash + "']").first();
931    };
932
933    // Find panel with `id` matching value
934    plugin.matchInPanel = function(hash) {
935      return ( hash ? plugin.panels.filter(':has(' + hash + ')').first() : [] );
936    };
937
938    // Select matching tab when URL hash changes
939    plugin.selectTabFromHashChange = function() {
940      var hash = window.location.hash.match(/^[^\?]*/)[0],
941          $tab = plugin.matchTab(hash),
942          $panel;
943
944      if ( settings.updateHash ) {
945
946        // If hash directly matches tab
947        if( $tab.length ){
948          skipUpdateToHash = true;
949          plugin.selectTab( $tab );
950
951        } else {
952          $panel = plugin.matchInPanel(hash);
953
954          // If panel contains element matching hash
955          if ( $panel.length ) {
956            hash = '#' + $panel.attr('id');
957            $tab = plugin.matchTab(hash);
958            skipUpdateToHash = true;
959            plugin.selectTab( $tab );
960
961          // If default tab is not active...
962          } else if ( ! $defaultTab.hasClass(settings.tabActiveClass) && ! settings.cycle ) {
963
964            // ...and hash is blank or matches a parent of the tab container or
965            // if the last tab (before the hash updated) was one of the other tabs in this container.
966            if ( hash === '' || plugin.matchTab(lastHash).length || $container.closest(hash).length ) {
967              skipUpdateToHash = true;
968              plugin.selectTab( $defaultTabLink );
969            }
970          }
971        }
972      }
973    };
974
975    // Cycle through tabs
976    plugin.cycleTabs = function(tabNumber){
977      if(settings.cycle){
978        tabNumber = tabNumber % plugin.tabs.length;
979        $tab = $( plugin.tabs[tabNumber] ).children("a").first();
980        skipUpdateToHash = true;
981        plugin.selectTab( $tab, function() {
982          setTimeout(function(){ plugin.cycleTabs(tabNumber + 1); }, settings.cycle);
983        });
984      }
985    };
986
987    // Convenient public methods
988    plugin.publicMethods = {
989      select: function(tabSelector){
990        var $tab;
991
992        // Find tab container that matches selector (like 'li#tab-one' which contains tab link)
993        if ( ($tab = plugin.tabs.filter(tabSelector)).length === 0 ) {
994
995          // Find direct tab link that matches href (like 'a[href="#panel-1"]')
996          if ( ($tab = plugin.tabs.find("a[href='" + tabSelector + "']")).length === 0 ) {
997
998            // Find direct tab link that matches selector (like 'a#tab-1')
999            if ( ($tab = plugin.tabs.find("a" + tabSelector)).length === 0 ) {
1000
1001              // Find direct tab link that matches data-target (lik 'a[data-target="#panel-1"]')
1002              if ( ($tab = plugin.tabs.find("[data-target='" + tabSelector + "']")).length === 0 ) {
1003
1004                // Find direct tab link that ends in the matching href (like 'a[href$="#panel-1"]', which would also match http://example.com/currentpage/#panel-1)
1005                if ( ($tab = plugin.tabs.find("a[href$='" + tabSelector + "']")).length === 0 ) {
1006
1007                  $.error('Tab \'' + tabSelector + '\' does not exist in tab set');
1008                }
1009              }
1010            }
1011          }
1012        } else {
1013          // Select the child tab link, since the first option finds the tab container (like <li>)
1014          $tab = $tab.children("a").first();
1015        }
1016        plugin.selectTab($tab);
1017      }
1018    };
1019
1020    // =============================================================
1021    // Private functions
1022    // =============================================================
1023
1024    // Triggers an event on an element and returns the event result
1025    var fire = function(obj, name, data) {
1026      var event = $.Event(name);
1027      obj.trigger(event, data);
1028      return event.result !== false;
1029    }
1030
1031    // Add CSS classes to markup (if specified), called by init
1032    var addClasses = function() {
1033      $container.addClass(settings.containerClass);
1034      plugin.tabs.parent().addClass(settings.tabsClass);
1035      plugin.tabs.addClass(settings.tabClass);
1036      plugin.panels.addClass(settings.panelClass);
1037    };
1038
1039    // Set the default tab, whether from hash (bookmarked) or option,
1040    // called by init
1041    var setDefaultTab = function(){
1042      var hash = window.location.hash.match(/^[^\?]*/)[0],
1043          $selectedTab = plugin.matchTab(hash).parent(),
1044          $panel;
1045
1046      // If hash directly matches one of the tabs, active on page-load
1047      if( $selectedTab.length === 1 ){
1048        $defaultTab = $selectedTab;
1049        settings.cycle = false;
1050
1051      } else {
1052        $panel = plugin.matchInPanel(hash);
1053
1054        // If one of the panels contains the element matching the hash,
1055        // make it active on page-load
1056        if ( $panel.length ) {
1057          hash = '#' + $panel.attr('id');
1058          $defaultTab = plugin.matchTab(hash).parent();
1059
1060        // Otherwise, make the default tab the one that's active on page-load
1061        } else {
1062          $defaultTab = plugin.tabs.parent().find(settings.defaultTab);
1063          if ( $defaultTab.length === 0 ) {
1064            $.error("The specified default tab ('" + settings.defaultTab + "') could not be found in the tab set.");
1065          }
1066        }
1067      }
1068
1069      $defaultTabLink = $defaultTab.children("a").first();
1070
1071      activateDefaultTab($selectedTab);
1072    };
1073
1074    // Activate defaultTab (or collapse by default), called by setDefaultTab
1075    var activateDefaultTab = function($selectedTab) {
1076      var defaultPanel,
1077          defaultAjaxUrl;
1078
1079      if ( settings.collapsible && $selectedTab.length === 0 && settings.collapsedByDefault ) {
1080        $defaultTab
1081          .addClass(settings.collapsedClass)
1082          .children()
1083            .addClass(settings.collapsedClass);
1084
1085      } else {
1086
1087        defaultPanel = $( $defaultTab.data('easytabs').panel );
1088        defaultAjaxUrl = $defaultTab.data('easytabs').ajax;
1089
1090        if ( defaultAjaxUrl && (!settings.cache || !$defaultTab.data('easytabs').cached) ) {
1091          $container.trigger('easytabs:ajax:beforeSend', [$defaultTabLink, defaultPanel]);
1092          defaultPanel.load(defaultAjaxUrl, function(response, status, xhr){
1093            $defaultTab.data('easytabs').cached = true;
1094            $container.trigger('easytabs:ajax:complete', [$defaultTabLink, defaultPanel, response, status, xhr]);
1095          });
1096        }
1097
1098        $defaultTab.data('easytabs').panel
1099          .show()
1100          .addClass(settings.panelActiveClass);
1101
1102        $defaultTab
1103          .addClass(settings.tabActiveClass)
1104          .children()
1105            .addClass(settings.tabActiveClass);
1106      }
1107    };
1108
1109    // Bind tab-select funtionality to namespaced click event, called by
1110    // init
1111    var bindToTabClicks = function() {
1112      plugin.tabs.children("a").bind("click.easytabs", function(e) {
1113
1114        // Stop cycling when a tab is clicked
1115        settings.cycle = false;
1116
1117        // Hash will be updated when tab is clicked,
1118        // don't cause tab to re-select when hash-change event is fired
1119        skipUpdateToHash = false;
1120
1121        // Select the panel for the clicked tab
1122        plugin.selectTab( $(this) );
1123
1124        // Don't follow the link to the anchor
1125        e.preventDefault();
1126      });
1127    };
1128
1129    // Activate a given tab/panel, called from plugin.selectTab:
1130    //
1131    //   * fire `easytabs:before` hook
1132    //   * get ajax if new tab is an uncached ajax tab
1133    //   * animate out previously-active panel
1134    //   * fire `easytabs:midTransition` hook
1135    //   * update URL hash
1136    //   * animate in newly-active panel
1137    //   * update CSS classes for inactive and active tabs/panels
1138    //
1139    // TODO: This could probably be broken out into many more modular
1140    // functions
1141    var activateTab = function($clicked, $targetPanel, ajaxUrl, callback) {
1142      plugin.panels.stop(true,true);
1143
1144      if( fire($container,"easytabs:before", [$clicked, $targetPanel, settings]) ){
1145        var $visiblePanel = plugin.panels.filter(":visible"),
1146            $panelContainer = $targetPanel.parent(),
1147            targetHeight,
1148            visibleHeight,
1149            heightDifference,
1150            showPanel,
1151            hash = window.location.hash.match(/^[^\?]*/)[0];
1152
1153        if (settings.animate) {
1154          targetHeight = getHeightForHidden($targetPanel);
1155          visibleHeight = $visiblePanel.length ? setAndReturnHeight($visiblePanel) : 0;
1156          heightDifference = targetHeight - visibleHeight;
1157        }
1158
1159        // Set lastHash to help indicate if defaultTab should be
1160        // activated across multiple tab instances.
1161        lastHash = hash;
1162
1163        // TODO: Move this function elsewhere
1164        showPanel = function() {
1165          // At this point, the previous panel is hidden, and the new one will be selected
1166          $container.trigger("easytabs:midTransition", [$clicked, $targetPanel, settings]);
1167
1168          // Gracefully animate between panels of differing heights, start height change animation *after* panel change if panel needs to contract,
1169          // so that there is no chance of making the visible panel overflowing the height of the target panel
1170          if (settings.animate && settings.transitionIn == 'fadeIn') {
1171            if (heightDifference < 0)
1172              $panelContainer.animate({
1173                height: $panelContainer.height() + heightDifference
1174              }, transitions.halfSpeed ).css({ 'min-height': '' });
1175          }
1176
1177          if ( settings.updateHash && ! skipUpdateToHash ) {
1178            //window.location = url.toString().replace((url.pathname + hash), (url.pathname + $clicked.attr("href")));
1179            // Not sure why this behaves so differently, but it's more straight forward and seems to have less side-effects
1180            window.location.hash = '#' + $targetPanel.attr('id');
1181          } else {
1182            skipUpdateToHash = false;
1183          }
1184
1185          $targetPanel
1186            [transitions.show](transitions.speed, settings.transitionInEasing, function(){
1187              $panelContainer.css({height: '', 'min-height': ''}); // After the transition, unset the height
1188              $container.trigger("easytabs:after", [$clicked, $targetPanel, settings]);
1189              // callback only gets called if selectTab actually does something, since it's inside the if block
1190              if(typeof callback == 'function'){
1191                callback();
1192              }
1193          });
1194        };
1195
1196        if ( ajaxUrl && (!settings.cache || !$clicked.parent().data('easytabs').cached) ) {
1197          $container.trigger('easytabs:ajax:beforeSend', [$clicked, $targetPanel]);
1198          $targetPanel.load(ajaxUrl, function(response, status, xhr){
1199            $clicked.parent().data('easytabs').cached = true;
1200            $container.trigger('easytabs:ajax:complete', [$clicked, $targetPanel, response, status, xhr]);
1201          });
1202        }
1203
1204        // Gracefully animate between panels of differing heights, start height change animation *before* panel change if panel needs to expand,
1205        // so that there is no chance of making the target panel overflowing the height of the visible panel
1206        if( settings.animate && settings.transitionOut == 'fadeOut' ) {
1207          if( heightDifference > 0 ) {
1208            $panelContainer.animate({
1209              height: ( $panelContainer.height() + heightDifference )
1210            }, transitions.halfSpeed );
1211          } else {
1212            // Prevent height jumping before height transition is triggered at midTransition
1213            $panelContainer.css({ 'min-height': $panelContainer.height() });
1214          }
1215        }
1216
1217        // Change the active tab *first* to provide immediate feedback when the user clicks
1218        plugin.tabs.filter("." + settings.tabActiveClass).removeClass(settings.tabActiveClass).children().removeClass(settings.tabActiveClass);
1219        plugin.tabs.filter("." + settings.collapsedClass).removeClass(settings.collapsedClass).children().removeClass(settings.collapsedClass);
1220        $clicked.parent().addClass(settings.tabActiveClass).children().addClass(settings.tabActiveClass);
1221
1222        plugin.panels.filter("." + settings.panelActiveClass).removeClass(settings.panelActiveClass);
1223        $targetPanel.addClass(settings.panelActiveClass);
1224
1225        if( $visiblePanel.length ) {
1226          $visiblePanel
1227            [transitions.hide](transitions.speed, settings.transitionOutEasing, showPanel);
1228        } else {
1229          $targetPanel
1230            [transitions.uncollapse](transitions.speed, settings.transitionUncollapseEasing, showPanel);
1231        }
1232      }
1233    };
1234
1235    // Get heights of panels to enable animation between panels of
1236    // differing heights, called by activateTab
1237    var getHeightForHidden = function($targetPanel){
1238
1239      if ( $targetPanel.data('easytabs') && $targetPanel.data('easytabs').lastHeight ) {
1240        return $targetPanel.data('easytabs').lastHeight;
1241      }
1242
1243      // this is the only property easytabs changes, so we need to grab its value on each tab change
1244      var display = $targetPanel.css('display'),
1245
1246          // Workaround, because firefox returns wrong height if element itself has absolute positioning
1247          height = $targetPanel
1248            .wrap($('<div>', {position: 'absolute', 'visibility': 'hidden', 'overflow': 'hidden'}))
1249            .css({'position':'relative','visibility':'hidden','display':'block'})
1250            .outerHeight();
1251
1252      $targetPanel.unwrap();
1253
1254      // Return element to previous state
1255      $targetPanel.css({
1256        position: $targetPanel.data('easytabs').position,
1257        visibility: $targetPanel.data('easytabs').visibility,
1258        display: display
1259      });
1260
1261      // Cache height
1262      $targetPanel.data('easytabs').lastHeight = height;
1263
1264      return height;
1265    };
1266
1267    // Since the height of the visible panel may have been manipulated due to interaction,
1268    // we want to re-cache the visible height on each tab change, called
1269    // by activateTab
1270    var setAndReturnHeight = function($visiblePanel) {
1271      var height = $visiblePanel.outerHeight();
1272
1273      if( $visiblePanel.data('easytabs') ) {
1274        $visiblePanel.data('easytabs').lastHeight = height;
1275      } else {
1276        $visiblePanel.data('easytabs', {lastHeight: height});
1277      }
1278      return height;
1279    };
1280
1281    // Setup hash-change callback for forward- and back-button
1282    // functionality, called by init
1283    var initHashChange = function(){
1284
1285      // enabling back-button with jquery.hashchange plugin
1286      // http://benalman.com/projects/jquery-hashchange-plugin/
1287      if(typeof $(window).hashchange === 'function'){
1288        $(window).hashchange( function(){
1289          plugin.selectTabFromHashChange();
1290        });
1291      } else if ($.address && typeof $.address.change === 'function') { // back-button with jquery.address plugin http://www.asual.com/jquery/address/docs/
1292        $.address.change( function(){
1293          plugin.selectTabFromHashChange();
1294        });
1295      }
1296    };
1297
1298    // Begin cycling if set in options, called by init
1299    var initCycle = function(){
1300      var tabNumber;
1301      if (settings.cycle) {
1302        tabNumber = plugin.tabs.index($defaultTab);
1303        setTimeout( function(){ plugin.cycleTabs(tabNumber + 1); }, settings.cycle);
1304      }
1305    };
1306
1307
1308    plugin.init();
1309
1310  };
1311
1312  $.fn.easytabs = function(options) {
1313    var args = arguments;
1314
1315    return this.each(function() {
1316      var $this = $(this),
1317          plugin = $this.data('easytabs');
1318
1319      // Initialization was called with $(el).easytabs( { options } );
1320      if (undefined === plugin) {
1321        plugin = new $.easytabs(this, options);
1322        $this.data('easytabs', plugin);
1323      }
1324
1325      // User called public method
1326      if ( plugin.publicMethods[options] ){
1327        return plugin.publicMethods[options](Array.prototype.slice.call( args, 1 ));
1328      }
1329    });
1330  };
1331
1332})(jQuery);
1333
1334$(document).ready( function() {
1335     $('#tabs_stacks_in_468').easytabs({
1336	      animationSpeed: 300,
1337	      updateHash: false,
1338	      animate: true,
1339	      defaultTab: "li:nth-child(1)",
1340	      cycle: false
1341     });
1342   });
1343  
1344return stack;})(stacks.stacks_in_468);
1345stacks.stacks_in_843 = {};
1346stacks.stacks_in_843 = (function(stack) {
1347var jQuery = stacks.jQuery;var $ = jQuery;// This javascript will be created for each instance of our stack
1348
1349$(document).ready(function() {
1350	
1351
1352	// Helpers
1353	var url = window.location;
1354	var img = $('#imageWizardstacks_in_843 img').attr('src');
1355	var alt = $('#imageWizardstacks_in_843 img').attr('alt');
1356
1357	// Pinterest helper
1358	$("#socialButtonsstacks_in_843 .pinterestHelper").click(function(e){
1359		e.preventDefault();
1360		window.open('http://pinterest.com/pin/create/button/?url='+url+img+'&media='+url+img+'&description='+alt);
1361	});
1362
1363});
1364
1365return stack;})(stacks.stacks_in_843);
1366stacks.stacks_in_832 = {};
1367stacks.stacks_in_832 = (function(stack) {
1368var jQuery = stacks.jQuery;var $ = jQuery;var submitMessageTimeout_stacks_in_832;
1369(function($){
1370  $(document).ready(function() {
1371    $("#stacks_in_832").find('.php').remove();
1372    function floatLabel(inputType){
1373      $(inputType).each(function(){
1374        var $this = $(this);
1375        // on focus add cladd active to label
1376        $this.focus(function(){
1377          $this.closest(".controls").find("label").addClass("sf-active");
1378        });
1379        //on blur check field and remove class if needed
1380        $this.blur(function(){
1381          if($this.val() === '' || $this.val() === 'blank'){
1382            $this.closest(".controls").find("label").removeClass();
1383          }
1384        });
1385        $this.bind("change keyup",function(){
1386          $this.closest(".controls").find("label").addClass("sf-active");
1387        });
1388      });
1389    }
1390    //focus next feild on return
1391    jQuery.extend(jQuery.expr[':'], {
1392        focusable: function (el, index, selector) {
1393            return $(el).is('a, button, :input, [tabindex]');
1394        }
1395    });
1396    $(document).on('keypress', '#stacks_in_832 .controls input,#stacks_in_832 .controls select', function (e) {
1397        if (e.which == 13) {
1398            e.preventDefault();
1399            let $canfocus = $('#stacks_in_832 .controls *:focusable');
1400            let index = $canfocus.index(this) + 1;
1401            if (index >= $canfocus.length) index = 0;
1402            $canfocus.eq(index).focus();
1403        }
1404    });
1405    //adjust right padding if no help text used
1406    if(!$("#stacks_in_832 .controls .help").length) {
1407      $("#stacks_in_832").addClass("sf-no-help-text");
1408    }
1409    //disabled fields
1410    $("#stacks_in_832 input[disabled]").parent().addClass("sf-disabled");
1411    $("#stacks_in_832 button").prop("type", "submit");
1412    floatLabel(".floatLabel");
1413    //select multiple
1414    $("#stacks_in_832 select[multiple] option:empty[disabled][selected]").remove();
1415    $("#stacks_in_832 select[multiple] option[disabled][selected]").removeAttr("selected");
1416    $("#stacks_in_832 select[multiple]").each(function(){
1417      $(this).parent().addClass("sf-multiple");
1418      $(this).attr("size",$(this).find("option").length);
1419    });
1420    //restrict datalist
1421    $("#stacks_in_832 input.no-custom-datalist").each(function(){
1422      let thisInput = this,
1423          pattern = "",
1424          allowArray = [];
1425      $(this).parent().find("option").each(function(){
1426        if($(this).html() != "" && !this.hasAttribute("disabled")) {
1427          pattern += $(this).html() + "|";
1428          allowArray.push($(this).html());
1429        }
1430      }).promise().done(function() {
1431        pattern = pattern.slice(0, -1);
1432        $(thisInput).attr("pattern", pattern);
1433        $(thisInput).blur(function() {
1434          if(!allowArray.includes($(thisInput).val()) && $(thisInput).val() != "") {
1435            $(thisInput).val("");
1436          }
1437        });
1438      });
1439    });
1440    //fix for checkbox validation
1441    $("#stacks_in_832 .com_onelittledesigner_stacks_Super_Forms_Checkbox_stack").on("click",function() {
1442      $("input:checkbox",this).removeClass("hasError");
1443    });
1444    $("#stacks_in_832 .upload").on("click",function() {
1445      $(this).removeClass("hasError");
1446    });
1447    //reCAPTCHA
1448    $("#stacks_in_832 .g-recaptcha").on("click",function() {
1449      $(".recaptcha_stacks_in_832").removeClass("hasError");
1450    });
1451    // $("#stacks_in_832 .sf-checkbox label").on("click",function() {
1452    //   $(this).parent().find("input").trigger("click");
1453    // });
1454    //remove submit message
1455    $(document).on("click","#stacks_in_832 .submitMessage", function() {
1456      clearTimeout(submitMessageTimeout_stacks_in_832);
1457      $(this).remove();
1458    });
1459    let rescaleCaptcha = function(){
1460      $("#stacks_in_832 .g-recaptcha > div,#stacks_in_832 .g-recaptcha > div iframe").css("width","100%");
1461      var width = $('#stacks_in_832 .g-recaptcha').width();
1462      $("#stacks_in_832 .g-recaptcha > div,#stacks_in_832 .g-recaptcha > div iframe").css("width","");
1463      var scale;
1464      if (width < 302) {
1465        scale = width / 302;
1466      } else{
1467        scale = 1.0;
1468      }
1469      $('#stacks_in_832 .g-recaptcha').css('transform', 'scale(' + scale + ')');
1470      $('#stacks_in_832 .g-recaptcha').css('-webkit-transform', 'scale(' + scale + ')');
1471      $('#stacks_in_832 .g-recaptcha').css('transform-origin', '0 0');
1472      $('#stacks_in_832 .g-recaptcha').css('-webkit-transform-origin', '0 0');
1473    }
1474    rescaleCaptcha();
1475    $( window ).resize(function() { rescaleCaptcha();});
1476    $("#stacks_in_832 .sf-submit a").attr("href","");
1477    $("#stacks_in_832 .sf-submit a").on("click",function(event) {
1478      event.preventDefault();
1479      $('#stacks_in_832 .hiddenFormSubmit').on("click",);
1480    });
1481    //Graphic radio options
1482    if($("#stacks_in_832").find('.steps').length == 0) {
1483      var lastRadio = null,
1484          currentName = null,
1485          currentGroup = null;
1486      $("#stacks_in_832").find('.controls.sf-button-group').each(function(i){
1487         var $this = $(this);
1488         currentName = $this.attr("data-for");
1489         if(i==0) {
1490           currentGroup = $this;
1491         } else if ($this.prev().is(lastRadio)) {
1492            currentGroup = currentGroup.add($this);
1493         } else {
1494            if (currentGroup) {
1495              currentGroup.wrapAll('<div class="sf-radio-group"></div>');
1496              currentGroup = $this;
1497            }
1498         }
1499         lastRadio = $this;
1500         if($(`input[name="${currentName}"]`).length == 1)$(`input[name="${currentName}"]`).attr("type","checkbox").attr("data-false-value","-");
1501      });
1502      if (currentGroup)  {
1503        if(currentGroup.length == 1)currentGroup.find("input").attr("type","checkbox").attr("data-false-value","-");
1504         currentGroup.wrapAll('<div class="sf-radio-group"></div>');
1505      }
1506    }
1507  });//end document ready
1508})(jQuery);
1509let sfHasClass = function(element, className) {
1510  return element.className && new RegExp("(^|\\s)" + className + "(\\s|$)").test(element.className);
1511}
1512var hasError = 0;
1513$(document).on('click step-click',"#superForms-stacks_in_832 button, #superForms-stacks_in_832 .step-stack-wrap",function(e) {
1514  if(e.handleObj.type == "click" && $(e.currentTarget).hasClass("step-stack-wrap"))return;
1515
1516  //Step Hybrid Mode
1517  // let submitSlide = $("#stacks_in_832 .step-stack-wrap .step-submit");
1518  // $("#stacks_in_832 .step-stack-wrap .step:first-child").nextUntil(submitSlide.next()[0],".step").add("#stacks_in_832 .step-stack-wrap .step:first-child").find(".step-slice").remove();
1519  $("#stacks_in_832 .step-stack-wrap .step").find(".step-slice").remove();
1520
1521
1522  $("#stacks_in_832 .submitMessage").remove();
1523  var x = document.querySelectorAll('#superForms-stacks_in_832 input,#superForms-stacks_in_832 textarea,#superForms-stacks_in_832 select');
1524  var i;
1525  hasError = 0;
1526  for (i = 0; i < x.length; i++) {
1527    if($(x[i]).closest(".step-hide").length == 0) {
1528      if (sfHasClass(x[i],'hasError') == true) {
1529        hasError = 1;
1530      }
1531      if(x[i].hasAttribute("required") && x[i].value == "" && x[i].getAttribute("type") != "checkbox") {
1532        hasError = 1;
1533        x[i].classList.add("hasError");
1534      }
1535      if(x[i].hasAttribute("required") && x[i].getAttribute("type") == "number") {
1536        let min = parseFloat($(x[i]).attr('min')),
1537            max = parseFloat($(x[i]).attr('max'));
1538        if((!$(x[i]).val() || ($(x[i]).val() < min || $(x[i]).val() > max))) {
1539          $(x[i]).addClass("hasError");
1540        } else {
1541          $(x[i]).removeClass("hasError")[0];
1542          $(x[i])[0].setCustomValidity("");
1543        }
1544      }
1545      if((x[i].hasAttribute("required") || x[i].hasAttribute("sf-captcha")) && x[i].checked == false && x[i].getAttribute("type") == "checkbox") {
1546        hasError = 1;
1547        x[i].classList.add("hasError");
1548      }
1549      if(x[i].hasAttribute("required") && x[i].getAttribute("type") == "radio") {
1550        let radioName = x[i].getAttribute("name"),
1551            radios = document.querySelectorAll(`#superForms-stacks_in_832 input[type="radio"][name="${radioName}"]`),
1552            isValid = false;
1553        for (r = 0; r < radios.length; r++) {
1554          if(radios[r].checked)isValid = true;
1555        }
1556        if(!isValid) {
1557          hasError = 1;
1558          for (r = 0; r < radios.length; r++) {
1559            radios[r].classList.add("hasError");
1560          }
1561        }
1562      }
1563      if(x[i].hasAttribute("required") && $(x[i]).hasClass("upload") && x[i].value == "") {
1564        hasError = 1;
1565        $(x[i]).parent().parent().find(".upload-visual").addClass("hasError");
1566      }
1567    }
1568  }
1569});
1570$(document).on('submit','#superForms-stacks_in_832',async function(e) {
1571  e.preventDefault();
1572  $("#stacks_in_832 button,#stacks_in_832 button").css("pointer-events","none");
1573  let thisForm = this,
1574      timeout_stacks_in_832 = 0;
1575  if($('#superForms-stacks_in_832 .g-recaptcha-v3').length) {
1576    grecaptcha.execute($('#superForms-stacks_in_832 .g-recaptcha-v3').attr("data-sitekey"));
1577    grecaptcha.execute($('#superForms-stacks_in_832 .g-recaptcha-v3').attr("data-sitekey"),{action: 'submit_form'}).then(function(token) {
1578        $('#superForms-stacks_in_832').prepend('<input type="hidden" name="g-recaptcha-response" value="' + token + '">');
1579        $('#superForms-stacks_in_832').prepend('<input type="hidden" name="action" value="submit_form">');
1580    });
1581    timeout_stacks_in_832 = 1000;//add time to verify after submit
1582  } else if($('#superForms-stacks_in_832 .g-recaptcha[data-size="invisible"]').length) {
1583    grecaptcha.execute();//v2 invisible
1584    timeout_stacks_in_832 = 1000;//add time to verify after submit
1585  }
1586  $("#superForms-stacks_in_832 button").addClass("sf-submitting");
1587  let checkForErrors = await setTimeout(function() {
1588    clearTimeout(submitMessageTimeout_stacks_in_832);
1589    if(hasError == 1) {
1590      if(!$("#stacks_in_832 .step-stack-wrap").length) {
1591        var errorMessage = document.createElement("div");
1592        var errorHeader = document.createElement("h3");
1593        var errorHeaderText = document.createTextNode("INCOMPLETE FORM");
1594        errorHeader.appendChild(errorHeaderText);
1595        var errorPara = document.createElement("p");
1596        var errorParaText = document.createTextNode("Please fill out all required fields.");
1597        errorPara.appendChild(errorParaText);
1598        errorMessage.appendChild(errorHeader);
1599        errorMessage.appendChild(errorPara);
1600        errorMessage.setAttribute("id", "submitted");
1601        errorMessage.setAttribute("class", "submitMessage error");
1602        if(!document.getElementById('submitted')) {
1603          $("#stacks_in_832 button,#stacks_in_832 button").css("pointer-events","");
1604          document.querySelector("#stacks_in_832 .sf-message").appendChild(errorMessage);
1605          submitMessageTimeout_stacks_in_832 = setTimeout(function(){ $("#stacks_in_832 .submitMessage").remove() }, 5000);
1606        }
1607      }
1608      $("#superForms-stacks_in_832 button").removeClass("sf-submitting");
1609      $("#stacks_in_832 button,#stacks_in_832 button").css("pointer-events","auto");
1610    }
1611  },timeout_stacks_in_832);
1612  if(hasError == 1) return;
1613
1614    //post unchecked checkboxes with their false values
1615    $("#superForms-stacks_in_832 [data-false-value]:not(:checked)").each(function() {
1616      if(!$(this).is(":disabled")) {
1617        $(this).addClass("sf-modified").attr("data-original-value",$(this).attr("value")).attr("value", $(this).attr("data-false-value")).attr("checked",true);
1618      }
1619    }).promise().done(function() {
1620      //
1621      //
1622      //Email
1623      let emailMessageData = new FormData(thisForm);
1624      //
1625      $.ajax({
1626        url: "",
1627        method: "POST",
1628        //
1629        data: emailMessageData,
1630        //
1631        processData: false,
1632        contentType: false,
1633        success: function(data){
1634          //
1635          $("#stacks_in_832 button,#stacks_in_832 button").css("pointer-events","");
1636          $("#superForms-stacks_in_832 button").removeClass("sf-submitting");
1637          $("#superForms-stacks_in_832 .sf-false-data").remove();
1638
1639          submitMessageTimeout_stacks_in_832 = setTimeout(function(){
1640            $("#stacks_in_832 .submitMessage").remove();
1641          }, 5000);
1642          if($(data).find("#submitted > .error").length > 0) {
1643            if(!$("#stacks_in_832 .submitMessage").length)$('#stacks_in_832 .sf-message').append($(data).find("#submitted").html());
1644            $('#stacks_in_832 .step-message').trigger("send-error");
1645            return
1646          }
1647          if(!$("#stacks_in_832 .submitMessage").length && !$("#stacks_in_832 .step-stack-wrap").length)$('#stacks_in_832 .sf-message').append($(data).find("#submitted").html());
1648
1649          if($(data).find("#debug-sfstacks_in_832").length){
1650            $("#stacks_in_832 .sf-debug-output").addClass("has-output").html($(data).find("#debug-sfstacks_in_832").html());
1651          }
1652
1653          $("#superForms-stacks_in_832 .sf-option").removeClass("sf-msm-active");
1654          $("#superForms-stacks_in_832")[0].reset();
1655
1656          $("#stacks_in_832 .hasError").removeClass("hasError");
1657          $('#stacks_in_832 .controls select').addClass("is-placeholder");
1658          $("#superForms-stacks_in_832 .sf-active").removeClass("sf-active");
1659
1660          if($('#superForms-stacks_in_832 .grecaptcha-v2').length) {
1661            $("#g-captcha").prop('checked', false);
1662            grecaptcha.reset();//v2 reset
1663          }
1664          //
1665          //
1666          $('#stacks_in_832 .step-message').trigger("send-success");
1667          $("#superForms-stacks_in_832 .sf-modified").each(function() {
1668            $(this).attr("value",$(this).attr("data-original-value"));
1669          });
1670        },
1671        error: function (jqXHR, exception) {
1672          $("#stacks_in_832 button,#stacks_in_832 button").css("pointer-events","");
1673          $("#superForms-stacks_in_832 button").removeClass("sf-submitting");
1674          $("#superForms-stacks_in_832 .sf-false-data").remove();
1675          $('#stacks_in_832 .sf-message').append("<div class='error submitMessage'><h3>MAIL ERROR</h3><p>Sorry, something went wrong. Please try again later.</p></div>");
1676          submitMessageTimeout_stacks_in_832 = setTimeout(function(){
1677            $("#stacks_in_832 .submitMessage").remove();
1678          }, 5000);
1679          if($('#superForms-stacks_in_832 .grecaptcha-v2').length) {
1680            $("#g-captcha").prop('checked', false);
1681            grecaptcha.reset();//v2 reset
1682          }
1683          $('#stacks_in_832 .step-message').trigger("send-error");
1684          $("#superForms-stacks_in_832 .sf-modified").each(function() {
1685            $(this).attr("value",$(this).attr("data-original-value"));
1686          });
1687        }
1688      });
1689      //
1690    });
1691});
1692
1693return stack;})(stacks.stacks_in_832);
1694stacks.stacks_in_836 = {};
1695stacks.stacks_in_836 = (function(stack) {
1696var jQuery = stacks.jQuery;var $ = jQuery;$(document).ready(function() {
1697// 
1698  // 
1699  //
1700    //
1701    //
1702    $("select#input-stacks_in_836").on("change",function() {
1703      if($("#input-stacks_in_836")[0].value == ""  && $(this).closest("step-hide").length == 0) {
1704        $("#input-stacks_in_836").addClass("hasError");
1705      } else {
1706        $("#input-stacks_in_836").removeClass("hasError");
1707      }
1708    });
1709    $("#input-stacks_in_836[type='number']").on("change",function() {
1710      let val = parseFloat($("#input-stacks_in_836")[0].value),
1711          min = parseFloat($(this).attr('min')),
1712  		    max = parseFloat($(this).attr('max'));
1713      if((val == "" || (val < min || val > max)) && $(this).closest("step-hide").length == 0) {
1714        $(this).addClass("hasError");
1715      } else {
1716        $(this).removeClass("hasError")[0];
1717        $(this)[0].setCustomValidity("");
1718      }
1719    });
1720    $("#input-stacks_in_836:not([type='number']):not(select),#uploadFile-stacks_in_836").on("change",function() {
1721      if((!$("#input-stacks_in_836").val() || !$("#input-stacks_in_836:valid").length) && $(this).closest("step-hide").length == 0) {
1722        $("#input-stacks_in_836").addClass("hasError");
1723      } else {
1724        $("#input-stacks_in_836").removeClass("hasError");
1725      }
1726    });
1727    $("#email-stacks_in_836").on("change",function() {
1728      if((($("#email-stacks_in_836").val().indexOf("@") == -1) || ($("#email-stacks_in_836").val().indexOf(".") == -1)) && $(this).closest("step-hide").length == 0) {
1729        $("#email-stacks_in_836").addClass("hasError");
1730      } else {
1731        $("#email-stacks_in_836").removeClass("hasError");
1732      }
1733    });
1734    $("#checkbox-stacks_in_836").on("change",function() {
1735      if($("#checkbox-stacks_in_836").is(':checked')) {
1736        $("#checkbox-stacks_in_836").removeClass("hasError");
1737      } else {
1738        $("#checkbox-stacks_in_836").addClass("hasError");
1739      }
1740      if($(this).closest("step-hide").length > 0)$("#checkbox-stacks_in_836").removeClass("hasError");
1741    });
1742    $(`[type="radio"][name="Sender-Name"]`).attr("required","true")
1743    $(`input[type="radio"][name="Sender-Name"]`).on("change",function() {
1744      let radioName = this.getAttribute("name"),
1745          radios = document.querySelectorAll(`input[type="radio"][name="${radioName}"]`),
1746          isValid = false;
1747      for (r = 0; r < radios.length; r++) {
1748        if(radios[r].checked)isValid = true;
1749      }
1750      if(isValid || $(this).closest("step-hide").length > 0) {
1751        for (r = 0; r < radios.length; r++) {
1752          radios[r].classList.remove("hasError");
1753          radios[r].removeAttribute("required");
1754          radios[r].setCustomValidity("");
1755        }
1756      } else {
1757        for (r = 0; r < radios.length; r++) {
1758          radios[r].classList.add("hasError");
1759        }
1760      }
1761    });
1762    //
1763  //
1764  //
1765  //
1766  //
1767  $("#stacks_in_836").parent().css({
1768    "overflow" : "visible"
1769  });
1770});
1771
1772return stack;})(stacks.stacks_in_836);
1773stacks.stacks_in_838 = {};
1774stacks.stacks_in_838 = (function(stack) {
1775var jQuery = stacks.jQuery;var $ = jQuery;$(document).ready(function() {
1776// 
1777  // 
1778  //
1779    //
1780    //
1781    $("select#input-stacks_in_838").on("change",function() {
1782      if($("#input-stacks_in_838")[0].value == ""  && $(this).closest("step-hide").length == 0) {
1783        $("#input-stacks_in_838").addClass("hasError");
1784      } else {
1785        $("#input-stacks_in_838").removeClass("hasError");
1786      }
1787    });
1788    $("#input-stacks_in_838[type='number']").on("change",function() {
1789      let val = parseFloat($("#input-stacks_in_838")[0].value),
1790          min = parseFloat($(this).attr('min')),
1791  		    max = parseFloat($(this).attr('max'));
1792      if((val == "" || (val < min || val > max)) && $(this).closest("step-hide").length == 0) {
1793        $(this).addClass("hasError");
1794      } else {
1795        $(this).removeClass("hasError")[0];
1796        $(this)[0].setCustomValidity("");
1797      }
1798    });
1799    $("#input-stacks_in_838:not([type='number']):not(select),#uploadFile-stacks_in_838").on("change",function() {
1800      if((!$("#input-stacks_in_838").val() || !$("#input-stacks_in_838:valid").length) && $(this).closest("step-hide").length == 0) {
1801        $("#input-stacks_in_838").addClass("hasError");
1802      } else {
1803        $("#input-stacks_in_838").removeClass("hasError");
1804      }
1805    });
1806    $("#email-stacks_in_838").on("change",function() {
1807      if((($("#email-stacks_in_838").val().indexOf("@") == -1) || ($("#email-stacks_in_838").val().indexOf(".") == -1)) && $(this).closest("step-hide").length == 0) {
1808        $("#email-stacks_in_838").addClass("hasError");
1809      } else {
1810        $("#email-stacks_in_838").removeClass("hasError");
1811      }
1812    });
1813    $("#checkbox-stacks_in_838").on("change",function() {
1814      if($("#checkbox-stacks_in_838").is(':checked')) {
1815        $("#checkbox-stacks_in_838").removeClass("hasError");
1816      } else {
1817        $("#checkbox-stacks_in_838").addClass("hasError");
1818      }
1819      if($(this).closest("step-hide").length > 0)$("#checkbox-stacks_in_838").removeClass("hasError");
1820    });
1821    $(`[type="radio"][name="EMAIL"]`).attr("required","true")
1822    $(`input[type="radio"][name="EMAIL"]`).on("change",function() {
1823      let radioName = this.getAttribute("name"),
1824          radios = document.querySelectorAll(`input[type="radio"][name="${radioName}"]`),
1825          isValid = false;
1826      for (r = 0; r < radios.length; r++) {
1827        if(radios[r].checked)isValid = true;
1828      }
1829      if(isValid || $(this).closest("step-hide").length > 0) {
1830        for (r = 0; r < radios.length; r++) {
1831          radios[r].classList.remove("hasError");
1832          radios[r].removeAttribute("required");
1833          radios[r].setCustomValidity("");
1834        }
1835      } else {
1836        for (r = 0; r < radios.length; r++) {
1837          radios[r].classList.add("hasError");
1838        }
1839      }
1840    });
1841    //
1842  //
1843  //
1844  //
1845  //
1846  $("#stacks_in_838").parent().css({
1847    "overflow" : "visible"
1848  });
1849});
1850
1851return stack;})(stacks.stacks_in_838);
1852stacks.stacks_in_839 = {};
1853stacks.stacks_in_839 = (function(stack) {
1854var jQuery = stacks.jQuery;var $ = jQuery;$(document).ready(function() {
1855// 
1856  // 
1857  //
1858    //
1859    //
1860  //
1861  //
1862  $('#input-stacks_in_839').keypress(function(event) {
1863    // Ensure that it is a number and stop the keypress
1864    if (event.keyCode >= 48 && event.keyCode <= 57) {
1865      //Do nothing
1866    } else {
1867      event.preventDefault();
1868    }
1869  });
1870  //
1871  //
1872  //
1873  $("#stacks_in_839").parent().css({
1874    "overflow" : "visible"
1875  });
1876});
1877
1878return stack;})(stacks.stacks_in_839);
1879stacks.stacks_in_840 = {};
1880stacks.stacks_in_840 = (function(stack) {
1881var jQuery = stacks.jQuery;var $ = jQuery;$(document).ready(function() {
1882// 
1883  // 
1884  //
1885    //
1886    //
1887    $("select#input-stacks_in_840").on("change",function() {
1888      if($("#input-stacks_in_840")[0].value == ""  && $(this).closest("step-hide").length == 0) {
1889        $("#input-stacks_in_840").addClass("hasError");
1890      } else {
1891        $("#input-stacks_in_840").removeClass("hasError");
1892      }
1893    });
1894    $("#input-stacks_in_840[type='number']").on("change",function() {
1895      let val = parseFloat($("#input-stacks_in_840")[0].value),
1896          min = parseFloat($(this).attr('min')),
1897  		    max = parseFloat($(this).attr('max'));
1898      if((val == "" || (val < min || val > max)) && $(this).closest("step-hide").length == 0) {
1899        $(this).addClass("hasError");
1900      } else {
1901        $(this).removeClass("hasError")[0];
1902        $(this)[0].setCustomValidity("");
1903      }
1904    });
1905    $("#input-stacks_in_840:not([type='number']):not(select),#uploadFile-stacks_in_840").on("change",function() {
1906      if((!$("#input-stacks_in_840").val() || !$("#input-stacks_in_840:valid").length) && $(this).closest("step-hide").length == 0) {
1907        $("#input-stacks_in_840").addClass("hasError");
1908      } else {
1909        $("#input-stacks_in_840").removeClass("hasError");
1910      }
1911    });
1912    $("#email-stacks_in_840").on("change",function() {
1913      if((($("#email-stacks_in_840").val().indexOf("@") == -1) || ($("#email-stacks_in_840").val().indexOf(".") == -1)) && $(this).closest("step-hide").length == 0) {
1914        $("#email-stacks_in_840").addClass("hasError");
1915      } else {
1916        $("#email-stacks_in_840").removeClass("hasError");
1917      }
1918    });
1919    $("#checkbox-stacks_in_840").on("change",function() {
1920      if($("#checkbox-stacks_in_840").is(':checked')) {
1921        $("#checkbox-stacks_in_840").removeClass("hasError");
1922      } else {
1923        $("#checkbox-stacks_in_840").addClass("hasError");
1924      }
1925      if($(this).closest("step-hide").length > 0)$("#checkbox-stacks_in_840").removeClass("hasError");
1926    });
1927    $(`[type="radio"][name="Email-Subject"]`).attr("required","true")
1928    $(`input[type="radio"][name="Email-Subject"]`).on("change",function() {
1929      let radioName = this.getAttribute("name"),
1930          radios = document.querySelectorAll(`input[type="radio"][name="${radioName}"]`),
1931          isValid = false;
1932      for (r = 0; r < radios.length; r++) {
1933        if(radios[r].checked)isValid = true;
1934      }
1935      if(isValid || $(this).closest("step-hide").length > 0) {
1936        for (r = 0; r < radios.length; r++) {
1937          radios[r].classList.remove("hasError");
1938          radios[r].removeAttribute("required");
1939          radios[r].setCustomValidity("");
1940        }
1941      } else {
1942        for (r = 0; r < radios.length; r++) {
1943          radios[r].classList.add("hasError");
1944        }
1945      }
1946    });
1947    //
1948  //
1949  //
1950  //
1951  //
1952  $("#stacks_in_840").parent().css({
1953    "overflow" : "visible"
1954  });
1955});
1956
1957return stack;})(stacks.stacks_in_840);
1958stacks.stacks_in_841 = {};
1959stacks.stacks_in_841 = (function(stack) {
1960var jQuery = stacks.jQuery;var $ = jQuery;$(document).ready(function() {
1961// 
1962  // 
1963  //
1964    //
1965    //
1966    $("select#input-stacks_in_841").on("change",function() {
1967      if($("#input-stacks_in_841")[0].value == ""  && $(this).closest("step-hide").length == 0) {
1968        $("#input-stacks_in_841").addClass("hasError");
1969      } else {
1970        $("#input-stacks_in_841").removeClass("hasError");
1971      }
1972    });
1973    $("#input-stacks_in_841[type='number']").on("change",function() {
1974      let val = parseFloat($("#input-stacks_in_841")[0].value),
1975          min = parseFloat($(this).attr('min')),
1976  		    max = parseFloat($(this).attr('max'));
1977      if((val == "" || (val < min || val > max)) && $(this).closest("step-hide").length == 0) {
1978        $(this).addClass("hasError");
1979      } else {
1980        $(this).removeClass("hasError")[0];
1981        $(this)[0].setCustomValidity("");
1982      }
1983    });
1984    $("#input-stacks_in_841:not([type='number']):not(select),#uploadFile-stacks_in_841").on("change",function() {
1985      if((!$("#input-stacks_in_841").val() || !$("#input-stacks_in_841:valid").length) && $(this).closest("step-hide").length == 0) {
1986        $("#input-stacks_in_841").addClass("hasError");
1987      } else {
1988        $("#input-stacks_in_841").removeClass("hasError");
1989      }
1990    });
1991    $("#email-stacks_in_841").on("change",function() {
1992      if((($("#email-stacks_in_841").val().indexOf("@") == -1) || ($("#email-stacks_in_841").val().indexOf(".") == -1)) && $(this).closest("step-hide").length == 0) {
1993        $("#email-stacks_in_841").addClass("hasError");
1994      } else {
1995        $("#email-stacks_in_841").removeClass("hasError");
1996      }
1997    });
1998    $("#checkbox-stacks_in_841").on("change",function() {
1999      if($("#checkbox-stacks_in_841").is(':checked')) {
2000        $("#checkbox-stacks_in_841").removeClass("hasError");
2001      } else {
2002        $("#checkbox-stacks_in_841").addClass("hasError");
2003      }
2004      if($(this).closest("step-hide").length > 0)$("#checkbox-stacks_in_841").removeClass("hasError");
2005    });
2006    $(`[type="radio"][name="Email-Message"]`).attr("required","true")
2007    $(`input[type="radio"][name="Email-Message"]`).on("change",function() {
2008      let radioName = this.getAttribute("name"),
2009          radios = document.querySelectorAll(`input[type="radio"][name="${radioName}"]`),
2010          isValid = false;
2011      for (r = 0; r < radios.length; r++) {
2012        if(radios[r].checked)isValid = true;
2013      }
2014      if(isValid || $(this).closest("step-hide").length > 0) {
2015        for (r = 0; r < radios.length; r++) {
2016          radios[r].classList.remove("hasError");
2017          radios[r].removeAttribute("required");
2018          radios[r].setCustomValidity("");
2019        }
2020      } else {
2021        for (r = 0; r < radios.length; r++) {
2022          radios[r].classList.add("hasError");
2023        }
2024      }
2025    });
2026    //
2027  //
2028  //
2029  //
2030  //
2031  $("#stacks_in_841").parent().css({
2032    "overflow" : "visible"
2033  });
2034});
2035
2036return stack;})(stacks.stacks_in_841);
2037stacks.stacks_in_842 = {};
2038stacks.stacks_in_842 = (function(stack) {
2039var jQuery = stacks.jQuery;var $ = jQuery;$(document).ready(function() {
2040// 
2041  // 
2042  //
2043    //
2044    $('#input-stacks_in_842').addClass("sf-step-hp")
2045    $('#submit-stacks_in_842').mousedown(function(e){
2046      $('#input-stacks_in_842').removeAttr("required");
2047    });
2048    //
2049    //
2050  //
2051  //
2052  //
2053  //
2054  $("#stacks_in_842").parent().css({
2055    "overflow" : "visible"
2056  });
2057});
2058
2059return stack;})(stacks.stacks_in_842);
2060stacks.stacks_in_690 = {};
2061stacks.stacks_in_690 = (function(stack) {
2062var jQuery = stacks.jQuery;var $ = jQuery;// This javascript will be created for each instance of our stack
2063
2064$(document).ready(function() {
2065	
2066
2067	// Helpers
2068	var url = window.location;
2069	var img = $('#imageWizardstacks_in_690 img').attr('src');
2070	var alt = $('#imageWizardstacks_in_690 img').attr('alt');
2071
2072	// Pinterest helper
2073	$("#socialButtonsstacks_in_690 .pinterestHelper").click(function(e){
2074		e.preventDefault();
2075		window.open('http://pinterest.com/pin/create/button/?url='+url+img+'&media='+url+img+'&description='+alt);
2076	});
2077
2078});
2079
2080return stack;})(stacks.stacks_in_690);
2081stacks.stacks_in_772 = {};
2082stacks.stacks_in_772 = (function(stack) {
2083function scrollToTop(options){const defaults={text:'To Top',min:200,inDelay:600,outDelay:400,containerID:'toTop',scrollSpeed:1200,easingType:'linear',};const settings={...defaults,...options};const containerID=settings.containerID;const containerIDhash=`#${containerID}`;const easing={easeOutQuart:function(x,t,b,c,d){return-c*((t=t/d-1)*t*t*t-1)+b;},};const toTopButton=document.createElement('a');toTopButton.href='#';toTopButton.id=containerID;toTopButton.textContent=settings.text;toTopButton.style.display='none';document.body.appendChild(toTopButton);const scrollAnimation=(duration,easingFunction)=>{const start=document.documentElement.scrollTop||document.body.scrollTop;const startTime=performance.now();function animateScroll(currentTime){const elapsed=currentTime-startTime;const progress=Math.min(elapsed/duration,1);const scrollTo=easingFunction(0,elapsed,start,-start,duration);document.documentElement.scrollTop=document.body.scrollTop=scrollTo;if(elapsed<duration){requestAnimationFrame(animateScroll);}}
2084requestAnimationFrame(animateScroll);};toTopButton.addEventListener('click',(e)=>{e.preventDefault();scrollAnimation(settings.scrollSpeed,easing[settings.easingType]||easing.easeOutQuart);});window.addEventListener('scroll',()=>{const scrollTop=document.documentElement.scrollTop||document.body.scrollTop;if(scrollTop>settings.min){toTopButton.style.display='block';toTopButton.style.opacity=1;}
2084else{toTopButton.style.opacity=0;setTimeout(()=>{if(toTopButton.style.opacity==='0'){toTopButton.style.display='none';}},settings.outDelay);}});}
2085document.addEventListener('DOMContentLoaded',()=>{scrollToTop({easingType:'easeOutQuart',scrollSpeed:1200,min:200});});
2086
2087return stack;})(stacks.stacks_in_772);
2088stacks.stacks_in_773 = {};
2089stacks.stacks_in_773 = (function(stack) {
2090var jQuery = stacks.jQuery;var $ = jQuery;$(function(){var stack=$('#stacks_in_773');stack.find("script").remove();var selectors=['#sidebar','#sidebarContainer','#sidecontent','#SidebarContent','#sidebar_content','div.sidebar','div.sidebarContainer','#sidebarContentTop','#container div.aside','#container aside','.aside .section','aside.sidebarContent','aside'];for(var index=0,len=selectors.length;index<len;index++){var selector=$(selectors[index]);if(!selector.length>0)continue;stack.appendTo(selector);}
2091stack.css('visibility','visible');});
2092
2093return stack;})(stacks.stacks_in_773);
2094stacks.stacks_in_897_302 = {};
2095stacks.stacks_in_897_302 = (function(stack) {
2096var jQuery = stacks.jQuery;var $ = jQuery;
2097
2098return stack;})(stacks.stacks_in_897_302);
2099stacks.stacks_in_897_303 = {};
2100stacks.stacks_in_897_303 = (function(stack) {
2101var jQuery = stacks.jQuery;var $ = jQuery;
2102$(function(){var stack=$('#stacks_in_897_303'),parent=$('#stacks_in_897_302'),ddWidth=('custom'!='mega'&&'custom'!='contained')?'auto':'custom',titletext='true'=='true'?'Reserve your Signature Rotisserie Duck':'',closeicon='false'=='true'?true:false,isModal='dropPop'=='modal'?true:false,ddWidth=isModal?'mega':ddWidth,hOffset=0,vOffset=0,isBP=parent.hasClass('com_bigwhiteduck_stacks_FoundationButtonPlus2_stack')?true:false,isPDBurger=parent.hasClass('com_bigwhiteduck_stacks_popdrop_switch_stack')?true:false,isExternal=parent.hasClass('com_bigwhiteduck_stacks_popdrop_stack')?true:false,trigger=isModal==true?'click':'hover',closeOnClick='False'=='True'?true:false,validTarget=false,isTipList=parent.hasClass('tip-list')?true:false,tipType=isTipList?'tiplist':'html',allowTipListTitles='true'=='true'&&isTipList?true:false,dropContent=isTipList?$('.popdrop-tip-data',parent):$('[data-pop-source="'+'stacks_in_897_303'+'"]'),shouldCache=true,containerEl='body'!=='body'?stack.closest($('body')):$('body');if(isBP){var dropTarget=$('>.b-p',parent).attr('id','drop_stacks_in_897_303');validTarget=true;}
2103if(isPDBurger){var dropTarget=$('>.pd-switch-wrap',parent).attr('id','drop_stacks_in_897_303');validTarget=true;}
2104if(isExternal){var launchAttr=$('.pop-drop',parent).attr('data-popdrop-launcher'),dropTarget=$('[data-pop-drop="'+launchAttr+'"]');if(dropTarget.length){validTarget=true;if(parent.hasClass('no-cache')||isTipList){shouldCache=false;}}else{if(isModal){parent.append('<div class="popdrop-target" data-pop-drop="'+launchAttr+'" style="display:none"></div>');dropTarget=$('.popdrop-target',parent);console.log('Pop Drop Modal: using internal link for 3rd party compatibility');validTarget=true;}else{console.log('Pop-drop -> Target: '+launchAttr+' not defined for Pop-drop #stacks_in_897_303');}}}
2105var initPopDrop=function(){var target=dropTarget.attr('data-pop-drop');dropTarget.attr('data-pop-drop','').attr('data-popdrop-linked',target);if(!isTipList)dropContent.insertAfter(parent);dropTarget.popDrop({uniqueID:'stacks_in_897_303',parent:parent,placement:'vertical',mobplacement:'vertical',mobBP:'640',bias:'left',container:$('body'),width:ddWidth,maxWidth:5000,height:'auto',trigger:trigger,closeOnClick:closeOnClick,style:'custom-style',modal:isModal,animation:'pop',delay:{show:null,hide:300},cache:shouldCache,multi:false,arrow:true,title:titletext,allowListTitles:allowTipListTitles,content:'',closeable:closeicon,direction:'',padding:true,type:tipType,url:dropContent,backdrop:false,dismissible:true,autoHide:false,offsetTop:vOffset,offsetLeft:hOffset,hidemob:false,template:'<div class="popdrop-popover">'+'<div class="popdrop-arrow"></div>'+'<div class="popdrop-popover-inner pop-stacks_in_897_303">'+'<a href="#" class="popdrop-close"></a>'+'<h3 class="popdrop-popover-title theme"></h3>'+'<div class="popdrop-popover-content"><i class="icon-refresh"></i> <p>&nbsp;</p></div>'+'</div>'+'</div>',});}
2106if(validTarget){initPopDrop();}
2107$(window).resize(function(){PopDropPopovers.hideAll();});$(".close-popdrop, .close-popdrops, [data-popdrop-close]").on("click",function(){PopDropPopovers.hideAll();});});
2108
2109return stack;})(stacks.stacks_in_897_303);
2110stacks.stacks_in_897_109 = {};
2111stacks.stacks_in_897_109 = (function(stack) {
2112var jQuery = stacks.jQuery;var $ = jQuery;$(window).load(function(){
2113	$('#topBoxTriggerstacks_in_897_109').nivoLightbox({
2114		effect: 'fade',
2115		theme: 'default',
2116		keyboardNav: true,
2117		clickImgToClose: true,
2118        clickOverlayToClose: true,
2119		onInit: function(){
2120			
2121		},
2122		beforeShowLightbox: function(){
2123			
2124		},
2125		afterShowLightbox: function(){			
2126			$('.nivo-lightbox-close').html('<i class="fa fa-times"></i>');
2127			$('.nivo-lightbox-prev').html('<i class="fa fa-chevron-left"></i>');
2128			$('.nivo-lightbox-next').html('<i class="fa fa-chevron-right"></i>');
2129
2130			// Close a TopBox by clicking a custom close button
2131			$(".topBoxClose, .closeTopBox").click(function(){
2132				$('.nivo-lightbox-close').trigger('click');
2133			});
2134			
2135			
2136		},
2137		afterHideLightbox: function(){
2138			
2139
2140			
2141			
2142
2143		},
2144		onPrev: function(element){		
2145			
2146		},
2147		onNext: function(element){			
2148			
2149		},
2150		errorMessage: 'The requested content cannot be loaded. Please try again later.' // Error message when content can't be loaded
2151	});
2152	
2153	
2154
2155	// If auto open is enabled
2156	
2157
2158	// Custom triggers
2159	$(".myTopBox_Map").click(function(event){
2160		event.preventDefault();
2161		$('#topBoxTriggerstacks_in_897_109').trigger('click');
2162	});
2163});
2164return stack;})(stacks.stacks_in_897_109);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.