PageSourceSearch

https://www.diffordsguide.com/assets/dist/tm8iu7/default.min.js

js diffordsguide.com collected 2026-10-02 03:44:55 UTC 861,083 bytes, 2,597 lines download raw bytes

vendor: 5,926 bytes, lines 1-27
1(function(global,factory){"use strict";if(typeof module==="object"&&typeof module.exports==="object"){module.exports=global.document?factory(global,true):function(w){if(!w.document){throw new Error("jQuery requires a window with a document");}
2return factory(w);};}else{factory(global);}
3})(typeof window!=="undefined"?window:this,function(window,noGlobal){"use strict";var arr=[];var getProto=Object.getPrototypeOf;var slice=arr.slice;var flat=arr.flat?function(array){return arr.flat.call(array);}:function(array){return arr.concat.apply([],array);};var push=arr.push;var indexOf=arr.indexOf;var class2type={};var toString=class2type.toString;var hasOwn=class2type.hasOwnProperty;var fnToString=hasOwn.toString;var ObjectFunctionString=fnToString.call(Object);var support={};var isFunction=function isFunction(obj){return typeof obj==="function"&&typeof obj.nodeType!=="number"&&typeof obj.item!=="function";};var isWindow=function isWindow(obj){return obj!=null&&obj===obj.window;};var document=window.document;var preservedScriptAttributes={type:true,src:true,nonce:true,noModule:true};function DOMEval(code,node,doc){doc=doc||document;var i,val,script=doc.createElement("script");script.text=code;if(node){for(i in preservedScriptAttributes){val=node[i]||node.getAttribute&&node.getAttribute(i);if(val){script.setAttribute(i,val);}}}
4doc.head.appendChild(script).parentNode.removeChild(script);}
5function toType(obj){if(obj==null){return obj+"";}
6return typeof obj==="object"||typeof obj==="function"?class2type[toString.call(obj)]||"object":typeof obj;}
7var
8version="3.6.1",jQuery=function(selector,context){return new jQuery.fn.init(selector,context);};jQuery.fn=jQuery.prototype={jquery:version,constructor:jQuery,length:0,toArray:function(){return slice.call(this);},get:function(num){if(num==null){return slice.call(this);}
9return num<0?this[num+this.length]:this[num];},pushStack:function(elems){var ret=jQuery.merge(this.constructor(),elems);ret.prevObject=this;return ret;},each:function(callback){return jQuery.each(this,callback);},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},slice:function(){return this.pushStack(slice.apply(this,arguments));},first:function(){return this.eq(0);},last:function(){return this.eq(-1);},even:function(){return this.pushStack(jQuery.grep(this,function(_elem,i){return(i+1)%2;}));},odd:function(){return this.pushStack(jQuery.grep(this,function(_elem,i){return i%2;}));},eq:function(i){var len=this.length,j=+i+(i<0?len:0);return this.pushStack(j>=0&&j<len?[this[j]]:[]);},end:function(){return this.prevObject||this.constructor();},push:push,sort:arr.sort,splice:arr.splice};jQuery.extend=jQuery.fn.extend=function(){var options,name,src,copy,copyIsArray,clone,target=arguments[0]||{},i=1,length=arguments.length,deep=false;if(typeof target==="boolean"){deep=target;target=arguments[i]||{};i++;}
10if(typeof target!=="object"&&!isFunction(target)){target={};}
11if(i===length){target=this;i--;}
12for(;i<length;i++){if((options=arguments[i])!=null){for(name in options){copy=options[name];if(name==="__proto__"||target===copy){continue;}
13if(deep&&copy&&(jQuery.isPlainObject(copy)||(copyIsArray=Array.isArray(copy)))){src=target[name];if(copyIsArray&&!Array.isArray(src)){clone=[];}else if(!copyIsArray&&!jQuery.isPlainObject(src)){clone={};}else{clone=src;}
14copyIsArray=false;target[name]=jQuery.extend(deep,clone,copy);}else if(copy!==undefined){target[name]=copy;}}}}
15return target;};jQuery.extend({expando:"jQuery"+(version+Math.random()).replace(/\D/g,""),isReady:true,error:function(msg){throw new Error(msg);},noop:function(){},isPlainObject:function(obj){var proto,Ctor;if(!obj||toString.call(obj)!=="[object Object]"){return false;}
16proto=getProto(obj);if(!proto){return true;}
17Ctor=hasOwn.call(proto,"constructor")&&proto.constructor;return typeof Ctor==="function"&&fnToString.call(Ctor)===ObjectFunctionString;},isEmptyObject:function(obj){var name;for(name in obj){return false;}
18return true;},globalEval:function(code,options,doc){DOMEval(code,{nonce:options&&options.nonce},doc);},each:function(obj,callback){var length,i=0;if(isArrayLike(obj)){length=obj.length;for(;i<length;i++){if(callback.call(obj[i],i,obj[i])===false){break;}}}else{for(i in obj){if(callback.call(obj[i],i,obj[i])===false){break;}}}
19return obj;},makeArray:function(arr,results){var ret=results||[];if(arr!=null){if(isArrayLike(Object(arr))){jQuery.merge(ret,typeof arr==="string"?[arr]:arr);}else{push.call(ret,arr);}}
20return ret;},inArray:function(elem,arr,i){return arr==null?-1:indexOf.call(arr,elem,i);},merge:function(first,second){var len=+second.length,j=0,i=first.length;for(;j<len;j++){first[i++]=second[j];}
21first.length=i;return first;},grep:function(elems,callback,invert){var callbackInverse,matches=[],i=0,length=elems.length,callbackExpect=!invert;for(;i<length;i++){callbackInverse=!callback(elems[i],i);if(callbackInverse!==callbackExpect){matches.push(elems[i]);}}
22return matches;},map:function(elems,callback,arg){var length,value,i=0,ret=[];if(isArrayLike(elems)){length=elems.length;for(;i<length;i++){value=callback(elems[i],i,arg);if(value!=null){ret.push(value);}}
23}else{for(i in elems){value=callback(elems[i],i,arg);if(value!=null){ret.push(value);}}}
24return flat(ret);},guid:1,support:support});if(typeof Symbol==="function"){jQuery.fn[Symbol.iterator]=arr[Symbol.iterator];}
25jQuery.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(_i,name){class2type["[object "+name+"]"]=name.toLowerCase();});function isArrayLike(obj){var length=!!obj&&"length"in obj&&obj.length,type=toType(obj);if(isFunction(obj)||isWindow(obj)){return false;}
26return type==="array"||length===0||typeof length==="number"&&length>0&&(length-1)in obj;}
27var Sizzle=(function(window){var i,support,Expr,getText,isXML,tokenize,compile,select,outermostContext,sortInput,hasDuplicate,
vendor: 36,624 bytes, lines 27-215
27setDocument,document,docElem,documentIsHTML,rbuggyQSA,rbuggyMatches,matches,contains,expando="sizzle"+1*new Date(),preferredDoc=window.document,dirruns=0,done=0,classCache=createCache(),tokenCache=createCache(),compilerCache=createCache(),nonnativeSelectorCache=createCache(),sortOrder=function(a,b){if(a===b){hasDuplicate=true;}
28return 0;},hasOwn=({}).hasOwnProperty,arr=[],pop=arr.pop,pushNative=arr.push,push=arr.push,slice=arr.slice,indexOf=function(list,elem){var i=0,len=list.length;for(;i<len;i++){if(list[i]===elem){return i;}}
29return-1;},booleans="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|"+
30"ismap|loop|multiple|open|readonly|required|scoped",whitespace="[\\x20\\t\\r\\n\\f]",identifier="(?:\\\\[\\da-fA-F]{1,6}"+whitespace+
31"?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",attributes="\\["+whitespace+"*("+identifier+")(?:"+whitespace+
32"*([*^$|!~]?=)"+whitespace+
33"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+identifier+"))|)"+
34whitespace+"*\\]",pseudos=":("+identifier+")(?:\\(("+
35"('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|"+
36"((?:\\\\.|[^\\\\()[\\]]|"+attributes+")*)|"+
37".*"+
38")\\)|)",rwhitespace=new RegExp(whitespace+"+","g"),rtrim=new RegExp("^"+whitespace+"+|((?:^|[^\\\\])(?:\\\\.)*)"+
39whitespace+"+$","g"),rcomma=new RegExp("^"+whitespace+"*,"+whitespace+"*"),rcombinators=new RegExp("^"+whitespace+"*([>+~]|"+whitespace+")"+whitespace+
40"*"),rdescend=new RegExp(whitespace+"|>"),rpseudo=new RegExp(pseudos),ridentifier=new RegExp("^"+identifier+"$"),matchExpr={"ID":new RegExp("^#("+identifier+")"),"CLASS":new RegExp("^\\.("+identifier+")"),"TAG":new RegExp("^("+identifier+"|[*])"),"ATTR":new RegExp("^"+attributes),"PSEUDO":new RegExp("^"+pseudos),"CHILD":new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+
41whitespace+"*(even|odd|(([+-]|)(\\d*)n|)"+whitespace+"*(?:([+-]|)"+
42whitespace+"*(\\d+)|))"+whitespace+"*\\)|)","i"),"bool":new RegExp("^(?:"+booleans+")$","i"),"needsContext":new RegExp("^"+whitespace+
43"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+whitespace+
44"*((?:-\\d)?\\d*)"+whitespace+"*\\)|)(?=[^-]|$)","i")},rhtml=/HTML$/i,rinputs=/^(?:input|select|textarea|button)$/i,rheader=/^h\d$/i,rnative=/^[^{]+\{\s*\[native \w/,rquickExpr=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,rsibling=/[+~]/,runescape=new RegExp("\\\\[\\da-fA-F]{1,6}"+whitespace+"?|\\\\([^\\r\\n\\f])","g"),funescape=function(escape,nonHex){var high="0x"+escape.slice(1)-0x10000;return nonHex?nonHex:high<0?String.fromCharCode(high+0x10000):String.fromCharCode(high>>10|0xD800,high&0x3FF|0xDC00);},rcssescape=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,fcssescape=function(ch,asCodePoint){if(asCodePoint){if(ch==="\0"){return"\uFFFD";}
45return ch.slice(0,-1)+"\\"+
46ch.charCodeAt(ch.length-1).toString(16)+" ";}
47return"\\"+ch;},unloadHandler=function(){setDocument();},inDisabledFieldset=addCombinator(function(elem){return elem.disabled===true&&elem.nodeName.toLowerCase()==="fieldset";},{dir:"parentNode",next:"legend"});try{push.apply((arr=slice.call(preferredDoc.childNodes)),preferredDoc.childNodes);arr[preferredDoc.childNodes.length].nodeType;}catch(e){push={apply:arr.length?function(target,els){pushNative.apply(target,slice.call(els));}:function(target,els){var j=target.length,i=0;while((target[j++]=els[i++])){}
48target.length=j-1;}};}
49function Sizzle(selector,context,results,seed){var m,i,elem,nid,match,groups,newSelector,newContext=context&&context.ownerDocument,nodeType=context?context.nodeType:9;results=results||[];if(typeof selector!=="string"||!selector||nodeType!==1&&nodeType!==9&&nodeType!==11){return results;}
50if(!seed){setDocument(context);context=context||document;if(documentIsHTML){if(nodeType!==11&&(match=rquickExpr.exec(selector))){if((m=match[1])){if(nodeType===9){if((elem=context.getElementById(m))){if(elem.id===m){results.push(elem);return results;}}else{return results;}
51}else{if(newContext&&(elem=newContext.getElementById(m))&&contains(context,elem)&&elem.id===m){results.push(elem);return results;}}
52}else if(match[2]){push.apply(results,context.getElementsByTagName(selector));return results;}else if((m=match[3])&&support.getElementsByClassName&&context.getElementsByClassName){push.apply(results,context.getElementsByClassName(m));return results;}}
53if(support.qsa&&!nonnativeSelectorCache[selector+" "]&&(!rbuggyQSA||!rbuggyQSA.test(selector))&&(nodeType!==1||context.nodeName.toLowerCase()!=="object")){newSelector=selector;newContext=context;if(nodeType===1&&(rdescend.test(selector)||rcombinators.test(selector))){newContext=rsibling.test(selector)&&testContext(context.parentNode)||context;if(newContext!==context||!support.scope){if((nid=context.getAttribute("id"))){nid=nid.replace(rcssescape,fcssescape);}else{context.setAttribute("id",(nid=expando));}}
54groups=tokenize(selector);i=groups.length;while(i--){groups[i]=(nid?"#"+nid:":scope")+" "+
55toSelector(groups[i]);}
56newSelector=groups.join(",");}
57try{push.apply(results,newContext.querySelectorAll(newSelector));return results;}catch(qsaError){nonnativeSelectorCache(selector,true);}finally{if(nid===expando){context.removeAttribute("id");}}}}}
58return select(selector.replace(rtrim,"$1"),context,results,seed);}
59function createCache(){var keys=[];function cache(key,value){if(keys.push(key+" ")>Expr.cacheLength){delete cache[keys.shift()];}
60return(cache[key+" "]=value);}
61return cache;}
62function markFunction(fn){fn[expando]=true;return fn;}
63function assert(fn){var el=document.createElement("fieldset");try{return!!fn(el);}catch(e){return false;}finally{if(el.parentNode){el.parentNode.removeChild(el);}
64el=null;}}
65function addHandle(attrs,handler){var arr=attrs.split("|"),i=arr.length;while(i--){Expr.attrHandle[arr[i]]=handler;}}
66function siblingCheck(a,b){var cur=b&&a,diff=cur&&a.nodeType===1&&b.nodeType===1&&a.sourceIndex-b.sourceIndex;if(diff){return diff;}
67if(cur){while((cur=cur.nextSibling)){if(cur===b){return-1;}}}
68return a?1:-1;}
69function createInputPseudo(type){return function(elem){var name=elem.nodeName.toLowerCase();return name==="input"&&elem.type===type;};}
70function createButtonPseudo(type){return function(elem){var name=elem.nodeName.toLowerCase();return(name==="input"||name==="button")&&elem.type===type;};}
71function createDisabledPseudo(disabled){return function(elem){if("form"in elem){if(elem.parentNode&&elem.disabled===false){if("label"in elem){if("label"in elem.parentNode){return elem.parentNode.disabled===disabled;}else{return elem.disabled===disabled;}}
72return elem.isDisabled===disabled||elem.isDisabled!==!disabled&&inDisabledFieldset(elem)===disabled;}
73return elem.disabled===disabled;}else if("label"in elem){return elem.disabled===disabled;}
74return false;};}
75function createPositionalPseudo(fn){return markFunction(function(argument){argument=+argument;return markFunction(function(seed,matches){var j,matchIndexes=fn([],seed.length,argument),i=matchIndexes.length;while(i--){if(seed[(j=matchIndexes[i])]){seed[j]=!(matches[j]=seed[j]);}}});});}
76function testContext(context){return context&&typeof context.getElementsByTagName!=="undefined"&&context;}
77support=Sizzle.support={};isXML=Sizzle.isXML=function(elem){var namespace=elem&&elem.namespaceURI,docElem=elem&&(elem.ownerDocument||elem).documentElement;return!rhtml.test(namespace||docElem&&docElem.nodeName||"HTML");};setDocument=Sizzle.setDocument=function(node){var hasCompare,subWindow,doc=node?node.ownerDocument||node:preferredDoc;if(doc==document||doc.nodeType!==9||!doc.documentElement){return document;}
78document=doc;docElem=document.documentElement;documentIsHTML=!isXML(document);if(preferredDoc!=document&&(subWindow=document.defaultView)&&subWindow.top!==subWindow){if(subWindow.addEventListener){subWindow.addEventListener("unload",unloadHandler,false);}else if(subWindow.attachEvent){subWindow.attachEvent("onunload",unloadHandler);}}
79support.scope=assert(function(el){docElem.appendChild(el).appendChild(document.createElement("div"));return typeof el.querySelectorAll!=="undefined"&&!el.querySelectorAll(":scope fieldset div").length;});support.attributes=assert(function(el){el.className="i";return!el.getAttribute("className");});support.getElementsByTagName=assert(function(el){el.appendChild(document.createComment(""));return!el.getElementsByTagName("*").length;});support.getElementsByClassName=rnative.test(document.getElementsByClassName);support.getById=assert(function(el){docElem.appendChild(el).id=expando;return!document.getElementsByName||!document.getElementsByName(expando).length;});if(support.getById){Expr.filter["ID"]=function(id){var attrId=id.replace(runescape,funescape);return function(elem){return elem.getAttribute("id")===attrId;};};Expr.find["ID"]=function(id,context){if(typeof context.getElementById!=="undefined"&&documentIsHTML){var elem=context.getElementById(id);return elem?[elem]:[];}};}else{Expr.filter["ID"]=function(id){var attrId=id.replace(runescape,funescape);return function(elem){var node=typeof elem.getAttributeNode!=="undefined"&&elem.getAttributeNode("id");return node&&node.value===attrId;};};Expr.find["ID"]=function(id,context){if(typeof context.getElementById!=="undefined"&&documentIsHTML){var node,i,elems,elem=context.getElementById(id);if(elem){node=elem.getAttributeNode("id");if(node&&node.value===id){return[elem];}
80elems=context.getElementsByName(id);i=0;while((elem=elems[i++])){node=elem.getAttributeNode("id");if(node&&node.value===id){return[elem];}}}
81return[];}};}
82Expr.find["TAG"]=support.getElementsByTagName?function(tag,context){if(typeof context.getElementsByTagName!=="undefined"){return context.getElementsByTagName(tag);}else if(support.qsa){return context.querySelectorAll(tag);}}:function(tag,context){var elem,tmp=[],i=0,results=context.getElementsByTagName(tag);if(tag==="*"){while((elem=results[i++])){if(elem.nodeType===1){tmp.push(elem);}}
83return tmp;}
84return results;};Expr.find["CLASS"]=support.getElementsByClassName&&function(className,context){if(typeof context.getElementsByClassName!=="undefined"&&documentIsHTML){return context.getElementsByClassName(className);}};rbuggyMatches=[];rbuggyQSA=[];if((support.qsa=rnative.test(document.querySelectorAll))){assert(function(el){var input;docElem.appendChild(el).innerHTML="<a id='"+expando+"'></a>"+
85"<select id='"+expando+"-\r\\' msallowcapture=''>"+
86"<option selected=''></option></select>";if(el.querySelectorAll("[msallowcapture^='']").length){rbuggyQSA.push("[*^$]="+whitespace+"*(?:''|\"\")");}
87if(!el.querySelectorAll("[selected]").length){rbuggyQSA.push("\\["+whitespace+"*(?:value|"+booleans+")");}
88if(!el.querySelectorAll("[id~="+expando+"-]").length){rbuggyQSA.push("~=");}
89input=document.createElement("input");input.setAttribute("name","");el.appendChild(input);if(!el.querySelectorAll("[name='']").length){rbuggyQSA.push("\\["+whitespace+"*name"+whitespace+"*="+
90whitespace+"*(?:''|\"\")");}
91if(!el.querySelectorAll(":checked").length){rbuggyQSA.push(":checked");}
92if(!el.querySelectorAll("a#"+expando+"+*").length){rbuggyQSA.push(".#.+[+~]");}
93el.querySelectorAll("\\\f");rbuggyQSA.push("[\\r\\n\\f]");});assert(function(el){el.innerHTML="<a href='' disabled='disabled'></a>"+
94"<select disabled='disabled'><option/></select>";var input=document.createElement("input");input.setAttribute("type","hidden");el.appendChild(input).setAttribute("name","D");if(el.querySelectorAll("[name=d]").length){rbuggyQSA.push("name"+whitespace+"*[*^$|!~]?=");}
95if(el.querySelectorAll(":enabled").length!==2){rbuggyQSA.push(":enabled",":disabled");}
96docElem.appendChild(el).disabled=true;if(el.querySelectorAll(":disabled").length!==2){rbuggyQSA.push(":enabled",":disabled");}
97el.querySelectorAll("*,:x");rbuggyQSA.push(",.*:");});}
98if((support.matchesSelector=rnative.test((matches=docElem.matches||docElem.webkitMatchesSelector||docElem.mozMatchesSelector||docElem.oMatchesSelector||docElem.msMatchesSelector)))){assert(function(el){support.disconnectedMatch=matches.call(el,"*");matches.call(el,"[s!='']:x");rbuggyMatches.push("!=",pseudos);});}
99rbuggyQSA=rbuggyQSA.length&&new RegExp(rbuggyQSA.join("|"));rbuggyMatches=rbuggyMatches.length&&new RegExp(rbuggyMatches.join("|"));hasCompare=rnative.test(docElem.compareDocumentPosition);contains=hasCompare||rnative.test(docElem.contains)?function(a,b){var adown=a.nodeType===9?a.documentElement:a,bup=b&&b.parentNode;return a===bup||!!(bup&&bup.nodeType===1&&(adown.contains?adown.contains(bup):a.compareDocumentPosition&&a.compareDocumentPosition(bup)&16));}:function(a,b){if(b){while((b=b.parentNode)){if(b===a){return true;}}}
100return false;};sortOrder=hasCompare?function(a,b){if(a===b){hasDuplicate=true;return 0;}
101var compare=!a.compareDocumentPosition-!b.compareDocumentPosition;if(compare){return compare;}
102compare=(a.ownerDocument||a)==(b.ownerDocument||b)?a.compareDocumentPosition(b):1;if(compare&1||(!support.sortDetached&&b.compareDocumentPosition(a)===compare)){if(a==document||a.ownerDocument==preferredDoc&&contains(preferredDoc,a)){return-1;}
103if(b==document||b.ownerDocument==preferredDoc&&contains(preferredDoc,b)){return 1;}
104return sortInput?(indexOf(sortInput,a)-indexOf(sortInput,b)):0;}
105return compare&4?-1:1;}:function(a,b){if(a===b){hasDuplicate=true;return 0;}
106var cur,i=0,aup=a.parentNode,bup=b.parentNode,ap=[a],bp=[b];if(!aup||!bup){return a==document?-1:b==document?1:aup?-1:bup?1:sortInput?(indexOf(sortInput,a)-indexOf(sortInput,b)):0;}else if(aup===bup){return siblingCheck(a,b);}
107cur=a;while((cur=cur.parentNode)){ap.unshift(cur);}
108cur=b;while((cur=cur.parentNode)){bp.unshift(cur);}
109while(ap[i]===bp[i]){i++;}
110return i?siblingCheck(ap[i],bp[i]):ap[i]==preferredDoc?-1:bp[i]==preferredDoc?1:0;};return document;};Sizzle.matches=function(expr,elements){return Sizzle(expr,null,null,elements);};Sizzle.matchesSelector=function(elem,expr){setDocument(elem);if(support.matchesSelector&&documentIsHTML&&!nonnativeSelectorCache[expr+" "]&&(!rbuggyMatches||!rbuggyMatches.test(expr))&&(!rbuggyQSA||!rbuggyQSA.test(expr))){try{var ret=matches.call(elem,expr);if(ret||support.disconnectedMatch||elem.document&&elem.document.nodeType!==11){return ret;}}catch(e){nonnativeSelectorCache(expr,true);}}
111return Sizzle(expr,document,null,[elem]).length>0;};Sizzle.contains=function(context,elem){if((context.ownerDocument||context)!=document){setDocument(context);}
112return contains(context,elem);};Sizzle.attr=function(elem,name){if((elem.ownerDocument||elem)!=document){setDocument(elem);}
113var fn=Expr.attrHandle[name.toLowerCase()],val=fn&&hasOwn.call(Expr.attrHandle,name.toLowerCase())?fn(elem,name,!documentIsHTML):undefined;return val!==undefined?val:support.attributes||!documentIsHTML?elem.getAttribute(name):(val=elem.getAttributeNode(name))&&val.specified?val.value:null;};Sizzle.escape=function(sel){return(sel+"").replace(rcssescape,fcssescape);};Sizzle.error=function(msg){throw new Error("Syntax error, unrecognized expression: "+msg);};Sizzle.uniqueSort=function(results){var elem,duplicates=[],j=0,i=0;hasDuplicate=!support.detectDuplicates;sortInput=!support.sortStable&&results.slice(0);results.sort(sortOrder);if(hasDuplicate){while((elem=results[i++])){if(elem===results[i]){j=duplicates.push(i);}}
114while(j--){results.splice(duplicates[j],1);}}
115sortInput=null;return results;};getText=Sizzle.getText=function(elem){var node,ret="",i=0,nodeType=elem.nodeType;if(!nodeType){while((node=elem[i++])){ret+=getText(node);}}else if(nodeType===1||nodeType===9||nodeType===11){if(typeof elem.textContent==="string"){return elem.textContent;}else{for(elem=elem.firstChild;elem;elem=elem.nextSibling){ret+=getText(elem);}}}else if(nodeType===3||nodeType===4){return elem.nodeValue;}
116return ret;};Expr=Sizzle.selectors={cacheLength:50,createPseudo:markFunction,match:matchExpr,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:true}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:true},"~":{dir:"previousSibling"}},preFilter:{"ATTR":function(match){match[1]=match[1].replace(runescape,funescape);match[3]=(match[3]||match[4]||match[5]||"").replace(runescape,funescape);if(match[2]==="~="){match[3]=" "+match[3]+" ";}
117return match.slice(0,4);},"CHILD":function(match){match[1]=match[1].toLowerCase();if(match[1].slice(0,3)==="nth"){if(!match[3]){Sizzle.error(match[0]);}
118match[4]=+(match[4]?match[5]+(match[6]||1):2*(match[3]==="even"||match[3]==="odd"));match[5]=+((match[7]+match[8])||match[3]==="odd");}else if(match[3]){Sizzle.error(match[0]);}
119return match;},"PSEUDO":function(match){var excess,unquoted=!match[6]&&match[2];if(matchExpr["CHILD"].test(match[0])){return null;}
120if(match[3]){match[2]=match[4]||match[5]||"";}else if(unquoted&&rpseudo.test(unquoted)&&(excess=tokenize(unquoted,true))&&(excess=unquoted.indexOf(")",unquoted.length-excess)-unquoted.length)){match[0]=match[0].slice(0,excess);match[2]=unquoted.slice(0,excess);}
121return match.slice(0,3);}},filter:{"TAG":function(nodeNameSelector){var nodeName=nodeNameSelector.replace(runescape,funescape).toLowerCase();return nodeNameSelector==="*"?function(){return true;}:function(elem){return elem.nodeName&&elem.nodeName.toLowerCase()===nodeName;};},"CLASS":function(className){var pattern=classCache[className+" "];return pattern||(pattern=new RegExp("(^|"+whitespace+
122")"+className+"("+whitespace+"|$)"))&&classCache(className,function(elem){return pattern.test(typeof elem.className==="string"&&elem.className||typeof elem.getAttribute!=="undefined"&&elem.getAttribute("class")||"");});},"ATTR":function(name,operator,check){return function(elem){var result=Sizzle.attr(elem,name);if(result==null){return operator==="!=";}
123if(!operator){return true;}
124result+="";return operator==="="?result===check:operator==="!="?result!==check:operator==="^="?check&&result.indexOf(check)===0:operator==="*="?check&&result.indexOf(check)>-1:operator==="$="?check&&result.slice(-check.length)===check:operator==="~="?(" "+result.replace(rwhitespace," ")+" ").indexOf(check)>-1:operator==="|="?result===check||result.slice(0,check.length+1)===check+"-":false;};},"CHILD":function(type,what,_argument,first,last){var simple=type.slice(0,3)!=="nth",forward=type.slice(-4)!=="last",ofType=what==="of-type";return first===1&&last===0?function(elem){return!!elem.parentNode;}:function(elem,_context,xml){var cache,uniqueCache,outerCache,node,nodeIndex,start,dir=simple!==forward?"nextSibling":"previousSibling",parent=elem.parentNode,name=ofType&&elem.nodeName.toLowerCase(),useCache=!xml&&!ofType,diff=false;if(parent){if(simple){while(dir){node=elem;while((node=node[dir])){if(ofType?node.nodeName.toLowerCase()===name:node.nodeType===1){return false;}}
125start=dir=type==="only"&&!start&&"nextSibling";}
126return true;}
127start=[forward?parent.firstChild:parent.lastChild];if(forward&&useCache){node=parent;outerCache=node[expando]||(node[expando]={});uniqueCache=outerCache[node.uniqueID]||(outerCache[node.uniqueID]={});cache=uniqueCache[type]||[];nodeIndex=cache[0]===dirruns&&cache[1];diff=nodeIndex&&cache[2];node=nodeIndex&&parent.childNodes[nodeIndex];while((node=++nodeIndex&&node&&node[dir]||(diff=nodeIndex=0)||start.pop())){if(node.nodeType===1&&++diff&&node===elem){uniqueCache[type]=[dirruns,nodeIndex,diff];break;}}}else{if(useCache){node=elem;outerCache=node[expando]||(node[expando]={});uniqueCache=outerCache[node.uniqueID]||(outerCache[node.uniqueID]={});cache=uniqueCache[type]||[];nodeIndex=cache[0]===dirruns&&cache[1];diff=nodeIndex;}
128if(diff===false){while((node=++nodeIndex&&node&&node[dir]||(diff=nodeIndex=0)||start.pop())){if((ofType?node.nodeName.toLowerCase()===name:node.nodeType===1)&&++diff){if(useCache){outerCache=node[expando]||(node[expando]={});uniqueCache=outerCache[node.uniqueID]||(outerCache[node.uniqueID]={});uniqueCache[type]=[dirruns,diff];}
129if(node===elem){break;}}}}}
130diff-=last;return diff===first||(diff%first===0&&diff/first>=0);}};},"PSEUDO":function(pseudo,argument){var args,fn=Expr.pseudos[pseudo]||Expr.setFilters[pseudo.toLowerCase()]||Sizzle.error("unsupported pseudo: "+pseudo);if(fn[expando]){return fn(argument);}
131if(fn.length>1){args=[pseudo,pseudo,"",argument];return Expr.setFilters.hasOwnProperty(pseudo.toLowerCase())?markFunction(function(seed,matches){var idx,matched=fn(seed,argument),i=matched.length;while(i--){idx=indexOf(seed,matched[i]);seed[idx]=!(matches[idx]=matched[i]);}}):function(elem){return fn(elem,0,args);};}
132return fn;}},pseudos:{"not":markFunction(function(selector){var input=[],results=[],matcher=compile(selector.replace(rtrim,"$1"));return matcher[expando]?markFunction(function(seed,matches,_context,xml){var elem,unmatched=matcher(seed,null,xml,[]),i=seed.length;while(i--){if((elem=unmatched[i])){seed[i]=!(matches[i]=elem);}}}):function(elem,_context,xml){input[0]=elem;matcher(input,null,xml,results);input[0]=null;return!results.pop();};}),"has":markFunction(function(selector){return function(elem){return Sizzle(selector,elem).length>0;};}),"contains":markFunction(function(text){text=text.replace(runescape,funescape);return function(elem){return(elem.textContent||getText(elem)).indexOf(text)>-1;};}),"lang":markFunction(function(lang){if(!ridentifier.test(lang||"")){Sizzle.error("unsupported lang: "+lang);}
133lang=lang.replace(runescape,funescape).toLowerCase();return function(elem){var elemLang;do{if((elemLang=documentIsHTML?elem.lang:elem.getAttribute("xml:lang")||elem.getAttribute("lang"))){elemLang=elemLang.toLowerCase();return elemLang===lang||elemLang.indexOf(lang+"-")===0;}}while((elem=elem.parentNode)&&elem.nodeType===1);return false;};}),"target":function(elem){var hash=window.location&&window.location.hash;return hash&&hash.slice(1)===elem.id;},"root":function(elem){return elem===docElem;},"focus":function(elem){return elem===document.activeElement&&(!document.hasFocus||document.hasFocus())&&!!(elem.type||elem.href||~elem.tabIndex);},"enabled":createDisabledPseudo(false),"disabled":createDisabledPseudo(true),"checked":function(elem){var nodeName=elem.nodeName.toLowerCase();return(nodeName==="input"&&!!elem.checked)||(nodeName==="option"&&!!elem.selected);},"selected":function(elem){if(elem.parentNode){elem.parentNode.selectedIndex;}
134return elem.selected===true;},"empty":function(elem){for(elem=elem.firstChild;elem;elem=elem.nextSibling){if(elem.nodeType<6){return false;}}
135return true;},"parent":function(elem){return!Expr.pseudos["empty"](elem);},"header":function(elem){return rheader.test(elem.nodeName);},"input":function(elem){return rinputs.test(elem.nodeName);},"button":function(elem){var name=elem.nodeName.toLowerCase();return name==="input"&&elem.type==="button"||name==="button";},"text":function(elem){var attr;return elem.nodeName.toLowerCase()==="input"&&elem.type==="text"&&((attr=elem.getAttribute("type"))==null||attr.toLowerCase()==="text");},"first":createPositionalPseudo(function(){return[0];}),"last":createPositionalPseudo(function(_matchIndexes,length){return[length-1];}),"eq":createPositionalPseudo(function(_matchIndexes,length,argument){return[argument<0?argument+length:argument];}),"even":createPositionalPseudo(function(matchIndexes,length){var i=0;for(;i<length;i+=2){matchIndexes.push(i);}
136return matchIndexes;}),"odd":createPositionalPseudo(function(matchIndexes,length){var i=1;for(;i<length;i+=2){matchIndexes.push(i);}
137return matchIndexes;}),"lt":createPositionalPseudo(function(matchIndexes,length,argument){var i=argument<0?argument+length:argument>length?length:argument;for(;--i>=0;){matchIndexes.push(i);}
138return matchIndexes;}),"gt":createPositionalPseudo(function(matchIndexes,length,argument){var i=argument<0?argument+length:argument;for(;++i<length;){matchIndexes.push(i);}
139return matchIndexes;})}};Expr.pseudos["nth"]=Expr.pseudos["eq"];for(i in{radio:true,checkbox:true,file:true,password:true,image:true}){Expr.pseudos[i]=createInputPseudo(i);}
140for(i in{submit:true,reset:true}){Expr.pseudos[i]=createButtonPseudo(i);}
141function setFilters(){}
142setFilters.prototype=Expr.filters=Expr.pseudos;Expr.setFilters=new setFilters();tokenize=Sizzle.tokenize=function(selector,parseOnly){var matched,match,tokens,type,soFar,groups,preFilters,cached=tokenCache[selector+" "];if(cached){return parseOnly?0:cached.slice(0);}
143soFar=selector;groups=[];preFilters=Expr.preFilter;while(soFar){if(!matched||(match=rcomma.exec(soFar))){if(match){soFar=soFar.slice(match[0].length)||soFar;}
144groups.push((tokens=[]));}
145matched=false;if((match=rcombinators.exec(soFar))){matched=match.shift();tokens.push({value:matched,type:match[0].replace(rtrim," ")});soFar=soFar.slice(matched.length);}
146for(type in Expr.filter){if((match=matchExpr[type].exec(soFar))&&(!preFilters[type]||(match=preFilters[type](match)))){matched=match.shift();tokens.push({value:matched,type:type,matches:match});soFar=soFar.slice(matched.length);}}
147if(!matched){break;}}
148return parseOnly?soFar.length:soFar?Sizzle.error(selector):tokenCache(selector,groups).slice(0);};function toSelector(tokens){var i=0,len=tokens.length,selector="";for(;i<len;i++){selector+=tokens[i].value;}
149return selector;}
150function addCombinator(matcher,combinator,base){var dir=combinator.dir,skip=combinator.next,key=skip||dir,checkNonElements=base&&key==="parentNode",doneName=done++;return combinator.first?function(elem,context,xml){while((elem=elem[dir])){if(elem.nodeType===1||checkNonElements){return matcher(elem,context,xml);}}
151return false;}:function(elem,context,xml){var oldCache,uniqueCache,outerCache,newCache=[dirruns,doneName];if(xml){while((elem=elem[dir])){if(elem.nodeType===1||checkNonElements){if(matcher(elem,context,xml)){return true;}}}}else{while((elem=elem[dir])){if(elem.nodeType===1||checkNonElements){outerCache=elem[expando]||(elem[expando]={});uniqueCache=outerCache[elem.uniqueID]||(outerCache[elem.uniqueID]={});if(skip&&skip===elem.nodeName.toLowerCase()){elem=elem[dir]||elem;}else if((oldCache=uniqueCache[key])&&oldCache[0]===dirruns&&oldCache[1]===doneName){return(newCache[2]=oldCache[2]);}else{uniqueCache[key]=newCache;if((newCache[2]=matcher(elem,context,xml))){return true;}}}}}
152return false;};}
153function elementMatcher(matchers){return matchers.length>1?function(elem,context,xml){var i=matchers.length;while(i--){if(!matchers[i](elem,context,xml)){return false;}}
154return true;}:matchers[0];}
155function multipleContexts(selector,contexts,results){var i=0,len=contexts.length;for(;i<len;i++){Sizzle(selector,contexts[i],results);}
156return results;}
157function condense(unmatched,map,filter,context,xml){var elem,newUnmatched=[],i=0,len=unmatched.length,mapped=map!=null;for(;i<len;i++){if((elem=unmatched[i])){if(!filter||filter(elem,context,xml)){newUnmatched.push(elem);if(mapped){map.push(i);}}}}
158return newUnmatched;}
159function setMatcher(preFilter,selector,matcher,postFilter,postFinder,postSelector){if(postFilter&&!postFilter[expando]){postFilter=setMatcher(postFilter);}
160if(postFinder&&!postFinder[expando]){postFinder=setMatcher(postFinder,postSelector);}
161return markFunction(function(seed,results,context,xml){var temp,i,elem,preMap=[],postMap=[],preexisting=results.length,elems=seed||multipleContexts(selector||"*",context.nodeType?[context]:context,[]),matcherIn=preFilter&&(seed||!selector)?condense(elems,preMap,preFilter,context,xml):elems,matcherOut=matcher?postFinder||(seed?preFilter:preexisting||postFilter)?[]:results:matcherIn;if(matcher){matcher(matcherIn,matcherOut,context,xml);}
162if(postFilter){temp=condense(matcherOut,postMap);postFilter(temp,[],context,xml);i=temp.length;while(i--){if((elem=temp[i])){matcherOut[postMap[i]]=!(matcherIn[postMap[i]]=elem);}}}
163if(seed){if(postFinder||preFilter){if(postFinder){temp=[];i=matcherOut.length;while(i--){if((elem=matcherOut[i])){temp.push((matcherIn[i]=elem));}}
164postFinder(null,(matcherOut=[]),temp,xml);}
165i=matcherOut.length;while(i--){if((elem=matcherOut[i])&&(temp=postFinder?indexOf(seed,elem):preMap[i])>-1){seed[temp]=!(results[temp]=elem);}}}
166}else{matcherOut=condense(matcherOut===results?matcherOut.splice(preexisting,matcherOut.length):matcherOut);if(postFinder){postFinder(null,results,matcherOut,xml);}else{push.apply(results,matcherOut);}}});}
167function matcherFromTokens(tokens){var checkContext,matcher,j,len=tokens.length,leadingRelative=Expr.relative[tokens[0].type],implicitRelative=leadingRelative||Expr.relative[" "],i=leadingRelative?1:0,matchContext=addCombinator(function(elem){return elem===checkContext;},implicitRelative,true),matchAnyContext=addCombinator(function(elem){return indexOf(checkContext,elem)>-1;},implicitRelative,true),matchers=[function(elem,context,xml){var ret=(!leadingRelative&&(xml||context!==outermostContext))||((checkContext=context).nodeType?matchContext(elem,context,xml):matchAnyContext(elem,context,xml));checkContext=null;return ret;}];for(;i<len;i++){if((matcher=Expr.relative[tokens[i].type])){matchers=[addCombinator(elementMatcher(matchers),matcher)];}else{matcher=Expr.filter[tokens[i].type].apply(null,tokens[i].matches);if(matcher[expando]){j=++i;for(;j<len;j++){if(Expr.relative[tokens[j].type]){break;}}
168return setMatcher(i>1&&elementMatcher(matchers),i>1&&toSelector(tokens
169.slice(0,i-1)
170.concat({value:tokens[i-2].type===" "?"*":""})).replace(rtrim,"$1"),matcher,i<j&&matcherFromTokens(tokens.slice(i,j)),j<len&&matcherFromTokens((tokens=tokens.slice(j))),j<len&&toSelector(tokens));}
171matchers.push(matcher);}}
172return elementMatcher(matchers);}
173function matcherFromGroupMatchers(elementMatchers,setMatchers){var bySet=setMatchers.length>0,byElement=elementMatchers.length>0,superMatcher=function(seed,context,xml,results,outermost){var elem,j,matcher,matchedCount=0,i="0",unmatched=seed&&[],setMatched=[],contextBackup=outermostContext,elems=seed||byElement&&Expr.find["TAG"]("*",outermost),dirrunsUnique=(dirruns+=contextBackup==null?1:Math.random()||0.1),len=elems.length;if(outermost){outermostContext=context==document||context||outermost;}
174for(;i!==len&&(elem=elems[i])!=null;i++){if(byElement&&elem){j=0;if(!context&&elem.ownerDocument!=document){setDocument(elem);xml=!documentIsHTML;}
175while((matcher=elementMatchers[j++])){if(matcher(elem,context||document,xml)){results.push(elem);break;}}
176if(outermost){dirruns=dirrunsUnique;}}
177if(bySet){if((elem=!matcher&&elem)){matchedCount--;}
178if(seed){unmatched.push(elem);}}}
179matchedCount+=i;if(bySet&&i!==matchedCount){j=0;while((matcher=setMatchers[j++])){matcher(unmatched,setMatched,context,xml);}
180if(seed){if(matchedCount>0){while(i--){if(!(unmatched[i]||setMatched[i])){setMatched[i]=pop.call(results);}}}
181setMatched=condense(setMatched);}
182push.apply(results,setMatched);if(outermost&&!seed&&setMatched.length>0&&(matchedCount+setMatchers.length)>1){Sizzle.uniqueSort(results);}}
183if(outermost){dirruns=dirrunsUnique;outermostContext=contextBackup;}
184return unmatched;};return bySet?markFunction(superMatcher):superMatcher;}
185compile=Sizzle.compile=function(selector,match){var i,setMatchers=[],elementMatchers=[],cached=compilerCache[selector+" "];if(!cached){if(!match){match=tokenize(selector);}
186i=match.length;while(i--){cached=matcherFromTokens(match[i]);if(cached[expando]){setMatchers.push(cached);}else{elementMatchers.push(cached);}}
187cached=compilerCache(selector,matcherFromGroupMatchers(elementMatchers,setMatchers));cached.selector=selector;}
188return cached;};select=Sizzle.select=function(selector,context,results,seed){var i,tokens,token,type,find,compiled=typeof selector==="function"&&selector,match=!seed&&tokenize((selector=compiled.selector||selector));results=results||[];if(match.length===1){tokens=match[0]=match[0].slice(0);if(tokens.length>2&&(token=tokens[0]).type==="ID"&&context.nodeType===9&&documentIsHTML&&Expr.relative[tokens[1].type]){context=(Expr.find["ID"](token.matches[0]
189.replace(runescape,funescape),context)||[])[0];if(!context){return results;}else if(compiled){context=context.parentNode;}
190selector=selector.slice(tokens.shift().value.length);}
191i=matchExpr["needsContext"].test(selector)?0:tokens.length;while(i--){token=tokens[i];if(Expr.relative[(type=token.type)]){break;}
192if((find=Expr.find[type])){if((seed=find(token.matches[0].replace(runescape,funescape),rsibling.test(tokens[0].type)&&testContext(context.parentNode)||context))){tokens.splice(i,1);selector=seed.length&&toSelector(tokens);if(!selector){push.apply(results,seed);return results;}
193break;}}}}
194(compiled||compile(selector,match))(seed,context,!documentIsHTML,results,!context||rsibling.test(selector)&&testContext(context.parentNode)||context);return results;};support.sortStable=expando.split("").sort(sortOrder).join("")===expando;support.detectDuplicates=!!hasDuplicate;setDocument();support.sortDetached=assert(function(el){return el.compareDocumentPosition(document.createElement("fieldset"))&1;});if(!assert(function(el){el.innerHTML="<a href='#'></a>";return el.firstChild.getAttribute("href")==="#";})){addHandle("type|href|height|width",function(elem,name,isXML){if(!isXML){return elem.getAttribute(name,name.toLowerCase()==="type"?1:2);}});}
195if(!support.attributes||!assert(function(el){el.innerHTML="<input/>";el.firstChild.setAttribute("value","");return el.firstChild.getAttribute("value")==="";})){addHandle("value",function(elem,_name,isXML){if(!isXML&&elem.nodeName.toLowerCase()==="input"){return elem.defaultValue;}});}
196if(!assert(function(el){return el.getAttribute("disabled")==null;})){addHandle(booleans,function(elem,name,isXML){var val;if(!isXML){return elem[name]===true?name.toLowerCase():(val=elem.getAttributeNode(name))&&val.specified?val.value:null;}});}
197return Sizzle;})(window);jQuery.find=Sizzle;jQuery.expr=Sizzle.selectors;jQuery.expr[":"]=jQuery.expr.pseudos;jQuery.uniqueSort=jQuery.unique=Sizzle.uniqueSort;jQuery.text=Sizzle.getText;jQuery.isXMLDoc=Sizzle.isXML;jQuery.contains=Sizzle.contains;jQuery.escapeSelector=Sizzle.escape;var dir=function(elem,dir,until){var matched=[],truncate=until!==undefined;while((elem=elem[dir])&&elem.nodeType!==9){if(elem.nodeType===1){if(truncate&&jQuery(elem).is(until)){break;}
198matched.push(elem);}}
199return matched;};var siblings=function(n,elem){var matched=[];for(;n;n=n.nextSibling){if(n.nodeType===1&&n!==elem){matched.push(n);}}
200return matched;};var rneedsContext=jQuery.expr.match.needsContext;function nodeName(elem,name){return elem.nodeName&&elem.nodeName.toLowerCase()===name.toLowerCase();}
201var rsingleTag=(/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i);function winnow(elements,qualifier,not){if(isFunction(qualifier)){return jQuery.grep(elements,function(elem,i){return!!qualifier.call(elem,i,elem)!==not;});}
202if(qualifier.nodeType){return jQuery.grep(elements,function(elem){return(elem===qualifier)!==not;});}
203if(typeof qualifier!=="string"){return jQuery.grep(elements,function(elem){return(indexOf.call(qualifier,elem)>-1)!==not;});}
204return jQuery.filter(qualifier,elements,not);}
205jQuery.filter=function(expr,elems,not){var elem=elems[0];if(not){expr=":not("+expr+")";}
206if(elems.length===1&&elem.nodeType===1){return jQuery.find.matchesSelector(elem,expr)?[elem]:[];}
207return jQuery.find.matches(expr,jQuery.grep(elems,function(elem){return elem.nodeType===1;}));};jQuery.fn.extend({find:function(selector){var i,ret,len=this.length,self=this;if(typeof selector!=="string"){return this.pushStack(jQuery(selector).filter(function(){for(i=0;i<len;i++){if(jQuery.contains(self[i],this)){return true;}}}));}
208ret=this.pushStack([]);for(i=0;i<len;i++){jQuery.find(selector,self[i],ret);}
209return len>1?jQuery.uniqueSort(ret):ret;},filter:function(selector){return this.pushStack(winnow(this,selector||[],false));},not:function(selector){return this.pushStack(winnow(this,selector||[],true));},is:function(selector){return!!winnow(this,typeof selector==="string"&&rneedsContext.test(selector)?jQuery(selector):selector||[],false).length;}});var rootjQuery,rquickExpr=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,init=jQuery.fn.init=function(selector,context,root){var match,elem;if(!selector){return this;}
210root=root||rootjQuery;if(typeof selector==="string"){if(selector[0]==="<"&&selector[selector.length-1]===">"&&selector.length>=3){match=[null,selector,null];}else{match=rquickExpr.exec(selector);}
211if(match&&(match[1]||!context)){if(match[1]){context=context instanceof jQuery?context[0]:context;jQuery.merge(this,jQuery.parseHTML(match[1],context&&context.nodeType?context.ownerDocument||context:document,true));if(rsingleTag.test(match[1])&&jQuery.isPlainObject(context)){for(match in context){if(isFunction(this[match])){this[match](context[match]);}else{this.attr(match,context[match]);}}}
212return this;}else{elem=document.getElementById(match[2]);if(elem){this[0]=elem;this.length=1;}
213return this;}
214}else if(!context||context.jquery){return(context||root).find(selector);}else{return this.constructor(context).find(selector);}
215}else if(selector.nodeType){this[0]=selector;this.length=1;return this;}
vendor: 18,132 bytes, lines 215-309
215else if(isFunction(selector)){return root.ready!==undefined?root.ready(selector):selector(jQuery);}
216return jQuery.makeArray(selector,this);};init.prototype=jQuery.fn;rootjQuery=jQuery(document);var rparentsprev=/^(?:parents|prev(?:Until|All))/,guaranteedUnique={children:true,contents:true,next:true,prev:true};jQuery.fn.extend({has:function(target){var targets=jQuery(target,this),l=targets.length;return this.filter(function(){var i=0;for(;i<l;i++){if(jQuery.contains(this,targets[i])){return true;}}});},closest:function(selectors,context){var cur,i=0,l=this.length,matched=[],targets=typeof selectors!=="string"&&jQuery(selectors);if(!rneedsContext.test(selectors)){for(;i<l;i++){for(cur=this[i];cur&&cur!==context;cur=cur.parentNode){if(cur.nodeType<11&&(targets?targets.index(cur)>-1:cur.nodeType===1&&jQuery.find.matchesSelector(cur,selectors))){matched.push(cur);break;}}}}
217return this.pushStack(matched.length>1?jQuery.uniqueSort(matched):matched);},index:function(elem){if(!elem){return(this[0]&&this[0].parentNode)?this.first().prevAll().length:-1;}
218if(typeof elem==="string"){return indexOf.call(jQuery(elem),this[0]);}
219return indexOf.call(this,elem.jquery?elem[0]:elem);},add:function(selector,context){return this.pushStack(jQuery.uniqueSort(jQuery.merge(this.get(),jQuery(selector,context))));},addBack:function(selector){return this.add(selector==null?this.prevObject:this.prevObject.filter(selector));}});function sibling(cur,dir){while((cur=cur[dir])&&cur.nodeType!==1){}
220return cur;}
221jQuery.each({parent:function(elem){var parent=elem.parentNode;return parent&&parent.nodeType!==11?parent:null;},parents:function(elem){return dir(elem,"parentNode");},parentsUntil:function(elem,_i,until){return dir(elem,"parentNode",until);},next:function(elem){return sibling(elem,"nextSibling");},prev:function(elem){return sibling(elem,"previousSibling");},nextAll:function(elem){return dir(elem,"nextSibling");},prevAll:function(elem){return dir(elem,"previousSibling");},nextUntil:function(elem,_i,until){return dir(elem,"nextSibling",until);},prevUntil:function(elem,_i,until){return dir(elem,"previousSibling",until);},siblings:function(elem){return siblings((elem.parentNode||{}).firstChild,elem);},children:function(elem){return siblings(elem.firstChild);},contents:function(elem){if(elem.contentDocument!=null&&getProto(elem.contentDocument)){return elem.contentDocument;}
222if(nodeName(elem,"template")){elem=elem.content||elem;}
223return jQuery.merge([],elem.childNodes);}},function(name,fn){jQuery.fn[name]=function(until,selector){var matched=jQuery.map(this,fn,until);if(name.slice(-5)!=="Until"){selector=until;}
224if(selector&&typeof selector==="string"){matched=jQuery.filter(selector,matched);}
225if(this.length>1){if(!guaranteedUnique[name]){jQuery.uniqueSort(matched);}
226if(rparentsprev.test(name)){matched.reverse();}}
227return this.pushStack(matched);};});var rnothtmlwhite=(/[^\x20\t\r\n\f]+/g);function createOptions(options){var object={};jQuery.each(options.match(rnothtmlwhite)||[],function(_,flag){object[flag]=true;});return object;}
228jQuery.Callbacks=function(options){options=typeof options==="string"?createOptions(options):jQuery.extend({},options);var
229firing,memory,fired,locked,list=[],queue=[],firingIndex=-1,fire=function(){locked=locked||options.once;fired=firing=true;for(;queue.length;firingIndex=-1){memory=queue.shift();while(++firingIndex<list.length){if(list[firingIndex].apply(memory[0],memory[1])===false&&options.stopOnFalse){firingIndex=list.length;memory=false;}}}
230if(!options.memory){memory=false;}
231firing=false;if(locked){if(memory){list=[];}else{list="";}}},self={add:function(){if(list){if(memory&&!firing){firingIndex=list.length-1;queue.push(memory);}
232(function add(args){jQuery.each(args,function(_,arg){if(isFunction(arg)){if(!options.unique||!self.has(arg)){list.push(arg);}}else if(arg&&arg.length&&toType(arg)!=="string"){add(arg);}});})(arguments);if(memory&&!firing){fire();}}
233return this;},remove:function(){jQuery.each(arguments,function(_,arg){var index;while((index=jQuery.inArray(arg,list,index))>-1){list.splice(index,1);if(index<=firingIndex){firingIndex--;}}});return this;},has:function(fn){return fn?jQuery.inArray(fn,list)>-1:list.length>0;},empty:function(){if(list){list=[];}
234return this;},disable:function(){locked=queue=[];list=memory="";return this;},disabled:function(){return!list;},lock:function(){locked=queue=[];if(!memory&&!firing){list=memory="";}
235return this;},locked:function(){return!!locked;},fireWith:function(context,args){if(!locked){args=args||[];args=[context,args.slice?args.slice():args];queue.push(args);if(!firing){fire();}}
236return this;},fire:function(){self.fireWith(this,arguments);return this;},fired:function(){return!!fired;}};return self;};function Identity(v){return v;}
237function Thrower(ex){throw ex;}
238function adoptValue(value,resolve,reject,noValue){var method;try{if(value&&isFunction((method=value.promise))){method.call(value).done(resolve).fail(reject);}else if(value&&isFunction((method=value.then))){method.call(value,resolve,reject);}else{resolve.apply(undefined,[value].slice(noValue));}
239}catch(value){reject.apply(undefined,[value]);}}
240jQuery.extend({Deferred:function(func){var tuples=[["notify","progress",jQuery.Callbacks("memory"),jQuery.Callbacks("memory"),2],["resolve","done",jQuery.Callbacks("once memory"),jQuery.Callbacks("once memory"),0,"resolved"],["reject","fail",jQuery.Callbacks("once memory"),jQuery.Callbacks("once memory"),1,"rejected"]],state="pending",promise={state:function(){return state;},always:function(){deferred.done(arguments).fail(arguments);return this;},"catch":function(fn){return promise.then(null,fn);},pipe:function(){var fns=arguments;return jQuery.Deferred(function(newDefer){jQuery.each(tuples,function(_i,tuple){var fn=isFunction(fns[tuple[4]])&&fns[tuple[4]];deferred[tuple[1]](function(){var returned=fn&&fn.apply(this,arguments);if(returned&&isFunction(returned.promise)){returned.promise()
241.progress(newDefer.notify)
242.done(newDefer.resolve)
243.fail(newDefer.reject);}else{newDefer[tuple[0]+"With"](this,fn?[returned]:arguments);}});});fns=null;}).promise();},then:function(onFulfilled,onRejected,onProgress){var maxDepth=0;function resolve(depth,deferred,handler,special){return function(){var that=this,args=arguments,mightThrow=function(){var returned,then;if(depth<maxDepth){return;}
244returned=handler.apply(that,args);if(returned===deferred.promise()){throw new TypeError("Thenable self-resolution");}
245then=returned&&(typeof returned==="object"||typeof returned==="function")&&returned.then;if(isFunction(then)){if(special){then.call(returned,resolve(maxDepth,deferred,Identity,special),resolve(maxDepth,deferred,Thrower,special));}else{maxDepth++;then.call(returned,resolve(maxDepth,deferred,Identity,special),resolve(maxDepth,deferred,Thrower,special),resolve(maxDepth,deferred,Identity,deferred.notifyWith));}
246}else{if(handler!==Identity){that=undefined;args=[returned];}
247(special||deferred.resolveWith)(that,args);}},process=special?mightThrow:function(){try{mightThrow();}catch(e){if(jQuery.Deferred.exceptionHook){jQuery.Deferred.exceptionHook(e,process.stackTrace);}
248if(depth+1>=maxDepth){if(handler!==Thrower){that=undefined;args=[e];}
249deferred.rejectWith(that,args);}}};if(depth){process();}else{if(jQuery.Deferred.getStackHook){process.stackTrace=jQuery.Deferred.getStackHook();}
250window.setTimeout(process);}};}
251return jQuery.Deferred(function(newDefer){tuples[0][3].add(resolve(0,newDefer,isFunction(onProgress)?onProgress:Identity,newDefer.notifyWith));tuples[1][3].add(resolve(0,newDefer,isFunction(onFulfilled)?onFulfilled:Identity));tuples[2][3].add(resolve(0,newDefer,isFunction(onRejected)?onRejected:Thrower));}).promise();},promise:function(obj){return obj!=null?jQuery.extend(obj,promise):promise;}},deferred={};jQuery.each(tuples,function(i,tuple){var list=tuple[2],stateString=tuple[5];promise[tuple[1]]=list.add;if(stateString){list.add(function(){state=stateString;},tuples[3-i][2].disable,tuples[3-i][3].disable,tuples[0][2].lock,tuples[0][3].lock);}
252list.add(tuple[3].fire);deferred[tuple[0]]=function(){deferred[tuple[0]+"With"](this===deferred?undefined:this,arguments);return this;};deferred[tuple[0]+"With"]=list.fireWith;});promise.promise(deferred);if(func){func.call(deferred,deferred);}
253return deferred;},when:function(singleValue){var
254remaining=arguments.length,i=remaining,resolveContexts=Array(i),resolveValues=slice.call(arguments),primary=jQuery.Deferred(),updateFunc=function(i){return function(value){resolveContexts[i]=this;resolveValues[i]=arguments.length>1?slice.call(arguments):value;if(!(--remaining)){primary.resolveWith(resolveContexts,resolveValues);}};};if(remaining<=1){adoptValue(singleValue,primary.done(updateFunc(i)).resolve,primary.reject,!remaining);if(primary.state()==="pending"||isFunction(resolveValues[i]&&resolveValues[i].then)){return primary.then();}}
255while(i--){adoptValue(resolveValues[i],updateFunc(i),primary.reject);}
256return primary.promise();}});var rerrorNames=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;jQuery.Deferred.exceptionHook=function(error,stack){if(window.console&&window.console.warn&&error&&rerrorNames.test(error.name)){window.console.warn("jQuery.Deferred exception: "+error.message,error.stack,stack);}};jQuery.readyException=function(error){window.setTimeout(function(){throw error;});};var readyList=jQuery.Deferred();jQuery.fn.ready=function(fn){readyList
257.then(fn)
258.catch(function(error){jQuery.readyException(error);});return this;};jQuery.extend({isReady:false,readyWait:1,ready:function(wait){if(wait===true?--jQuery.readyWait:jQuery.isReady){return;}
259jQuery.isReady=true;if(wait!==true&&--jQuery.readyWait>0){return;}
260readyList.resolveWith(document,[jQuery]);}});jQuery.ready.then=readyList.then;function completed(){document.removeEventListener("DOMContentLoaded",completed);window.removeEventListener("load",completed);jQuery.ready();}
261if(document.readyState==="complete"||(document.readyState!=="loading"&&!document.documentElement.doScroll)){window.setTimeout(jQuery.ready);}else{document.addEventListener("DOMContentLoaded",completed);window.addEventListener("load",completed);}
262var access=function(elems,fn,key,value,chainable,emptyGet,raw){var i=0,len=elems.length,bulk=key==null;if(toType(key)==="object"){chainable=true;for(i in key){access(elems,fn,i,key[i],true,emptyGet,raw);}
263}else if(value!==undefined){chainable=true;if(!isFunction(value)){raw=true;}
264if(bulk){if(raw){fn.call(elems,value);fn=null;}else{bulk=fn;fn=function(elem,_key,value){return bulk.call(jQuery(elem),value);};}}
265if(fn){for(;i<len;i++){fn(elems[i],key,raw?value:value.call(elems[i],i,fn(elems[i],key)));}}}
266if(chainable){return elems;}
267if(bulk){return fn.call(elems);}
268return len?fn(elems[0],key):emptyGet;};var rmsPrefix=/^-ms-/,rdashAlpha=/-([a-z])/g;function fcamelCase(_all,letter){return letter.toUpperCase();}
269function camelCase(string){return string.replace(rmsPrefix,"ms-").replace(rdashAlpha,fcamelCase);}
270var acceptData=function(owner){return owner.nodeType===1||owner.nodeType===9||!(+owner.nodeType);};function Data(){this.expando=jQuery.expando+Data.uid++;}
271Data.uid=1;Data.prototype={cache:function(owner){var value=owner[this.expando];if(!value){value={};if(acceptData(owner)){if(owner.nodeType){owner[this.expando]=value;}else{Object.defineProperty(owner,this.expando,{value:value,configurable:true});}}}
272return value;},set:function(owner,data,value){var prop,cache=this.cache(owner);if(typeof data==="string"){cache[camelCase(data)]=value;}else{for(prop in data){cache[camelCase(prop)]=data[prop];}}
273return cache;},get:function(owner,key){return key===undefined?this.cache(owner):owner[this.expando]&&owner[this.expando][camelCase(key)];},access:function(owner,key,value){if(key===undefined||((key&&typeof key==="string")&&value===undefined)){return this.get(owner,key);}
274this.set(owner,key,value);return value!==undefined?value:key;},remove:function(owner,key){var i,cache=owner[this.expando];if(cache===undefined){return;}
275if(key!==undefined){if(Array.isArray(key)){key=key.map(camelCase);}else{key=camelCase(key);key=key in cache?[key]:(key.match(rnothtmlwhite)||[]);}
276i=key.length;while(i--){delete cache[key[i]];}}
277if(key===undefined||jQuery.isEmptyObject(cache)){if(owner.nodeType){owner[this.expando]=undefined;}else{delete owner[this.expando];}}},hasData:function(owner){var cache=owner[this.expando];return cache!==undefined&&!jQuery.isEmptyObject(cache);}};var dataPriv=new Data();var dataUser=new Data();var rbrace=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,rmultiDash=/[A-Z]/g;function getData(data){if(data==="true"){return true;}
278if(data==="false"){return false;}
279if(data==="null"){return null;}
280if(data===+data+""){return+data;}
281if(rbrace.test(data)){return JSON.parse(data);}
282return data;}
283function dataAttr(elem,key,data){var name;if(data===undefined&&elem.nodeType===1){name="data-"+key.replace(rmultiDash,"-$&").toLowerCase();data=elem.getAttribute(name);if(typeof data==="string"){try{data=getData(data);}catch(e){}
284dataUser.set(elem,key,data);}else{data=undefined;}}
285return data;}
286jQuery.extend({hasData:function(elem){return dataUser.hasData(elem)||dataPriv.hasData(elem);},data:function(elem,name,data){return dataUser.access(elem,name,data);},removeData:function(elem,name){dataUser.remove(elem,name);},_data:function(elem,name,data){return dataPriv.access(elem,name,data);},_removeData:function(elem,name){dataPriv.remove(elem,name);}});jQuery.fn.extend({data:function(key,value){var i,name,data,elem=this[0],attrs=elem&&elem.attributes;if(key===undefined){if(this.length){data=dataUser.get(elem);if(elem.nodeType===1&&!dataPriv.get(elem,"hasDataAttrs")){i=attrs.length;while(i--){if(attrs[i]){name=attrs[i].name;if(name.indexOf("data-")===0){name=camelCase(name.slice(5));dataAttr(elem,name,data[name]);}}}
287dataPriv.set(elem,"hasDataAttrs",true);}}
288return data;}
289if(typeof key==="object"){return this.each(function(){dataUser.set(this,key);});}
290return access(this,function(value){var data;if(elem&&value===undefined){data=dataUser.get(elem,key);if(data!==undefined){return data;}
291data=dataAttr(elem,key);if(data!==undefined){return data;}
292return;}
293this.each(function(){dataUser.set(this,key,value);});},null,value,arguments.length>1,null,true);},removeData:function(key){return this.each(function(){dataUser.remove(this,key);});}});jQuery.extend({queue:function(elem,type,data){var queue;if(elem){type=(type||"fx")+"queue";queue=dataPriv.get(elem,type);if(data){if(!queue||Array.isArray(data)){queue=dataPriv.access(elem,type,jQuery.makeArray(data));}else{queue.push(data);}}
294return queue||[];}},dequeue:function(elem,type){type=type||"fx";var queue=jQuery.queue(elem,type),startLength=queue.length,fn=queue.shift(),hooks=jQuery._queueHooks(elem,type),next=function(){jQuery.dequeue(elem,type);};if(fn==="inprogress"){fn=queue.shift();startLength--;}
295if(fn){if(type==="fx"){queue.unshift("inprogress");}
296delete hooks.stop;fn.call(elem,next,hooks);}
297if(!startLength&&hooks){hooks.empty.fire();}},_queueHooks:function(elem,type){var key=type+"queueHooks";return dataPriv.get(elem,key)||dataPriv.access(elem,key,{empty:jQuery.Callbacks("once memory").add(function(){dataPriv.remove(elem,[type+"queue",key]);})});}});jQuery.fn.extend({queue:function(type,data){var setter=2;if(typeof type!=="string"){data=type;type="fx";setter--;}
298if(arguments.length<setter){return jQuery.queue(this[0],type);}
299return data===undefined?this:this.each(function(){var queue=jQuery.queue(this,type,data);jQuery._queueHooks(this,type);if(type==="fx"&&queue[0]!=="inprogress"){jQuery.dequeue(this,type);}});},dequeue:function(type){return this.each(function(){jQuery.dequeue(this,type);});},clearQueue:function(type){return this.queue(type||"fx",[]);},promise:function(type,obj){var tmp,count=1,defer=jQuery.Deferred(),elements=this,i=this.length,resolve=function(){if(!(--count)){defer.resolveWith(elements,[elements]);}};if(typeof type!=="string"){obj=type;type=undefined;}
300type=type||"fx";while(i--){tmp=dataPriv.get(elements[i],type+"queueHooks");if(tmp&&tmp.empty){count++;tmp.empty.add(resolve);}}
301resolve();return defer.promise(obj);}});var pnum=(/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/).source;var rcssNum=new RegExp("^(?:([+-])=|)("+pnum+")([a-z%]*)$","i");var cssExpand=["Top","Right","Bottom","Left"];var documentElement=document.documentElement;var isAttached=function(elem){return jQuery.contains(elem.ownerDocument,elem);},composed={composed:true};if(documentElement.getRootNode){isAttached=function(elem){return jQuery.contains(elem.ownerDocument,elem)||elem.getRootNode(composed)===elem.ownerDocument;};}
302var isHiddenWithinTree=function(elem,el){elem=el||elem;return elem.style.display==="none"||elem.style.display===""&&isAttached(elem)&&jQuery.css(elem,"display")==="none";};function adjustCSS(elem,prop,valueParts,tween){var adjusted,scale,maxIterations=20,currentValue=tween?function(){return tween.cur();}:function(){return jQuery.css(elem,prop,"");},initial=currentValue(),unit=valueParts&&valueParts[3]||(jQuery.cssNumber[prop]?"":"px"),initialInUnit=elem.nodeType&&(jQuery.cssNumber[prop]||unit!=="px"&&+initial)&&rcssNum.exec(jQuery.css(elem,prop));if(initialInUnit&&initialInUnit[3]!==unit){initial=initial/2;unit=unit||initialInUnit[3];initialInUnit=+initial||1;while(maxIterations--){jQuery.style(elem,prop,initialInUnit+unit);if((1-scale)*(1-(scale=currentValue()/initial||0.5))<=0){maxIterations=0;}
303initialInUnit=initialInUnit/scale;}
304initialInUnit=initialInUnit*2;jQuery.style(elem,prop,initialInUnit+unit);valueParts=valueParts||[];}
305if(valueParts){initialInUnit=+initialInUnit||+initial||0;adjusted=valueParts[1]?initialInUnit+(valueParts[1]+1)*valueParts[2]:+valueParts[2];if(tween){tween.unit=unit;tween.start=initialInUnit;tween.end=adjusted;}}
306return adjusted;}
307var defaultDisplayMap={};function getDefaultDisplay(elem){var temp,doc=elem.ownerDocument,nodeName=elem.nodeName,display=defaultDisplayMap[nodeName];if(display){return display;}
308temp=doc.body.appendChild(doc.createElement(nodeName));display=jQuery.css(temp,"display");temp.parentNode.removeChild(temp);if(display==="none"){display="block";}
309defaultDisplayMap[nodeName]=display;
vendor: 5,975 bytes, lines 309-346
309return display;}
310function showHide(elements,show){var display,elem,values=[],index=0,length=elements.length;for(;index<length;index++){elem=elements[index];if(!elem.style){continue;}
311display=elem.style.display;if(show){if(display==="none"){values[index]=dataPriv.get(elem,"display")||null;if(!values[index]){elem.style.display="";}}
312if(elem.style.display===""&&isHiddenWithinTree(elem)){values[index]=getDefaultDisplay(elem);}}else{if(display!=="none"){values[index]="none";dataPriv.set(elem,"display",display);}}}
313for(index=0;index<length;index++){if(values[index]!=null){elements[index].style.display=values[index];}}
314return elements;}
315jQuery.fn.extend({show:function(){return showHide(this,true);},hide:function(){return showHide(this);},toggle:function(state){if(typeof state==="boolean"){return state?this.show():this.hide();}
316return this.each(function(){if(isHiddenWithinTree(this)){jQuery(this).show();}else{jQuery(this).hide();}});}});var rcheckableType=(/^(?:checkbox|radio)$/i);var rtagName=(/<([a-z][^\/\0>\x20\t\r\n\f]*)/i);var rscriptType=(/^$|^module$|\/(?:java|ecma)script/i);(function(){var fragment=document.createDocumentFragment(),div=fragment.appendChild(document.createElement("div")),input=document.createElement("input");input.setAttribute("type","radio");input.setAttribute("checked","checked");input.setAttribute("name","t");div.appendChild(input);support.checkClone=div.cloneNode(true).cloneNode(true).lastChild.checked;div.innerHTML="<textarea>x</textarea>";support.noCloneChecked=!!div.cloneNode(true).lastChild.defaultValue;div.innerHTML="<option></option>";support.option=!!div.lastChild;})();var wrapMap={thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};wrapMap.tbody=wrapMap.tfoot=wrapMap.colgroup=wrapMap.caption=wrapMap.thead;wrapMap.th=wrapMap.td;if(!support.option){wrapMap.optgroup=wrapMap.option=[1,"<select multiple='multiple'>","</select>"];}
317function getAll(context,tag){var ret;if(typeof context.getElementsByTagName!=="undefined"){ret=context.getElementsByTagName(tag||"*");}else if(typeof context.querySelectorAll!=="undefined"){ret=context.querySelectorAll(tag||"*");}else{ret=[];}
318if(tag===undefined||tag&&nodeName(context,tag)){return jQuery.merge([context],ret);}
319return ret;}
320function setGlobalEval(elems,refElements){var i=0,l=elems.length;for(;i<l;i++){dataPriv.set(elems[i],"globalEval",!refElements||dataPriv.get(refElements[i],"globalEval"));}}
321var rhtml=/<|&#?\w+;/;function buildFragment(elems,context,scripts,selection,ignored){var elem,tmp,tag,wrap,attached,j,fragment=context.createDocumentFragment(),nodes=[],i=0,l=elems.length;for(;i<l;i++){elem=elems[i];if(elem||elem===0){if(toType(elem)==="object"){jQuery.merge(nodes,elem.nodeType?[elem]:elem);}else if(!rhtml.test(elem)){nodes.push(context.createTextNode(elem));}else{tmp=tmp||fragment.appendChild(context.createElement("div"));tag=(rtagName.exec(elem)||["",""])[1].toLowerCase();wrap=wrapMap[tag]||wrapMap._default;tmp.innerHTML=wrap[1]+jQuery.htmlPrefilter(elem)+wrap[2];j=wrap[0];while(j--){tmp=tmp.lastChild;}
322jQuery.merge(nodes,tmp.childNodes);tmp=fragment.firstChild;tmp.textContent="";}}}
323fragment.textContent="";i=0;while((elem=nodes[i++])){if(selection&&jQuery.inArray(elem,selection)>-1){if(ignored){ignored.push(elem);}
324continue;}
325attached=isAttached(elem);tmp=getAll(fragment.appendChild(elem),"script");if(attached){setGlobalEval(tmp);}
326if(scripts){j=0;while((elem=tmp[j++])){if(rscriptType.test(elem.type||"")){scripts.push(elem);}}}}
327return fragment;}
328var rtypenamespace=/^([^.]*)(?:\.(.+)|)/;function returnTrue(){return true;}
329function returnFalse(){return false;}
330function expectSync(elem,type){return(elem===safeActiveElement())===(type==="focus");}
331function safeActiveElement(){try{return document.activeElement;}catch(err){}}
332function on(elem,types,selector,data,fn,one){var origFn,type;if(typeof types==="object"){if(typeof selector!=="string"){data=data||selector;selector=undefined;}
333for(type in types){on(elem,type,selector,data,types[type],one);}
334return elem;}
335if(data==null&&fn==null){fn=selector;data=selector=undefined;}else if(fn==null){if(typeof selector==="string"){fn=data;data=undefined;}else{fn=data;data=selector;selector=undefined;}}
336if(fn===false){fn=returnFalse;}else if(!fn){return elem;}
337if(one===1){origFn=fn;fn=function(event){jQuery().off(event);return origFn.apply(this,arguments);};fn.guid=origFn.guid||(origFn.guid=jQuery.guid++);}
338return elem.each(function(){jQuery.event.add(this,types,fn,data,selector);});}
339jQuery.event={global:{},add:function(elem,types,handler,data,selector){var handleObjIn,eventHandle,tmp,events,t,handleObj,special,handlers,type,namespaces,origType,elemData=dataPriv.get(elem);if(!acceptData(elem)){return;}
340if(handler.handler){handleObjIn=handler;handler=handleObjIn.handler;selector=handleObjIn.selector;}
341if(selector){jQuery.find.matchesSelector(documentElement,selector);}
342if(!handler.guid){handler.guid=jQuery.guid++;}
343if(!(events=elemData.events)){events=elemData.events=Object.create(null);}
344if(!(eventHandle=elemData.handle)){eventHandle=elemData.handle=function(e){return typeof jQuery!=="undefined"&&jQuery.event.triggered!==e.type?jQuery.event.dispatch.apply(elem,arguments):undefined;};}
345types=(types||"").match(rnothtmlwhite)||[""];t=types.length;while(t--){tmp=rtypenamespace.exec(types[t])||[];type=origType=tmp[1];namespaces=(tmp[2]||"").split(".").sort();if(!type){continue;}
346special=jQuery.event.special[type]||{};type=(selector?special.delegateType:special.bindType)||type;special=jQuery.event.special[type]||{};handleObj=jQuery.extend({type:type,origType:origType,data:data,handler:handler,guid:handler.guid,selector:selector,needsContext:selector&&jQuery.expr.match.needsContext.test(selector),namespace:namespaces.join(".")},handleObjIn);if(!(handlers=events[type])){handlers=events[type]=[];handlers.delegateCount=0;
vendor: 3,673 bytes, lines 346-362
346if(!special.setup||special.setup.call(elem,data,namespaces,eventHandle)===false){if(elem.addEventListener){elem.addEventListener(type,eventHandle);}}}
347if(special.add){special.add.call(elem,handleObj);if(!handleObj.handler.guid){handleObj.handler.guid=handler.guid;}}
348if(selector){handlers.splice(handlers.delegateCount++,0,handleObj);}else{handlers.push(handleObj);}
349jQuery.event.global[type]=true;}},remove:function(elem,types,handler,selector,mappedTypes){var j,origCount,tmp,events,t,handleObj,special,handlers,type,namespaces,origType,elemData=dataPriv.hasData(elem)&&dataPriv.get(elem);if(!elemData||!(events=elemData.events)){return;}
350types=(types||"").match(rnothtmlwhite)||[""];t=types.length;while(t--){tmp=rtypenamespace.exec(types[t])||[];type=origType=tmp[1];namespaces=(tmp[2]||"").split(".").sort();if(!type){for(type in events){jQuery.event.remove(elem,type+types[t],handler,selector,true);}
351continue;}
352special=jQuery.event.special[type]||{};type=(selector?special.delegateType:special.bindType)||type;handlers=events[type]||[];tmp=tmp[2]&&new RegExp("(^|\\.)"+namespaces.join("\\.(?:.*\\.|)")+"(\\.|$)");origCount=j=handlers.length;while(j--){handleObj=handlers[j];if((mappedTypes||origType===handleObj.origType)&&(!handler||handler.guid===handleObj.guid)&&(!tmp||tmp.test(handleObj.namespace))&&(!selector||selector===handleObj.selector||selector==="**"&&handleObj.selector)){handlers.splice(j,1);if(handleObj.selector){handlers.delegateCount--;}
353if(special.remove){special.remove.call(elem,handleObj);}}}
354if(origCount&&!handlers.length){if(!special.teardown||special.teardown.call(elem,namespaces,elemData.handle)===false){jQuery.removeEvent(elem,type,elemData.handle);}
355delete events[type];}}
356if(jQuery.isEmptyObject(events)){dataPriv.remove(elem,"handle events");}},dispatch:function(nativeEvent){var i,j,ret,matched,handleObj,handlerQueue,args=new Array(arguments.length),event=jQuery.event.fix(nativeEvent),handlers=(dataPriv.get(this,"events")||Object.create(null))[event.type]||[],special=jQuery.event.special[event.type]||{};args[0]=event;for(i=1;i<arguments.length;i++){args[i]=arguments[i];}
357event.delegateTarget=this;if(special.preDispatch&&special.preDispatch.call(this,event)===false){return;}
358handlerQueue=jQuery.event.handlers.call(this,event,handlers);i=0;while((matched=handlerQueue[i++])&&!event.isPropagationStopped()){event.currentTarget=matched.elem;j=0;while((handleObj=matched.handlers[j++])&&!event.isImmediatePropagationStopped()){if(!event.rnamespace||handleObj.namespace===false||event.rnamespace.test(handleObj.namespace)){event.handleObj=handleObj;event.data=handleObj.data;ret=((jQuery.event.special[handleObj.origType]||{}).handle||handleObj.handler).apply(matched.elem,args);if(ret!==undefined){if((event.result=ret)===false){event.preventDefault();event.stopPropagation();}}}}}
359if(special.postDispatch){special.postDispatch.call(this,event);}
360return event.result;},handlers:function(event,handlers){var i,handleObj,sel,matchedHandlers,matchedSelectors,handlerQueue=[],delegateCount=handlers.delegateCount,cur=event.target;if(delegateCount&&cur.nodeType&&!(event.type==="click"&&event.button>=1)){for(;cur!==this;cur=cur.parentNode||this){if(cur.nodeType===1&&!(event.type==="click"&&cur.disabled===true)){matchedHandlers=[];matchedSelectors={};for(i=0;i<delegateCount;i++){handleObj=handlers[i];sel=handleObj.selector+" ";if(matchedSelectors[sel]===undefined){matchedSelectors[sel]=handleObj.needsContext?jQuery(sel,this).index(cur)>-1:jQuery.find(sel,this,null,[cur]).length;}
361if(matchedSelectors[sel]){matchedHandlers.push(handleObj);}}
362if(matchedHandlers.length){handlerQueue.push({elem:cur,handlers:matchedHandlers});}}
vendor: 4,349 bytes, lines 362-376
362}}
363cur=this;if(delegateCount<handlers.length){handlerQueue.push({elem:cur,handlers:handlers.slice(delegateCount)});}
364return handlerQueue;},addProp:function(name,hook){Object.defineProperty(jQuery.Event.prototype,name,{enumerable:true,configurable:true,get:isFunction(hook)?function(){if(this.originalEvent){return hook(this.originalEvent);}}:function(){if(this.originalEvent){return this.originalEvent[name];}},set:function(value){Object.defineProperty(this,name,{enumerable:true,configurable:true,writable:true,value:value});}});},fix:function(originalEvent){return originalEvent[jQuery.expando]?originalEvent:new jQuery.Event(originalEvent);},special:{load:{noBubble:true},click:{setup:function(data){var el=this||data;if(rcheckableType.test(el.type)&&el.click&&nodeName(el,"input")){leverageNative(el,"click",returnTrue);}
365return false;},trigger:function(data){var el=this||data;if(rcheckableType.test(el.type)&&el.click&&nodeName(el,"input")){leverageNative(el,"click");}
366return true;},_default:function(event){var target=event.target;return rcheckableType.test(target.type)&&target.click&&nodeName(target,"input")&&dataPriv.get(target,"click")||nodeName(target,"a");}},beforeunload:{postDispatch:function(event){if(event.result!==undefined&&event.originalEvent){event.originalEvent.returnValue=event.result;}}}}};function leverageNative(el,type,expectSync){if(!expectSync){if(dataPriv.get(el,type)===undefined){jQuery.event.add(el,type,returnTrue);}
367return;}
368dataPriv.set(el,type,false);jQuery.event.add(el,type,{namespace:false,handler:function(event){var notAsync,result,saved=dataPriv.get(this,type);if((event.isTrigger&1)&&this[type]){if(!saved.length){saved=slice.call(arguments);dataPriv.set(this,type,saved);notAsync=expectSync(this,type);this[type]();result=dataPriv.get(this,type);if(saved!==result||notAsync){dataPriv.set(this,type,false);}else{result={};}
369if(saved!==result){event.stopImmediatePropagation();event.preventDefault();return result&&result.value;}
370}else if((jQuery.event.special[type]||{}).delegateType){event.stopPropagation();}
371}else if(saved.length){dataPriv.set(this,type,{value:jQuery.event.trigger(jQuery.extend(saved[0],jQuery.Event.prototype),saved.slice(1),this)});event.stopImmediatePropagation();}}});}
372jQuery.removeEvent=function(elem,type,handle){if(elem.removeEventListener){elem.removeEventListener(type,handle);}};jQuery.Event=function(src,props){if(!(this instanceof jQuery.Event)){return new jQuery.Event(src,props);}
373if(src&&src.type){this.originalEvent=src;this.type=src.type;this.isDefaultPrevented=src.defaultPrevented||src.defaultPrevented===undefined&&src.returnValue===false?returnTrue:returnFalse;this.target=(src.target&&src.target.nodeType===3)?src.target.parentNode:src.target;this.currentTarget=src.currentTarget;this.relatedTarget=src.relatedTarget;}else{this.type=src;}
374if(props){jQuery.extend(this,props);}
375this.timeStamp=src&&src.timeStamp||Date.now();this[jQuery.expando]=true;};jQuery.Event.prototype={constructor:jQuery.Event,isDefaultPrevented:returnFalse,isPropagationStopped:returnFalse,isImmediatePropagationStopped:returnFalse,isSimulated:false,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=returnTrue;if(e&&!this.isSimulated){e.preventDefault();}},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=returnTrue;if(e&&!this.isSimulated){e.stopPropagation();}},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=returnTrue;if(e&&!this.isSimulated){e.stopImmediatePropagation();}
376this.stopPropagation();}};jQuery.each({altKey:true,bubbles:true,cancelable:true,changedTouches:true,ctrlKey:true,detail:true,eventPhase:true,metaKey:true,pageX:true,pageY:true,shiftKey:true,view:true,"char":true,code:true,charCode:true,key:true,keyCode:true,button:true,buttons:true,clientX:true,clientY:true,offsetX:true,offsetY:true,pointerId:true,pointerType:true,screenX:true,screenY:true,targetTouches:true,toElement:true,touches:true,which:true},jQuery.event.addProp);jQuery.each({focus:"focusin",blur:"focusout"},function(type,delegateType){jQuery.event.special[type]={setup:function(){leverageNative(this,type,expectSync);return false;},trigger:function(){leverageNative(this,type);return true;},_default:function(event){return dataPriv.get(event.target,type);},delegateType:delegateType};});
vendor: 4,529 bytes, lines 376-403
376jQuery.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(orig,fix){jQuery.event.special[orig]={delegateType:fix,bindType:fix,handle:function(event){var ret,target=this,related=event.relatedTarget,handleObj=event.handleObj;if(!related||(related!==target&&!jQuery.contains(target,related))){event.type=handleObj.origType;ret=handleObj.handler.apply(this,arguments);event.type=fix;}
377return ret;}};});jQuery.fn.extend({on:function(types,selector,data,fn){return on(this,types,selector,data,fn);},one:function(types,selector,data,fn){return on(this,types,selector,data,fn,1);},off:function(types,selector,fn){var handleObj,type;if(types&&types.preventDefault&&types.handleObj){handleObj=types.handleObj;jQuery(types.delegateTarget).off(handleObj.namespace?handleObj.origType+"."+handleObj.namespace:handleObj.origType,handleObj.selector,handleObj.handler);return this;}
378if(typeof types==="object"){for(type in types){this.off(type,selector,types[type]);}
379return this;}
380if(selector===false||typeof selector==="function"){fn=selector;selector=undefined;}
381if(fn===false){fn=returnFalse;}
382return this.each(function(){jQuery.event.remove(this,types,fn,selector);});}});var
383rnoInnerhtml=/<script|<style|<link/i,rchecked=/checked\s*(?:[^=]|=\s*.checked.)/i,rcleanScript=/^\s*<!\[CDATA\[|\]\]>\s*$/g;function manipulationTarget(elem,content){if(nodeName(elem,"table")&&nodeName(content.nodeType!==11?content:content.firstChild,"tr")){return jQuery(elem).children("tbody")[0]||elem;}
384return elem;}
385function disableScript(elem){elem.type=(elem.getAttribute("type")!==null)+"/"+elem.type;return elem;}
386function restoreScript(elem){if((elem.type||"").slice(0,5)==="true/"){elem.type=elem.type.slice(5);}else{elem.removeAttribute("type");}
387return elem;}
388function cloneCopyEvent(src,dest){var i,l,type,pdataOld,udataOld,udataCur,events;if(dest.nodeType!==1){return;}
389if(dataPriv.hasData(src)){pdataOld=dataPriv.get(src);events=pdataOld.events;if(events){dataPriv.remove(dest,"handle events");for(type in events){for(i=0,l=events[type].length;i<l;i++){jQuery.event.add(dest,type,events[type][i]);}}}}
390if(dataUser.hasData(src)){udataOld=dataUser.access(src);udataCur=jQuery.extend({},udataOld);dataUser.set(dest,udataCur);}}
391function fixInput(src,dest){var nodeName=dest.nodeName.toLowerCase();if(nodeName==="input"&&rcheckableType.test(src.type)){dest.checked=src.checked;}else if(nodeName==="input"||nodeName==="textarea"){dest.defaultValue=src.defaultValue;}}
392function domManip(collection,args,callback,ignored){args=flat(args);var fragment,first,scripts,hasScripts,node,doc,i=0,l=collection.length,iNoClone=l-1,value=args[0],valueIsFunction=isFunction(value);if(valueIsFunction||(l>1&&typeof value==="string"&&!support.checkClone&&rchecked.test(value))){return collection.each(function(index){var self=collection.eq(index);if(valueIsFunction){args[0]=value.call(this,index,self.html());}
393domManip(self,args,callback,ignored);});}
394if(l){fragment=buildFragment(args,collection[0].ownerDocument,false,collection,ignored);first=fragment.firstChild;if(fragment.childNodes.length===1){fragment=first;}
395if(first||ignored){scripts=jQuery.map(getAll(fragment,"script"),disableScript);hasScripts=scripts.length;for(;i<l;i++){node=fragment;if(i!==iNoClone){node=jQuery.clone(node,true,true);if(hasScripts){jQuery.merge(scripts,getAll(node,"script"));}}
396callback.call(collection[i],node,i);}
397if(hasScripts){doc=scripts[scripts.length-1].ownerDocument;jQuery.map(scripts,restoreScript);for(i=0;i<hasScripts;i++){node=scripts[i];if(rscriptType.test(node.type||"")&&!dataPriv.access(node,"globalEval")&&jQuery.contains(doc,node)){if(node.src&&(node.type||"").toLowerCase()!=="module"){if(jQuery._evalUrl&&!node.noModule){jQuery._evalUrl(node.src,{nonce:node.nonce||node.getAttribute("nonce")},doc);}}else{DOMEval(node.textContent.replace(rcleanScript,""),node,doc);}}}}}}
398return collection;}
399function remove(elem,selector,keepData){var node,nodes=selector?jQuery.filter(selector,elem):elem,i=0;for(;(node=nodes[i])!=null;i++){if(!keepData&&node.nodeType===1){jQuery.cleanData(getAll(node));}
400if(node.parentNode){if(keepData&&isAttached(node)){setGlobalEval(getAll(node,"script"));}
401node.parentNode.removeChild(node);}}
402return elem;}
403jQuery.extend({htmlPrefilter:function(html){return html;},clone:function(elem,dataAndEvents,deepDataAndEvents){var i,l,srcElements,destElements,clone=elem.cloneNode(true),inPage=isAttached(elem);if(!support.noCloneChecked&&(elem.nodeType===1||elem.nodeType===11)&&
vendor: 15,387 bytes, lines 403-485
403!jQuery.isXMLDoc(elem)){destElements=getAll(clone);srcElements=getAll(elem);for(i=0,l=srcElements.length;i<l;i++){fixInput(srcElements[i],destElements[i]);}}
404if(dataAndEvents){if(deepDataAndEvents){srcElements=srcElements||getAll(elem);destElements=destElements||getAll(clone);for(i=0,l=srcElements.length;i<l;i++){cloneCopyEvent(srcElements[i],destElements[i]);}}else{cloneCopyEvent(elem,clone);}}
405destElements=getAll(clone,"script");if(destElements.length>0){setGlobalEval(destElements,!inPage&&getAll(elem,"script"));}
406return clone;},cleanData:function(elems){var data,elem,type,special=jQuery.event.special,i=0;for(;(elem=elems[i])!==undefined;i++){if(acceptData(elem)){if((data=elem[dataPriv.expando])){if(data.events){for(type in data.events){if(special[type]){jQuery.event.remove(elem,type);}else{jQuery.removeEvent(elem,type,data.handle);}}}
407elem[dataPriv.expando]=undefined;}
408if(elem[dataUser.expando]){elem[dataUser.expando]=undefined;}}}}});jQuery.fn.extend({detach:function(selector){return remove(this,selector,true);},remove:function(selector){return remove(this,selector);},text:function(value){return access(this,function(value){return value===undefined?jQuery.text(this):this.empty().each(function(){if(this.nodeType===1||this.nodeType===11||this.nodeType===9){this.textContent=value;}});},null,value,arguments.length);},append:function(){return domManip(this,arguments,function(elem){if(this.nodeType===1||this.nodeType===11||this.nodeType===9){var target=manipulationTarget(this,elem);target.appendChild(elem);}});},prepend:function(){return domManip(this,arguments,function(elem){if(this.nodeType===1||this.nodeType===11||this.nodeType===9){var target=manipulationTarget(this,elem);target.insertBefore(elem,target.firstChild);}});},before:function(){return domManip(this,arguments,function(elem){if(this.parentNode){this.parentNode.insertBefore(elem,this);}});},after:function(){return domManip(this,arguments,function(elem){if(this.parentNode){this.parentNode.insertBefore(elem,this.nextSibling);}});},empty:function(){var elem,i=0;for(;(elem=this[i])!=null;i++){if(elem.nodeType===1){jQuery.cleanData(getAll(elem,false));elem.textContent="";}}
409return this;},clone:function(dataAndEvents,deepDataAndEvents){dataAndEvents=dataAndEvents==null?false:dataAndEvents;deepDataAndEvents=deepDataAndEvents==null?dataAndEvents:deepDataAndEvents;return this.map(function(){return jQuery.clone(this,dataAndEvents,deepDataAndEvents);});},html:function(value){return access(this,function(value){var elem=this[0]||{},i=0,l=this.length;if(value===undefined&&elem.nodeType===1){return elem.innerHTML;}
410if(typeof value==="string"&&!rnoInnerhtml.test(value)&&!wrapMap[(rtagName.exec(value)||["",""])[1].toLowerCase()]){value=jQuery.htmlPrefilter(value);try{for(;i<l;i++){elem=this[i]||{};if(elem.nodeType===1){jQuery.cleanData(getAll(elem,false));elem.innerHTML=value;}}
411elem=0;}catch(e){}}
412if(elem){this.empty().append(value);}},null,value,arguments.length);},replaceWith:function(){var ignored=[];return domManip(this,arguments,function(elem){var parent=this.parentNode;if(jQuery.inArray(this,ignored)<0){jQuery.cleanData(getAll(this));if(parent){parent.replaceChild(elem,this);}}
413},ignored);}});jQuery.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(name,original){jQuery.fn[name]=function(selector){var elems,ret=[],insert=jQuery(selector),last=insert.length-1,i=0;for(;i<=last;i++){elems=i===last?this:this.clone(true);jQuery(insert[i])[original](elems);push.apply(ret,elems.get());}
414return this.pushStack(ret);};});var rnumnonpx=new RegExp("^("+pnum+")(?!px)[a-z%]+$","i");var rcustomProp=/^--/;var getStyles=function(elem){var view=elem.ownerDocument.defaultView;if(!view||!view.opener){view=window;}
415return view.getComputedStyle(elem);};var swap=function(elem,options,callback){var ret,name,old={};for(name in options){old[name]=elem.style[name];elem.style[name]=options[name];}
416ret=callback.call(elem);for(name in options){elem.style[name]=old[name];}
417return ret;};var rboxStyle=new RegExp(cssExpand.join("|"),"i");var whitespace="[\\x20\\t\\r\\n\\f]";var rtrimCSS=new RegExp("^"+whitespace+"+|((?:^|[^\\\\])(?:\\\\.)*)"+whitespace+"+$","g");(function(){function computeStyleTests(){if(!div){return;}
418container.style.cssText="position:absolute;left:-11111px;width:60px;"+
419"margin-top:1px;padding:0;border:0";div.style.cssText="position:relative;display:block;box-sizing:border-box;overflow:scroll;"+
420"margin:auto;border:1px;padding:1px;"+
421"width:60%;top:1%";documentElement.appendChild(container).appendChild(div);var divStyle=window.getComputedStyle(div);pixelPositionVal=divStyle.top!=="1%";reliableMarginLeftVal=roundPixelMeasures(divStyle.marginLeft)===12;div.style.right="60%";pixelBoxStylesVal=roundPixelMeasures(divStyle.right)===36;boxSizingReliableVal=roundPixelMeasures(divStyle.width)===36;div.style.position="absolute";scrollboxSizeVal=roundPixelMeasures(div.offsetWidth/3)===12;documentElement.removeChild(container);div=null;}
422function roundPixelMeasures(measure){return Math.round(parseFloat(measure));}
423var pixelPositionVal,boxSizingReliableVal,scrollboxSizeVal,pixelBoxStylesVal,reliableTrDimensionsVal,reliableMarginLeftVal,container=document.createElement("div"),div=document.createElement("div");if(!div.style){return;}
424div.style.backgroundClip="content-box";div.cloneNode(true).style.backgroundClip="";support.clearCloneStyle=div.style.backgroundClip==="content-box";jQuery.extend(support,{boxSizingReliable:function(){computeStyleTests();return boxSizingReliableVal;},pixelBoxStyles:function(){computeStyleTests();return pixelBoxStylesVal;},pixelPosition:function(){computeStyleTests();return pixelPositionVal;},reliableMarginLeft:function(){computeStyleTests();return reliableMarginLeftVal;},scrollboxSize:function(){computeStyleTests();return scrollboxSizeVal;},reliableTrDimensions:function(){var table,tr,trChild,trStyle;if(reliableTrDimensionsVal==null){table=document.createElement("table");tr=document.createElement("tr");trChild=document.createElement("div");table.style.cssText="position:absolute;left:-11111px;border-collapse:separate";tr.style.cssText="border:1px solid";tr.style.height="1px";trChild.style.height="9px";trChild.style.display="block";documentElement
425.appendChild(table)
426.appendChild(tr)
427.appendChild(trChild);trStyle=window.getComputedStyle(tr);reliableTrDimensionsVal=(parseInt(trStyle.height,10)+
428parseInt(trStyle.borderTopWidth,10)+
429parseInt(trStyle.borderBottomWidth,10))===tr.offsetHeight;documentElement.removeChild(table);}
430return reliableTrDimensionsVal;}});})();function curCSS(elem,name,computed){var width,minWidth,maxWidth,ret,isCustomProp=rcustomProp.test(name),style=elem.style;computed=computed||getStyles(elem);if(computed){ret=computed.getPropertyValue(name)||computed[name];if(isCustomProp){ret=ret.replace(rtrimCSS,"$1");}
431if(ret===""&&!isAttached(elem)){ret=jQuery.style(elem,name);}
432if(!support.pixelBoxStyles()&&rnumnonpx.test(ret)&&rboxStyle.test(name)){width=style.width;minWidth=style.minWidth;maxWidth=style.maxWidth;style.minWidth=style.maxWidth=style.width=ret;ret=computed.width;style.width=width;style.minWidth=minWidth;style.maxWidth=maxWidth;}}
433return ret!==undefined?ret+"":ret;}
434function addGetHookIf(conditionFn,hookFn){return{get:function(){if(conditionFn()){delete this.get;return;}
435return(this.get=hookFn).apply(this,arguments);}};}
436var cssPrefixes=["Webkit","Moz","ms"],emptyStyle=document.createElement("div").style,vendorProps={};function vendorPropName(name){var capName=name[0].toUpperCase()+name.slice(1),i=cssPrefixes.length;while(i--){name=cssPrefixes[i]+capName;if(name in emptyStyle){return name;}}}
437function finalPropName(name){var final=jQuery.cssProps[name]||vendorProps[name];if(final){return final;}
438if(name in emptyStyle){return name;}
439return vendorProps[name]=vendorPropName(name)||name;}
440var
441rdisplayswap=/^(none|table(?!-c[ea]).+)/,cssShow={position:"absolute",visibility:"hidden",display:"block"},cssNormalTransform={letterSpacing:"0",fontWeight:"400"};function setPositiveNumber(_elem,value,subtract){var matches=rcssNum.exec(value);return matches?Math.max(0,matches[2]-(subtract||0))+(matches[3]||"px"):value;}
442function boxModelAdjustment(elem,dimension,box,isBorderBox,styles,computedVal){var i=dimension==="width"?1:0,extra=0,delta=0;if(box===(isBorderBox?"border":"content")){return 0;}
443for(;i<4;i+=2){if(box==="margin"){delta+=jQuery.css(elem,box+cssExpand[i],true,styles);}
444if(!isBorderBox){delta+=jQuery.css(elem,"padding"+cssExpand[i],true,styles);if(box!=="padding"){delta+=jQuery.css(elem,"border"+cssExpand[i]+"Width",true,styles);}else{extra+=jQuery.css(elem,"border"+cssExpand[i]+"Width",true,styles);}
445}else{if(box==="content"){delta-=jQuery.css(elem,"padding"+cssExpand[i],true,styles);}
446if(box!=="margin"){delta-=jQuery.css(elem,"border"+cssExpand[i]+"Width",true,styles);}}}
447if(!isBorderBox&&computedVal>=0){delta+=Math.max(0,Math.ceil(elem["offset"+dimension[0].toUpperCase()+dimension.slice(1)]-
448computedVal-
449delta-
450extra-
4510.5
452))||0;}
453return delta;}
454function getWidthOrHeight(elem,dimension,extra){var styles=getStyles(elem),boxSizingNeeded=!support.boxSizingReliable()||extra,isBorderBox=boxSizingNeeded&&jQuery.css(elem,"boxSizing",false,styles)==="border-box",valueIsBorderBox=isBorderBox,val=curCSS(elem,dimension,styles),offsetProp="offset"+dimension[0].toUpperCase()+dimension.slice(1);if(rnumnonpx.test(val)){if(!extra){return val;}
455val="auto";}
456if((!support.boxSizingReliable()&&isBorderBox||!support.reliableTrDimensions()&&nodeName(elem,"tr")||val==="auto"||!parseFloat(val)&&jQuery.css(elem,"display",false,styles)==="inline")&&elem.getClientRects().length){isBorderBox=jQuery.css(elem,"boxSizing",false,styles)==="border-box";valueIsBorderBox=offsetProp in elem;if(valueIsBorderBox){val=elem[offsetProp];}}
457val=parseFloat(val)||0;return(val+
458boxModelAdjustment(elem,dimension,extra||(isBorderBox?"border":"content"),valueIsBorderBox,styles,val))+"px";}
459jQuery.extend({cssHooks:{opacity:{get:function(elem,computed){if(computed){var ret=curCSS(elem,"opacity");return ret===""?"1":ret;}}}},cssNumber:{"animationIterationCount":true,"columnCount":true,"fillOpacity":true,"flexGrow":true,"flexShrink":true,"fontWeight":true,"gridArea":true,"gridColumn":true,"gridColumnEnd":true,"gridColumnStart":true,"gridRow":true,"gridRowEnd":true,"gridRowStart":true,"lineHeight":true,"opacity":true,"order":true,"orphans":true,"widows":true,"zIndex":true,"zoom":true},cssProps:{},style:function(elem,name,value,extra){if(!elem||elem.nodeType===3||elem.nodeType===8||!elem.style){return;}
460var ret,type,hooks,origName=camelCase(name),isCustomProp=rcustomProp.test(name),style=elem.style;if(!isCustomProp){name=finalPropName(origName);}
461hooks=jQuery.cssHooks[name]||jQuery.cssHooks[origName];if(value!==undefined){type=typeof value;if(type==="string"&&(ret=rcssNum.exec(value))&&ret[1]){value=adjustCSS(elem,name,ret);type="number";}
462if(value==null||value!==value){return;}
463if(type==="number"&&!isCustomProp){value+=ret&&ret[3]||(jQuery.cssNumber[origName]?"":"px");}
464if(!support.clearCloneStyle&&value===""&&name.indexOf("background")===0){style[name]="inherit";}
465if(!hooks||!("set"in hooks)||(value=hooks.set(elem,value,extra))!==undefined){if(isCustomProp){style.setProperty(name,value);}else{style[name]=value;}}}else{if(hooks&&"get"in hooks&&(ret=hooks.get(elem,false,extra))!==undefined){return ret;}
466return style[name];}},css:function(elem,name,extra,styles){var val,num,hooks,origName=camelCase(name),isCustomProp=rcustomProp.test(name);if(!isCustomProp){name=finalPropName(origName);}
467hooks=jQuery.cssHooks[name]||jQuery.cssHooks[origName];if(hooks&&"get"in hooks){val=hooks.get(elem,true,extra);}
468if(val===undefined){val=curCSS(elem,name,styles);}
469if(val==="normal"&&name in cssNormalTransform){val=cssNormalTransform[name];}
470if(extra===""||extra){num=parseFloat(val);return extra===true||isFinite(num)?num||0:val;}
471return val;}});jQuery.each(["height","width"],function(_i,dimension){jQuery.cssHooks[dimension]={get:function(elem,computed,extra){if(computed){return rdisplayswap.test(jQuery.css(elem,"display"))&&(!elem.getClientRects().length||!elem.getBoundingClientRect().width)?swap(elem,cssShow,function(){return getWidthOrHeight(elem,dimension,extra);}):getWidthOrHeight(elem,dimension,extra);}},set:function(elem,value,extra){var matches,styles=getStyles(elem),scrollboxSizeBuggy=!support.scrollboxSize()&&styles.position==="absolute",boxSizingNeeded=scrollboxSizeBuggy||extra,isBorderBox=boxSizingNeeded&&jQuery.css(elem,"boxSizing",false,styles)==="border-box",subtract=extra?boxModelAdjustment(elem,dimension,extra,isBorderBox,styles):0;if(isBorderBox&&scrollboxSizeBuggy){subtract-=Math.ceil(elem["offset"+dimension[0].toUpperCase()+dimension.slice(1)]-
472parseFloat(styles[dimension])-
473boxModelAdjustment(elem,dimension,"border",false,styles)-
4740.5);}
475if(subtract&&(matches=rcssNum.exec(value))&&(matches[3]||"px")!=="px"){elem.style[dimension]=value;value=jQuery.css(elem,dimension);}
476return setPositiveNumber(elem,value,subtract);}};});jQuery.cssHooks.marginLeft=addGetHookIf(support.reliableMarginLeft,function(elem,computed){if(computed){return(parseFloat(curCSS(elem,"marginLeft"))||elem.getBoundingClientRect().left-
477swap(elem,{marginLeft:0},function(){return elem.getBoundingClientRect().left;}))+"px";}});jQuery.each({margin:"",padding:"",border:"Width"},function(prefix,suffix){jQuery.cssHooks[prefix+suffix]={expand:function(value){var i=0,expanded={},parts=typeof value==="string"?value.split(" "):[value];for(;i<4;i++){expanded[prefix+cssExpand[i]+suffix]=parts[i]||parts[i-2]||parts[0];}
478return expanded;}};if(prefix!=="margin"){jQuery.cssHooks[prefix+suffix].set=setPositiveNumber;}});jQuery.fn.extend({css:function(name,value){return access(this,function(elem,name,value){var styles,len,map={},i=0;if(Array.isArray(name)){styles=getStyles(elem);len=name.length;for(;i<len;i++){map[name[i]]=jQuery.css(elem,name[i],false,styles);}
479return map;}
480return value!==undefined?jQuery.style(elem,name,value):jQuery.css(elem,name);},name,value,arguments.length>1);}});function Tween(elem,options,prop,end,easing){return new Tween.prototype.init(elem,options,prop,end,easing);}
481jQuery.Tween=Tween;Tween.prototype={constructor:Tween,init:function(elem,options,prop,end,easing,unit){this.elem=elem;this.prop=prop;this.easing=easing||jQuery.easing._default;this.options=options;this.start=this.now=this.cur();this.end=end;this.unit=unit||(jQuery.cssNumber[prop]?"":"px");},cur:function(){var hooks=Tween.propHooks[this.prop];return hooks&&hooks.get?hooks.get(this):Tween.propHooks._default.get(this);},run:function(percent){var eased,hooks=Tween.propHooks[this.prop];if(this.options.duration){this.pos=eased=jQuery.easing[this.easing](percent,this.options.duration*percent,0,1,this.options.duration);}else{this.pos=eased=percent;}
482this.now=(this.end-this.start)*eased+this.start;if(this.options.step){this.options.step.call(this.elem,this.now,this);}
483if(hooks&&hooks.set){hooks.set(this);}else{Tween.propHooks._default.set(this);}
484return this;}};Tween.prototype.init.prototype=Tween.prototype;Tween.propHooks={_default:{get:function(tween){var result;if(tween.elem.nodeType!==1||tween.elem[tween.prop]!=null&&tween.elem.style[tween.prop]==null){return tween.elem[tween.prop];}
485result=jQuery.css(tween.elem,tween.prop,"");return!result||result==="auto"?0:result;}
vendor: 19,129 bytes, lines 485-587
485,set:function(tween){if(jQuery.fx.step[tween.prop]){jQuery.fx.step[tween.prop](tween);}else if(tween.elem.nodeType===1&&(jQuery.cssHooks[tween.prop]||tween.elem.style[finalPropName(tween.prop)]!=null)){jQuery.style(tween.elem,tween.prop,tween.now+tween.unit);}else{tween.elem[tween.prop]=tween.now;}}}};Tween.propHooks.scrollTop=Tween.propHooks.scrollLeft={set:function(tween){if(tween.elem.nodeType&&tween.elem.parentNode){tween.elem[tween.prop]=tween.now;}}};jQuery.easing={linear:function(p){return p;},swing:function(p){return 0.5-Math.cos(p*Math.PI)/2;},_default:"swing"};jQuery.fx=Tween.prototype.init;jQuery.fx.step={};var
486fxNow,inProgress,rfxtypes=/^(?:toggle|show|hide)$/,rrun=/queueHooks$/;function schedule(){if(inProgress){if(document.hidden===false&&window.requestAnimationFrame){window.requestAnimationFrame(schedule);}else{window.setTimeout(schedule,jQuery.fx.interval);}
487jQuery.fx.tick();}}
488function createFxNow(){window.setTimeout(function(){fxNow=undefined;});return(fxNow=Date.now());}
489function genFx(type,includeWidth){var which,i=0,attrs={height:type};includeWidth=includeWidth?1:0;for(;i<4;i+=2-includeWidth){which=cssExpand[i];attrs["margin"+which]=attrs["padding"+which]=type;}
490if(includeWidth){attrs.opacity=attrs.width=type;}
491return attrs;}
492function createTween(value,prop,animation){var tween,collection=(Animation.tweeners[prop]||[]).concat(Animation.tweeners["*"]),index=0,length=collection.length;for(;index<length;index++){if((tween=collection[index].call(animation,prop,value))){return tween;}}}
493function defaultPrefilter(elem,props,opts){var prop,value,toggle,hooks,oldfire,propTween,restoreDisplay,display,isBox="width"in props||"height"in props,anim=this,orig={},style=elem.style,hidden=elem.nodeType&&isHiddenWithinTree(elem),dataShow=dataPriv.get(elem,"fxshow");if(!opts.queue){hooks=jQuery._queueHooks(elem,"fx");if(hooks.unqueued==null){hooks.unqueued=0;oldfire=hooks.empty.fire;hooks.empty.fire=function(){if(!hooks.unqueued){oldfire();}};}
494hooks.unqueued++;anim.always(function(){anim.always(function(){hooks.unqueued--;if(!jQuery.queue(elem,"fx").length){hooks.empty.fire();}});});}
495for(prop in props){value=props[prop];if(rfxtypes.test(value)){delete props[prop];toggle=toggle||value==="toggle";if(value===(hidden?"hide":"show")){if(value==="show"&&dataShow&&dataShow[prop]!==undefined){hidden=true;}else{continue;}}
496orig[prop]=dataShow&&dataShow[prop]||jQuery.style(elem,prop);}}
497propTween=!jQuery.isEmptyObject(props);if(!propTween&&jQuery.isEmptyObject(orig)){return;}
498if(isBox&&elem.nodeType===1){opts.overflow=[style.overflow,style.overflowX,style.overflowY];restoreDisplay=dataShow&&dataShow.display;if(restoreDisplay==null){restoreDisplay=dataPriv.get(elem,"display");}
499display=jQuery.css(elem,"display");if(display==="none"){if(restoreDisplay){display=restoreDisplay;}else{showHide([elem],true);restoreDisplay=elem.style.display||restoreDisplay;display=jQuery.css(elem,"display");showHide([elem]);}}
500if(display==="inline"||display==="inline-block"&&restoreDisplay!=null){if(jQuery.css(elem,"float")==="none"){if(!propTween){anim.done(function(){style.display=restoreDisplay;});if(restoreDisplay==null){display=style.display;restoreDisplay=display==="none"?"":display;}}
501style.display="inline-block";}}}
502if(opts.overflow){style.overflow="hidden";anim.always(function(){style.overflow=opts.overflow[0];style.overflowX=opts.overflow[1];style.overflowY=opts.overflow[2];});}
503propTween=false;for(prop in orig){if(!propTween){if(dataShow){if("hidden"in dataShow){hidden=dataShow.hidden;}}else{dataShow=dataPriv.access(elem,"fxshow",{display:restoreDisplay});}
504if(toggle){dataShow.hidden=!hidden;}
505if(hidden){showHide([elem],true);}
506anim.done(function(){if(!hidden){showHide([elem]);}
507dataPriv.remove(elem,"fxshow");for(prop in orig){jQuery.style(elem,prop,orig[prop]);}});}
508propTween=createTween(hidden?dataShow[prop]:0,prop,anim);if(!(prop in dataShow)){dataShow[prop]=propTween.start;if(hidden){propTween.end=propTween.start;propTween.start=0;}}}}
509function propFilter(props,specialEasing){var index,name,easing,value,hooks;for(index in props){name=camelCase(index);easing=specialEasing[name];value=props[index];if(Array.isArray(value)){easing=value[1];value=props[index]=value[0];}
510if(index!==name){props[name]=value;delete props[index];}
511hooks=jQuery.cssHooks[name];if(hooks&&"expand"in hooks){value=hooks.expand(value);delete props[name];for(index in value){if(!(index in props)){props[index]=value[index];specialEasing[index]=easing;}}}else{specialEasing[name]=easing;}}}
512function Animation(elem,properties,options){var result,stopped,index=0,length=Animation.prefilters.length,deferred=jQuery.Deferred().always(function(){delete tick.elem;}),tick=function(){if(stopped){return false;}
513var currentTime=fxNow||createFxNow(),remaining=Math.max(0,animation.startTime+animation.duration-currentTime),temp=remaining/animation.duration||0,percent=1-temp,index=0,length=animation.tweens.length;for(;index<length;index++){animation.tweens[index].run(percent);}
514deferred.notifyWith(elem,[animation,percent,remaining]);if(percent<1&&length){return remaining;}
515if(!length){deferred.notifyWith(elem,[animation,1,0]);}
516deferred.resolveWith(elem,[animation]);return false;},animation=deferred.promise({elem:elem,props:jQuery.extend({},properties),opts:jQuery.extend(true,{specialEasing:{},easing:jQuery.easing._default},options),originalProperties:properties,originalOptions:options,startTime:fxNow||createFxNow(),duration:options.duration,tweens:[],createTween:function(prop,end){var tween=jQuery.Tween(elem,animation.opts,prop,end,animation.opts.specialEasing[prop]||animation.opts.easing);animation.tweens.push(tween);return tween;},stop:function(gotoEnd){var index=0,length=gotoEnd?animation.tweens.length:0;if(stopped){return this;}
517stopped=true;for(;index<length;index++){animation.tweens[index].run(1);}
518if(gotoEnd){deferred.notifyWith(elem,[animation,1,0]);deferred.resolveWith(elem,[animation,gotoEnd]);}else{deferred.rejectWith(elem,[animation,gotoEnd]);}
519return this;}}),props=animation.props;propFilter(props,animation.opts.specialEasing);for(;index<length;index++){result=Animation.prefilters[index].call(animation,elem,props,animation.opts);if(result){if(isFunction(result.stop)){jQuery._queueHooks(animation.elem,animation.opts.queue).stop=result.stop.bind(result);}
520return result;}}
521jQuery.map(props,createTween,animation);if(isFunction(animation.opts.start)){animation.opts.start.call(elem,animation);}
522animation
523.progress(animation.opts.progress)
524.done(animation.opts.done,animation.opts.complete)
525.fail(animation.opts.fail)
526.always(animation.opts.always);jQuery.fx.timer(jQuery.extend(tick,{elem:elem,anim:animation,queue:animation.opts.queue}));return animation;}
527jQuery.Animation=jQuery.extend(Animation,{tweeners:{"*":[function(prop,value){var tween=this.createTween(prop,value);adjustCSS(tween.elem,prop,rcssNum.exec(value),tween);return tween;}]},tweener:function(props,callback){if(isFunction(props)){callback=props;props=["*"];}else{props=props.match(rnothtmlwhite);}
528var prop,index=0,length=props.length;for(;index<length;index++){prop=props[index];Animation.tweeners[prop]=Animation.tweeners[prop]||[];Animation.tweeners[prop].unshift(callback);}},prefilters:[defaultPrefilter],prefilter:function(callback,prepend){if(prepend){Animation.prefilters.unshift(callback);}else{Animation.prefilters.push(callback);}}});jQuery.speed=function(speed,easing,fn){var opt=speed&&typeof speed==="object"?jQuery.extend({},speed):{complete:fn||!fn&&easing||isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&!isFunction(easing)&&easing};if(jQuery.fx.off){opt.duration=0;}else{if(typeof opt.duration!=="number"){if(opt.duration in jQuery.fx.speeds){opt.duration=jQuery.fx.speeds[opt.duration];}else{opt.duration=jQuery.fx.speeds._default;}}}
529if(opt.queue==null||opt.queue===true){opt.queue="fx";}
530opt.old=opt.complete;opt.complete=function(){if(isFunction(opt.old)){opt.old.call(this);}
531if(opt.queue){jQuery.dequeue(this,opt.queue);}};return opt;};jQuery.fn.extend({fadeTo:function(speed,to,easing,callback){return this.filter(isHiddenWithinTree).css("opacity",0).show()
532.end().animate({opacity:to},speed,easing,callback);},animate:function(prop,speed,easing,callback){var empty=jQuery.isEmptyObject(prop),optall=jQuery.speed(speed,easing,callback),doAnimation=function(){var anim=Animation(this,jQuery.extend({},prop),optall);if(empty||dataPriv.get(this,"finish")){anim.stop(true);}};doAnimation.finish=doAnimation;return empty||optall.queue===false?this.each(doAnimation):this.queue(optall.queue,doAnimation);},stop:function(type,clearQueue,gotoEnd){var stopQueue=function(hooks){var stop=hooks.stop;delete hooks.stop;stop(gotoEnd);};if(typeof type!=="string"){gotoEnd=clearQueue;clearQueue=type;type=undefined;}
533if(clearQueue){this.queue(type||"fx",[]);}
534return this.each(function(){var dequeue=true,index=type!=null&&type+"queueHooks",timers=jQuery.timers,data=dataPriv.get(this);if(index){if(data[index]&&data[index].stop){stopQueue(data[index]);}}else{for(index in data){if(data[index]&&data[index].stop&&rrun.test(index)){stopQueue(data[index]);}}}
535for(index=timers.length;index--;){if(timers[index].elem===this&&(type==null||timers[index].queue===type)){timers[index].anim.stop(gotoEnd);dequeue=false;timers.splice(index,1);}}
536if(dequeue||!gotoEnd){jQuery.dequeue(this,type);}});},finish:function(type){if(type!==false){type=type||"fx";}
537return this.each(function(){var index,data=dataPriv.get(this),queue=data[type+"queue"],hooks=data[type+"queueHooks"],timers=jQuery.timers,length=queue?queue.length:0;data.finish=true;jQuery.queue(this,type,[]);if(hooks&&hooks.stop){hooks.stop.call(this,true);}
538for(index=timers.length;index--;){if(timers[index].elem===this&&timers[index].queue===type){timers[index].anim.stop(true);timers.splice(index,1);}}
539for(index=0;index<length;index++){if(queue[index]&&queue[index].finish){queue[index].finish.call(this);}}
540delete data.finish;});}});jQuery.each(["toggle","show","hide"],function(_i,name){var cssFn=jQuery.fn[name];jQuery.fn[name]=function(speed,easing,callback){return speed==null||typeof speed==="boolean"?cssFn.apply(this,arguments):this.animate(genFx(name,true),speed,easing,callback);};});jQuery.each({slideDown:genFx("show"),slideUp:genFx("hide"),slideToggle:genFx("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(name,props){jQuery.fn[name]=function(speed,easing,callback){return this.animate(props,speed,easing,callback);};});jQuery.timers=[];jQuery.fx.tick=function(){var timer,i=0,timers=jQuery.timers;fxNow=Date.now();for(;i<timers.length;i++){timer=timers[i];if(!timer()&&timers[i]===timer){timers.splice(i--,1);}}
541if(!timers.length){jQuery.fx.stop();}
542fxNow=undefined;};jQuery.fx.timer=function(timer){jQuery.timers.push(timer);jQuery.fx.start();};jQuery.fx.interval=13;jQuery.fx.start=function(){if(inProgress){return;}
543inProgress=true;schedule();};jQuery.fx.stop=function(){inProgress=null;};jQuery.fx.speeds={slow:600,fast:200,_default:400};jQuery.fn.delay=function(time,type){time=jQuery.fx?jQuery.fx.speeds[time]||time:time;type=type||"fx";return this.queue(type,function(next,hooks){var timeout=window.setTimeout(next,time);hooks.stop=function(){window.clearTimeout(timeout);};});};(function(){var input=document.createElement("input"),select=document.createElement("select"),opt=select.appendChild(document.createElement("option"));input.type="checkbox";support.checkOn=input.value!=="";support.optSelected=opt.selected;input=document.createElement("input");input.value="t";input.type="radio";support.radioValue=input.value==="t";})();var boolHook,attrHandle=jQuery.expr.attrHandle;jQuery.fn.extend({attr:function(name,value){return access(this,jQuery.attr,name,value,arguments.length>1);},removeAttr:function(name){return this.each(function(){jQuery.removeAttr(this,name);});}});jQuery.extend({attr:function(elem,name,value){var ret,hooks,nType=elem.nodeType;if(nType===3||nType===8||nType===2){return;}
544if(typeof elem.getAttribute==="undefined"){return jQuery.prop(elem,name,value);}
545if(nType!==1||!jQuery.isXMLDoc(elem)){hooks=jQuery.attrHooks[name.toLowerCase()]||(jQuery.expr.match.bool.test(name)?boolHook:undefined);}
546if(value!==undefined){if(value===null){jQuery.removeAttr(elem,name);return;}
547if(hooks&&"set"in hooks&&(ret=hooks.set(elem,value,name))!==undefined){return ret;}
548elem.setAttribute(name,value+"");return value;}
549if(hooks&&"get"in hooks&&(ret=hooks.get(elem,name))!==null){return ret;}
550ret=jQuery.find.attr(elem,name);return ret==null?undefined:ret;},attrHooks:{type:{set:function(elem,value){if(!support.radioValue&&value==="radio"&&nodeName(elem,"input")){var val=elem.value;elem.setAttribute("type",value);if(val){elem.value=val;}
551return value;}}}},removeAttr:function(elem,value){var name,i=0,attrNames=value&&value.match(rnothtmlwhite);if(attrNames&&elem.nodeType===1){while((name=attrNames[i++])){elem.removeAttribute(name);}}}});boolHook={set:function(elem,value,name){if(value===false){jQuery.removeAttr(elem,name);}else{elem.setAttribute(name,name);}
552return name;}};jQuery.each(jQuery.expr.match.bool.source.match(/\w+/g),function(_i,name){var getter=attrHandle[name]||jQuery.find.attr;attrHandle[name]=function(elem,name,isXML){var ret,handle,lowercaseName=name.toLowerCase();if(!isXML){handle=attrHandle[lowercaseName];attrHandle[lowercaseName]=ret;ret=getter(elem,name,isXML)!=null?lowercaseName:null;attrHandle[lowercaseName]=handle;}
553return ret;};});var rfocusable=/^(?:input|select|textarea|button)$/i,rclickable=/^(?:a|area)$/i;jQuery.fn.extend({prop:function(name,value){return access(this,jQuery.prop,name,value,arguments.length>1);},removeProp:function(name){return this.each(function(){delete this[jQuery.propFix[name]||name];});}});jQuery.extend({prop:function(elem,name,value){var ret,hooks,nType=elem.nodeType;if(nType===3||nType===8||nType===2){return;}
554if(nType!==1||!jQuery.isXMLDoc(elem)){name=jQuery.propFix[name]||name;hooks=jQuery.propHooks[name];}
555if(value!==undefined){if(hooks&&"set"in hooks&&(ret=hooks.set(elem,value,name))!==undefined){return ret;}
556return(elem[name]=value);}
557if(hooks&&"get"in hooks&&(ret=hooks.get(elem,name))!==null){return ret;}
558return elem[name];},propHooks:{tabIndex:{get:function(elem){var tabindex=jQuery.find.attr(elem,"tabindex");if(tabindex){return parseInt(tabindex,10);}
559if(rfocusable.test(elem.nodeName)||rclickable.test(elem.nodeName)&&elem.href){return 0;}
560return-1;}}},propFix:{"for":"htmlFor","class":"className"}});if(!support.optSelected){jQuery.propHooks.selected={get:function(elem){var parent=elem.parentNode;if(parent&&parent.parentNode){parent.parentNode.selectedIndex;}
561return null;},set:function(elem){var parent=elem.parentNode;if(parent){parent.selectedIndex;if(parent.parentNode){parent.parentNode.selectedIndex;}}}};}
562jQuery.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){jQuery.propFix[this.toLowerCase()]=this;});function stripAndCollapse(value){var tokens=value.match(rnothtmlwhite)||[];return tokens.join(" ");}
563function getClass(elem){return elem.getAttribute&&elem.getAttribute("class")||"";}
564function classesToArray(value){if(Array.isArray(value)){return value;}
565if(typeof value==="string"){return value.match(rnothtmlwhite)||[];}
566return[];}
567jQuery.fn.extend({addClass:function(value){var classNames,cur,curValue,className,i,finalValue;if(isFunction(value)){return this.each(function(j){jQuery(this).addClass(value.call(this,j,getClass(this)));});}
568classNames=classesToArray(value);if(classNames.length){return this.each(function(){curValue=getClass(this);cur=this.nodeType===1&&(" "+stripAndCollapse(curValue)+" ");if(cur){for(i=0;i<classNames.length;i++){className=classNames[i];if(cur.indexOf(" "+className+" ")<0){cur+=className+" ";}}
569finalValue=stripAndCollapse(cur);if(curValue!==finalValue){this.setAttribute("class",finalValue);}}});}
570return this;},removeClass:function(value){var classNames,cur,curValue,className,i,finalValue;if(isFunction(value)){return this.each(function(j){jQuery(this).removeClass(value.call(this,j,getClass(this)));});}
571if(!arguments.length){return this.attr("class","");}
572classNames=classesToArray(value);if(classNames.length){return this.each(function(){curValue=getClass(this);cur=this.nodeType===1&&(" "+stripAndCollapse(curValue)+" ");if(cur){for(i=0;i<classNames.length;i++){className=classNames[i];while(cur.indexOf(" "+className+" ")>-1){cur=cur.replace(" "+className+" "," ");}}
573finalValue=stripAndCollapse(cur);if(curValue!==finalValue){this.setAttribute("class",finalValue);}}});}
574return this;},toggleClass:function(value,stateVal){var classNames,className,i,self,type=typeof value,isValidValue=type==="string"||Array.isArray(value);if(isFunction(value)){return this.each(function(i){jQuery(this).toggleClass(value.call(this,i,getClass(this),stateVal),stateVal);});}
575if(typeof stateVal==="boolean"&&isValidValue){return stateVal?this.addClass(value):this.removeClass(value);}
576classNames=classesToArray(value);return this.each(function(){if(isValidValue){self=jQuery(this);for(i=0;i<classNames.length;i++){className=classNames[i];if(self.hasClass(className)){self.removeClass(className);}else{self.addClass(className);}}
577}else if(value===undefined||type==="boolean"){className=getClass(this);if(className){dataPriv.set(this,"__className__",className);}
578if(this.setAttribute){this.setAttribute("class",className||value===false?"":dataPriv.get(this,"__className__")||"");}}});},hasClass:function(selector){var className,elem,i=0;className=" "+selector+" ";while((elem=this[i++])){if(elem.nodeType===1&&(" "+stripAndCollapse(getClass(elem))+" ").indexOf(className)>-1){return true;}}
579return false;}});var rreturn=/\r/g;jQuery.fn.extend({val:function(value){var hooks,ret,valueIsFunction,elem=this[0];if(!arguments.length){if(elem){hooks=jQuery.valHooks[elem.type]||jQuery.valHooks[elem.nodeName.toLowerCase()];if(hooks&&"get"in hooks&&(ret=hooks.get(elem,"value"))!==undefined){return ret;}
580ret=elem.value;if(typeof ret==="string"){return ret.replace(rreturn,"");}
581return ret==null?"":ret;}
582return;}
583valueIsFunction=isFunction(value);return this.each(function(i){var val;if(this.nodeType!==1){return;}
584if(valueIsFunction){val=value.call(this,i,jQuery(this).val());}else{val=value;}
585if(val==null){val="";}else if(typeof val==="number"){val+="";}else if(Array.isArray(val)){val=jQuery.map(val,function(value){return value==null?"":value+"";});}
586hooks=jQuery.valHooks[this.type]||jQuery.valHooks[this.nodeName.toLowerCase()];if(!hooks||!("set"in hooks)||hooks.set(this,val,"value")===undefined){this.value=val;}});}});jQuery.extend({valHooks:{option:{get:function(elem){var val=jQuery.find.attr(elem,"value");return val!=null?val:stripAndCollapse(jQuery.text(elem));}},select:{get:function(elem){var value,option,i,options=elem.options,index=elem.selectedIndex,one=elem.type==="select-one",values=one?null:[],max=one?index+1:options.length;if(index<0){i=max;}else{i=one?index:0;}
587for(;i<max;i++){option=options[i];if((option.selected||i===index)&&!option.disabled&&(!option.parentNode.disabled||!node
vendor: 6,021 bytes, lines 587-616
587Name(option.parentNode,"optgroup"))){value=jQuery(option).val();if(one){return value;}
588values.push(value);}}
589return values;},set:function(elem,value){var optionSet,option,options=elem.options,values=jQuery.makeArray(value),i=options.length;while(i--){option=options[i];if(option.selected=jQuery.inArray(jQuery.valHooks.option.get(option),values)>-1){optionSet=true;}
590}
591if(!optionSet){elem.selectedIndex=-1;}
592return values;}}}});jQuery.each(["radio","checkbox"],function(){jQuery.valHooks[this]={set:function(elem,value){if(Array.isArray(value)){return(elem.checked=jQuery.inArray(jQuery(elem).val(),value)>-1);}}};if(!support.checkOn){jQuery.valHooks[this].get=function(elem){return elem.getAttribute("value")===null?"on":elem.value;};}});support.focusin="onfocusin"in window;var rfocusMorph=/^(?:focusinfocus|focusoutblur)$/,stopPropagationCallback=function(e){e.stopPropagation();};jQuery.extend(jQuery.event,{trigger:function(event,data,elem,onlyHandlers){var i,cur,tmp,bubbleType,ontype,handle,special,lastElement,eventPath=[elem||document],type=hasOwn.call(event,"type")?event.type:event,namespaces=hasOwn.call(event,"namespace")?event.namespace.split("."):[];cur=lastElement=tmp=elem=elem||document;if(elem.nodeType===3||elem.nodeType===8){return;}
593if(rfocusMorph.test(type+jQuery.event.triggered)){return;}
594if(type.indexOf(".")>-1){namespaces=type.split(".");type=namespaces.shift();namespaces.sort();}
595ontype=type.indexOf(":")<0&&"on"+type;event=event[jQuery.expando]?event:new jQuery.Event(type,typeof event==="object"&&event);event.isTrigger=onlyHandlers?2:3;event.namespace=namespaces.join(".");event.rnamespace=event.namespace?new RegExp("(^|\\.)"+namespaces.join("\\.(?:.*\\.|)")+"(\\.|$)"):null;event.result=undefined;if(!event.target){event.target=elem;}
596data=data==null?[event]:jQuery.makeArray(data,[event]);special=jQuery.event.special[type]||{};if(!onlyHandlers&&special.trigger&&special.trigger.apply(elem,data)===false){return;}
597if(!onlyHandlers&&!special.noBubble&&!isWindow(elem)){bubbleType=special.delegateType||type;if(!rfocusMorph.test(bubbleType+type)){cur=cur.parentNode;}
598for(;cur;cur=cur.parentNode){eventPath.push(cur);tmp=cur;}
599if(tmp===(elem.ownerDocument||document)){eventPath.push(tmp.defaultView||tmp.parentWindow||window);}}
600i=0;while((cur=eventPath[i++])&&!event.isPropagationStopped()){lastElement=cur;event.type=i>1?bubbleType:special.bindType||type;handle=(dataPriv.get(cur,"events")||Object.create(null))[event.type]&&dataPriv.get(cur,"handle");if(handle){handle.apply(cur,data);}
601handle=ontype&&cur[ontype];if(handle&&handle.apply&&acceptData(cur)){event.result=handle.apply(cur,data);if(event.result===false){event.preventDefault();}}}
602event.type=type;if(!onlyHandlers&&!event.isDefaultPrevented()){if((!special._default||special._default.apply(eventPath.pop(),data)===false)&&acceptData(elem)){if(ontype&&isFunction(elem[type])&&!isWindow(elem)){tmp=elem[ontype];if(tmp){elem[ontype]=null;}
603jQuery.event.triggered=type;if(event.isPropagationStopped()){lastElement.addEventListener(type,stopPropagationCallback);}
604elem[type]();if(event.isPropagationStopped()){lastElement.removeEventListener(type,stopPropagationCallback);}
605jQuery.event.triggered=undefined;if(tmp){elem[ontype]=tmp;}}}}
606return event.result;},simulate:function(type,elem,event){var e=jQuery.extend(new jQuery.Event(),event,{type:type,isSimulated:true});jQuery.event.trigger(e,null,elem);}});jQuery.fn.extend({trigger:function(type,data){return this.each(function(){jQuery.event.trigger(type,data,this);});},triggerHandler:function(type,data){var elem=this[0];if(elem){return jQuery.event.trigger(type,data,elem,true);}}});if(!support.focusin){jQuery.each({focus:"focusin",blur:"focusout"},function(orig,fix){var handler=function(event){jQuery.event.simulate(fix,event.target,jQuery.event.fix(event));};jQuery.event.special[fix]={setup:function(){var doc=this.ownerDocument||this.document||this,attaches=dataPriv.access(doc,fix);if(!attaches){doc.addEventListener(orig,handler,true);}
607dataPriv.access(doc,fix,(attaches||0)+1);},teardown:function(){var doc=this.ownerDocument||this.document||this,attaches=dataPriv.access(doc,fix)-1;if(!attaches){doc.removeEventListener(orig,handler,true);dataPriv.remove(doc,fix);}else{dataPriv.access(doc,fix,attaches);}}};});}
608var location=window.location;var nonce={guid:Date.now()};var rquery=(/\?/);jQuery.parseXML=function(data){var xml,parserErrorElem;if(!data||typeof data!=="string"){return null;}
609try{xml=(new window.DOMParser()).parseFromString(data,"text/xml");}catch(e){}
610parserErrorElem=xml&&xml.getElementsByTagName("parsererror")[0];if(!xml||parserErrorElem){jQuery.error("Invalid XML: "+(parserErrorElem?jQuery.map(parserErrorElem.childNodes,function(el){return el.textContent;}).join("\n"):data));}
611return xml;};var
612rbracket=/\[\]$/,rCRLF=/\r?\n/g,rsubmitterTypes=/^(?:submit|button|image|reset|file)$/i,rsubmittable=/^(?:input|select|textarea|keygen)/i;function buildParams(prefix,obj,traditional,add){var name;if(Array.isArray(obj)){jQuery.each(obj,function(i,v){if(traditional||rbracket.test(prefix)){add(prefix,v);}else{buildParams(prefix+"["+(typeof v==="object"&&v!=null?i:"")+"]",v,traditional,add);}});}else if(!traditional&&toType(obj)==="object"){for(name in obj){buildParams(prefix+"["+name+"]",obj[name],traditional,add);}}else{add(prefix,obj);}}
613jQuery.param=function(a,traditional){var prefix,s=[],add=function(key,valueOrFunction){var value=isFunction(valueOrFunction)?valueOrFunction():valueOrFunction;s[s.length]=encodeURIComponent(key)+"="+
614encodeURIComponent(value==null?"":value);};if(a==null){return"";}
615if(Array.isArray(a)||(a.jquery&&!jQuery.isPlainObject(a))){jQuery.each(a,function(){add(this.name,this.value);});}else{for(prefix in a){buildParams(prefix,a[prefix],traditional,add);}}
616return s.join("&");};jQuery.fn.extend({serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){var elements=jQuery.prop(this,"elements");return elements?jQuery.makeArray(elements):this;}
vendor: 19,366 bytes, lines 616-711
616).filter(function(){var type=this.type;return this.name&&!jQuery(this).is(":disabled")&&rsubmittable.test(this.nodeName)&&!rsubmitterTypes.test(type)&&(this.checked||!rcheckableType.test(type));}).map(function(_i,elem){var val=jQuery(this).val();if(val==null){return null;}
617if(Array.isArray(val)){return jQuery.map(val,function(val){return{name:elem.name,value:val.replace(rCRLF,"\r\n")};});}
618return{name:elem.name,value:val.replace(rCRLF,"\r\n")};}).get();}});var
619r20=/%20/g,rhash=/#.*$/,rantiCache=/([?&])_=[^&]*/,rheaders=/^(.*?):[ \t]*([^\r\n]*)$/mg,rlocalProtocol=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,rnoContent=/^(?:GET|HEAD)$/,rprotocol=/^\/\//,prefilters={},transports={},allTypes="*/".concat("*"),originAnchor=document.createElement("a");originAnchor.href=location.href;function addToPrefiltersOrTransports(structure){return function(dataTypeExpression,func){if(typeof dataTypeExpression!=="string"){func=dataTypeExpression;dataTypeExpression="*";}
620var dataType,i=0,dataTypes=dataTypeExpression.toLowerCase().match(rnothtmlwhite)||[];if(isFunction(func)){while((dataType=dataTypes[i++])){if(dataType[0]==="+"){dataType=dataType.slice(1)||"*";(structure[dataType]=structure[dataType]||[]).unshift(func);}else{(structure[dataType]=structure[dataType]||[]).push(func);}}}};}
621function inspectPrefiltersOrTransports(structure,options,originalOptions,jqXHR){var inspected={},seekingTransport=(structure===transports);function inspect(dataType){var selected;inspected[dataType]=true;jQuery.each(structure[dataType]||[],function(_,prefilterOrFactory){var dataTypeOrTransport=prefilterOrFactory(options,originalOptions,jqXHR);if(typeof dataTypeOrTransport==="string"&&!seekingTransport&&!inspected[dataTypeOrTransport]){options.dataTypes.unshift(dataTypeOrTransport);inspect(dataTypeOrTransport);return false;}else if(seekingTransport){return!(selected=dataTypeOrTransport);}});return selected;}
622return inspect(options.dataTypes[0])||!inspected["*"]&&inspect("*");}
623function ajaxExtend(target,src){var key,deep,flatOptions=jQuery.ajaxSettings.flatOptions||{};for(key in src){if(src[key]!==undefined){(flatOptions[key]?target:(deep||(deep={})))[key]=src[key];}}
624if(deep){jQuery.extend(true,target,deep);}
625return target;}
626function ajaxHandleResponses(s,jqXHR,responses){var ct,type,finalDataType,firstDataType,contents=s.contents,dataTypes=s.dataTypes;while(dataTypes[0]==="*"){dataTypes.shift();if(ct===undefined){ct=s.mimeType||jqXHR.getResponseHeader("Content-Type");}}
627if(ct){for(type in contents){if(contents[type]&&contents[type].test(ct)){dataTypes.unshift(type);break;}}}
628if(dataTypes[0]in responses){finalDataType=dataTypes[0];}else{for(type in responses){if(!dataTypes[0]||s.converters[type+" "+dataTypes[0]]){finalDataType=type;break;}
629if(!firstDataType){firstDataType=type;}}
630finalDataType=finalDataType||firstDataType;}
631if(finalDataType){if(finalDataType!==dataTypes[0]){dataTypes.unshift(finalDataType);}
632return responses[finalDataType];}}
633function ajaxConvert(s,response,jqXHR,isSuccess){var conv2,current,conv,tmp,prev,converters={},dataTypes=s.dataTypes.slice();if(dataTypes[1]){for(conv in s.converters){converters[conv.toLowerCase()]=s.converters[conv];}}
634current=dataTypes.shift();while(current){if(s.responseFields[current]){jqXHR[s.responseFields[current]]=response;}
635if(!prev&&isSuccess&&s.dataFilter){response=s.dataFilter(response,s.dataType);}
636prev=current;current=dataTypes.shift();if(current){if(current==="*"){current=prev;}else if(prev!=="*"&&prev!==current){conv=converters[prev+" "+current]||converters["* "+current];if(!conv){for(conv2 in converters){tmp=conv2.split(" ");if(tmp[1]===current){conv=converters[prev+" "+tmp[0]]||converters["* "+tmp[0]];if(conv){if(conv===true){conv=converters[conv2];}else if(converters[conv2]!==true){current=tmp[0];dataTypes.unshift(tmp[1]);}
637break;}}}}
638if(conv!==true){if(conv&&s.throws){response=conv(response);}else{try{response=conv(response);}catch(e){return{state:"parsererror",error:conv?e:"No conversion from "+prev+" to "+current};}}}}}}
639return{state:"success",data:response};}
640jQuery.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:location.href,type:"GET",isLocal:rlocalProtocol.test(location.protocol),global:true,processData:true,async:true,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":allTypes,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":true,"text json":JSON.parse,"text xml":jQuery.parseXML},flatOptions:{url:true,context:true}},ajaxSetup:function(target,settings){return settings?ajaxExtend(ajaxExtend(target,jQuery.ajaxSettings),settings):ajaxExtend(jQuery.ajaxSettings,target);},ajaxPrefilter:addToPrefiltersOrTransports(prefilters),ajaxTransport:addToPrefiltersOrTransports(transports),ajax:function(url,options){if(typeof url==="object"){options=url;url=undefined;}
641options=options||{};var transport,cacheURL,responseHeadersString,responseHeaders,timeoutTimer,urlAnchor,completed,fireGlobals,i,uncached,s=jQuery.ajaxSetup({},options),callbackContext=s.context||s,globalEventContext=s.context&&(callbackContext.nodeType||callbackContext.jquery)?jQuery(callbackContext):jQuery.event,deferred=jQuery.Deferred(),completeDeferred=jQuery.Callbacks("once memory"),statusCode=s.statusCode||{},requestHeaders={},requestHeadersNames={},strAbort="canceled",jqXHR={readyState:0,getResponseHeader:function(key){var match;if(completed){if(!responseHeaders){responseHeaders={};while((match=rheaders.exec(responseHeadersString))){responseHeaders[match[1].toLowerCase()+" "]=(responseHeaders[match[1].toLowerCase()+" "]||[])
642.concat(match[2]);}}
643match=responseHeaders[key.toLowerCase()+" "];}
644return match==null?null:match.join(", ");},getAllResponseHeaders:function(){return completed?responseHeadersString:null;},setRequestHeader:function(name,value){if(completed==null){name=requestHeadersNames[name.toLowerCase()]=requestHeadersNames[name.toLowerCase()]||name;requestHeaders[name]=value;}
645return this;},overrideMimeType:function(type){if(completed==null){s.mimeType=type;}
646return this;},statusCode:function(map){var code;if(map){if(completed){jqXHR.always(map[jqXHR.status]);}else{for(code in map){statusCode[code]=[statusCode[code],map[code]];}}}
647return this;},abort:function(statusText){var finalText=statusText||strAbort;if(transport){transport.abort(finalText);}
648done(0,finalText);return this;}};deferred.promise(jqXHR);s.url=((url||s.url||location.href)+"")
649.replace(rprotocol,location.protocol+"//");s.type=options.method||options.type||s.method||s.type;s.dataTypes=(s.dataType||"*").toLowerCase().match(rnothtmlwhite)||[""];if(s.crossDomain==null){urlAnchor=document.createElement("a");try{urlAnchor.href=s.url;urlAnchor.href=urlAnchor.href;s.crossDomain=originAnchor.protocol+"//"+originAnchor.host!==urlAnchor.protocol+"//"+urlAnchor.host;}catch(e){s.crossDomain=true;}}
650if(s.data&&s.processData&&typeof s.data!=="string"){s.data=jQuery.param(s.data,s.traditional);}
651inspectPrefiltersOrTransports(prefilters,s,options,jqXHR);if(completed){return jqXHR;}
652fireGlobals=jQuery.event&&s.global;if(fireGlobals&&jQuery.active++===0){jQuery.event.trigger("ajaxStart");}
653s.type=s.type.toUpperCase();s.hasContent=!rnoContent.test(s.type);cacheURL=s.url.replace(rhash,"");if(!s.hasContent){uncached=s.url.slice(cacheURL.length);if(s.data&&(s.processData||typeof s.data==="string")){cacheURL+=(rquery.test(cacheURL)?"&":"?")+s.data;delete s.data;}
654if(s.cache===false){cacheURL=cacheURL.replace(rantiCache,"$1");uncached=(rquery.test(cacheURL)?"&":"?")+"_="+(nonce.guid++)+
655uncached;}
656s.url=cacheURL+uncached;}else if(s.data&&s.processData&&(s.contentType||"").indexOf("application/x-www-form-urlencoded")===0){s.data=s.data.replace(r20,"+");}
657if(s.ifModified){if(jQuery.lastModified[cacheURL]){jqXHR.setRequestHeader("If-Modified-Since",jQuery.lastModified[cacheURL]);}
658if(jQuery.etag[cacheURL]){jqXHR.setRequestHeader("If-None-Match",jQuery.etag[cacheURL]);}}
659if(s.data&&s.hasContent&&s.contentType!==false||options.contentType){jqXHR.setRequestHeader("Content-Type",s.contentType);}
660jqXHR.setRequestHeader("Accept",s.dataTypes[0]&&s.accepts[s.dataTypes[0]]?s.accepts[s.dataTypes[0]]+
661(s.dataTypes[0]!=="*"?", "+allTypes+"; q=0.01":""):s.accepts["*"]);for(i in s.headers){jqXHR.setRequestHeader(i,s.headers[i]);}
662if(s.beforeSend&&(s.beforeSend.call(callbackContext,jqXHR,s)===false||completed)){return jqXHR.abort();}
663strAbort="abort";completeDeferred.add(s.complete);jqXHR.done(s.success);jqXHR.fail(s.error);transport=inspectPrefiltersOrTransports(transports,s,options,jqXHR);if(!transport){done(-1,"No Transport");}else{jqXHR.readyState=1;if(fireGlobals){globalEventContext.trigger("ajaxSend",[jqXHR,s]);}
664if(completed){return jqXHR;}
665if(s.async&&s.timeout>0){timeoutTimer=window.setTimeout(function(){jqXHR.abort("timeout");},s.timeout);}
666try{completed=false;transport.send(requestHeaders,done);}catch(e){if(completed){throw e;}
667done(-1,e);}}
668function done(status,nativeStatusText,responses,headers){var isSuccess,success,error,response,modified,statusText=nativeStatusText;if(completed){return;}
669completed=true;if(timeoutTimer){window.clearTimeout(timeoutTimer);}
670transport=undefined;responseHeadersString=headers||"";jqXHR.readyState=status>0?4:0;isSuccess=status>=200&&status<300||status===304;if(responses){response=ajaxHandleResponses(s,jqXHR,responses);}
671if(!isSuccess&&jQuery.inArray("script",s.dataTypes)>-1&&jQuery.inArray("json",s.dataTypes)<0){s.converters["text script"]=function(){};}
672response=ajaxConvert(s,response,jqXHR,isSuccess);if(isSuccess){if(s.ifModified){modified=jqXHR.getResponseHeader("Last-Modified");if(modified){jQuery.lastModified[cacheURL]=modified;}
673modified=jqXHR.getResponseHeader("etag");if(modified){jQuery.etag[cacheURL]=modified;}}
674if(status===204||s.type==="HEAD"){statusText="nocontent";}else if(status===304){statusText="notmodified";}else{statusText=response.state;success=response.data;error=response.error;isSuccess=!error;}}else{error=statusText;if(status||!statusText){statusText="error";if(status<0){status=0;}}}
675jqXHR.status=status;jqXHR.statusText=(nativeStatusText||statusText)+"";if(isSuccess){deferred.resolveWith(callbackContext,[success,statusText,jqXHR]);}else{deferred.rejectWith(callbackContext,[jqXHR,statusText,error]);}
676jqXHR.statusCode(statusCode);statusCode=undefined;if(fireGlobals){globalEventContext.trigger(isSuccess?"ajaxSuccess":"ajaxError",[jqXHR,s,isSuccess?success:error]);}
677completeDeferred.fireWith(callbackContext,[jqXHR,statusText]);if(fireGlobals){globalEventContext.trigger("ajaxComplete",[jqXHR,s]);if(!(--jQuery.active)){jQuery.event.trigger("ajaxStop");}}}
678return jqXHR;},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},getScript:function(url,callback){return jQuery.get(url,undefined,callback,"script");}});jQuery.each(["get","post"],function(_i,method){jQuery[method]=function(url,data,callback,type){if(isFunction(data)){type=type||callback;callback=data;data=undefined;}
679return jQuery.ajax(jQuery.extend({url:url,type:method,dataType:type,data:data,success:callback},jQuery.isPlainObject(url)&&url));};});jQuery.ajaxPrefilter(function(s){var i;for(i in s.headers){if(i.toLowerCase()==="content-type"){s.contentType=s.headers[i]||"";}}});jQuery._evalUrl=function(url,options,doc){return jQuery.ajax({url:url,type:"GET",dataType:"script",cache:true,async:false,global:false,converters:{"text script":function(){}},dataFilter:function(response){jQuery.globalEval(response,options,doc);}});};jQuery.fn.extend({wrapAll:function(html){var wrap;if(this[0]){if(isFunction(html)){html=html.call(this[0]);}
680wrap=jQuery(html,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){wrap.insertBefore(this[0]);}
681wrap.map(function(){var elem=this;while(elem.firstElementChild){elem=elem.firstElementChild;}
682return elem;}).append(this);}
683return this;},wrapInner:function(html){if(isFunction(html)){return this.each(function(i){jQuery(this).wrapInner(html.call(this,i));});}
684return this.each(function(){var self=jQuery(this),contents=self.contents();if(contents.length){contents.wrapAll(html);}else{self.append(html);}});},wrap:function(html){var htmlIsFunction=isFunction(html);return this.each(function(i){jQuery(this).wrapAll(htmlIsFunction?html.call(this,i):html);});},unwrap:function(selector){this.parent(selector).not("body").each(function(){jQuery(this).replaceWith(this.childNodes);});return this;}});jQuery.expr.pseudos.hidden=function(elem){return!jQuery.expr.pseudos.visible(elem);};jQuery.expr.pseudos.visible=function(elem){return!!(elem.offsetWidth||elem.offsetHeight||elem.getClientRects().length);};jQuery.ajaxSettings.xhr=function(){try{return new window.XMLHttpRequest();}catch(e){}};var xhrSuccessStatus={0:200,1223:204},xhrSupported=jQuery.ajaxSettings.xhr();support.cors=!!xhrSupported&&("withCredentials"in xhrSupported);support.ajax=xhrSupported=!!xhrSupported;jQuery.ajaxTransport(function(options){var callback,errorCallback;if(support.cors||xhrSupported&&!options.crossDomain){return{send:function(headers,complete){var i,xhr=options.xhr();xhr.open(options.type,options.url,options.async,options.username,options.password);if(options.xhrFields){for(i in options.xhrFields){xhr[i]=options.xhrFields[i];}}
685if(options.mimeType&&xhr.overrideMimeType){xhr.overrideMimeType(options.mimeType);}
686if(!options.crossDomain&&!headers["X-Requested-With"]){headers["X-Requested-With"]="XMLHttpRequest";}
687for(i in headers){xhr.setRequestHeader(i,headers[i]);}
688callback=function(type){return function(){if(callback){callback=errorCallback=xhr.onload=xhr.onerror=xhr.onabort=xhr.ontimeout=xhr.onreadystatechange=null;if(type==="abort"){xhr.abort();}else if(type==="error"){if(typeof xhr.status!=="number"){complete(0,"error");}else{complete(xhr.status,xhr.statusText);}}else{complete(xhrSuccessStatus[xhr.status]||xhr.status,xhr.statusText,(xhr.responseType||"text")!=="text"||typeof xhr.responseText!=="string"?{binary:xhr.response}:{text:xhr.responseText},xhr.getAllResponseHeaders());}}};};xhr.onload=callback();errorCallback=xhr.onerror=xhr.ontimeout=callback("error");if(xhr.onabort!==undefined){xhr.onabort=errorCallback;}else{xhr.onreadystatechange=function(){if(xhr.readyState===4){window.setTimeout(function(){if(callback){errorCallback();}});}};}
689callback=callback("abort");try{xhr.send(options.hasContent&&options.data||null);}catch(e){if(callback){throw e;}}},abort:function(){if(callback){callback();}}};}});jQuery.ajaxPrefilter(function(s){if(s.crossDomain){s.contents.script=false;}});jQuery.ajaxSetup({accepts:{script:"text/javascript, application/javascript, "+
690"application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(text){jQuery.globalEval(text);return text;}}});jQuery.ajaxPrefilter("script",function(s){if(s.cache===undefined){s.cache=false;}
691if(s.crossDomain){s.type="GET";}});jQuery.ajaxTransport("script",function(s){if(s.crossDomain||s.scriptAttrs){var script,callback;return{send:function(_,complete){script=jQuery("<script>")
692.attr(s.scriptAttrs||{})
693.prop({charset:s.scriptCharset,src:s.url})
694.on("load error",callback=function(evt){script.remove();callback=null;if(evt){complete(evt.type==="error"?404:200,evt.type);}});document.head.appendChild(script[0]);},abort:function(){if(callback){callback();}}};}});var oldCallbacks=[],rjsonp=/(=)\?(?=&|$)|\?\?/;jQuery.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var callback=oldCallbacks.pop()||(jQuery.expando+"_"+(nonce.guid++));this[callback]=true;return callback;}});jQuery.ajaxPrefilter("json jsonp",function(s,originalSettings,jqXHR){var callbackName,overwritten,responseContainer,jsonProp=s.jsonp!==false&&(rjsonp.test(s.url)?"url":typeof s.data==="string"&&(s.contentType||"")
695.indexOf("application/x-www-form-urlencoded")===0&&rjsonp.test(s.data)&&"data");if(jsonProp||s.dataTypes[0]==="jsonp"){callbackName=s.jsonpCallback=isFunction(s.jsonpCallback)?s.jsonpCallback():s.jsonpCallback;if(jsonProp){s[jsonProp]=s[jsonProp].replace(rjsonp,"$1"+callbackName);}else if(s.jsonp!==false){s.url+=(rquery.test(s.url)?"&":"?")+s.jsonp+"="+callbackName;}
696s.converters["script json"]=function(){if(!responseContainer){jQuery.error(callbackName+" was not called");}
697return responseContainer[0];};s.dataTypes[0]="json";overwritten=window[callbackName];window[callbackName]=function(){responseContainer=arguments;};jqXHR.always(function(){if(overwritten===undefined){jQuery(window).removeProp(callbackName);}else{window[callbackName]=overwritten;}
698if(s[callbackName]){s.jsonpCallback=originalSettings.jsonpCallback;oldCallbacks.push(callbackName);}
699if(responseContainer&&isFunction(overwritten)){overwritten(responseContainer[0]);}
700responseContainer=overwritten=undefined;});return"script";}});support.createHTMLDocument=(function(){var body=document.implementation.createHTMLDocument("").body;body.innerHTML="<form></form><form></form>";return body.childNodes.length===2;})();jQuery.parseHTML=function(data,context,keepScripts){if(typeof data!=="string"){return[];}
701if(typeof context==="boolean"){keepScripts=context;context=false;}
702var base,parsed,scripts;if(!context){if(support.createHTMLDocument){context=document.implementation.createHTMLDocument("");base=context.createElement("base");base.href=document.location.href;context.head.appendChild(base);}else{context=document;}}
703parsed=rsingleTag.exec(data);scripts=!keepScripts&&[];if(parsed){return[context.createElement(parsed[1])];}
704parsed=buildFragment([data],context,scripts);if(scripts&&scripts.length){jQuery(scripts).remove();}
705return jQuery.merge([],parsed.childNodes);};jQuery.fn.load=function(url,params,callback){var selector,type,response,self=this,off=url.indexOf(" ");if(off>-1){selector=stripAndCollapse(url.slice(off));url=url.slice(0,off);}
706if(isFunction(params)){callback=params;params=undefined;}else if(params&&typeof params==="object"){type="POST";}
707if(self.length>0){jQuery.ajax({url:url,type:type||"GET",dataType:"html",data:params}).done(function(responseText){response=arguments;self.html(selector?jQuery("<div>").append(jQuery.parseHTML(responseText)).find(selector):responseText);}).always(callback&&function(jqXHR,status){self.each(function(){callback.apply(this,response||[jqXHR.responseText,status,jqXHR]);});});}
708return this;};jQuery.expr.pseudos.animated=function(elem){return jQuery.grep(jQuery.timers,function(fn){return elem===fn.elem;}).length;};jQuery.offset={setOffset:function(elem,options,i){var curPosition,curLeft,curCSSTop,curTop,curOffset,curCSSLeft,calculatePosition,position=jQuery.css(elem,"position"),curElem=jQuery(elem),props={};if(position==="static"){elem.style.position="relative";}
709curOffset=curElem.offset();curCSSTop=jQuery.css(elem,"top");curCSSLeft=jQuery.css(elem,"left");calculatePosition=(position==="absolute"||position==="fixed")&&(curCSSTop+curCSSLeft).indexOf("auto")>-1;if(calculatePosition){curPosition=curElem.position();curTop=curPosition.top;curLeft=curPosition.left;}else{curTop=parseFloat(curCSSTop)||0;curLeft=parseFloat(curCSSLeft)||0;}
710if(isFunction(options)){options=options.call(elem,i,jQuery.extend({},curOffset));}
711if(options.top!=null){props.top=(options.top-curOffset.top)+curTop;}
vendor: 5,639 bytes, lines 712-733
712if(options.left!=null){props.left=(options.left-curOffset.left)+curLeft;}
713if("using"in options){options.using.call(elem,props);}else{curElem.css(props);}}};jQuery.fn.extend({offset:function(options){if(arguments.length){return options===undefined?this:this.each(function(i){jQuery.offset.setOffset(this,options,i);});}
714var rect,win,elem=this[0];if(!elem){return;}
715if(!elem.getClientRects().length){return{top:0,left:0};}
716rect=elem.getBoundingClientRect();win=elem.ownerDocument.defaultView;return{top:rect.top+win.pageYOffset,left:rect.left+win.pageXOffset};},position:function(){if(!this[0]){return;}
717var offsetParent,offset,doc,elem=this[0],parentOffset={top:0,left:0};if(jQuery.css(elem,"position")==="fixed"){offset=elem.getBoundingClientRect();}else{offset=this.offset();doc=elem.ownerDocument;offsetParent=elem.offsetParent||doc.documentElement;while(offsetParent&&(offsetParent===doc.body||offsetParent===doc.documentElement)&&jQuery.css(offsetParent,"position")==="static"){offsetParent=offsetParent.parentNode;}
718if(offsetParent&&offsetParent!==elem&&offsetParent.nodeType===1){parentOffset=jQuery(offsetParent).offset();parentOffset.top+=jQuery.css(offsetParent,"borderTopWidth",true);parentOffset.left+=jQuery.css(offsetParent,"borderLeftWidth",true);}}
719return{top:offset.top-parentOffset.top-jQuery.css(elem,"marginTop",true),left:offset.left-parentOffset.left-jQuery.css(elem,"marginLeft",true)};},offsetParent:function(){return this.map(function(){var offsetParent=this.offsetParent;while(offsetParent&&jQuery.css(offsetParent,"position")==="static"){offsetParent=offsetParent.offsetParent;}
720return offsetParent||documentElement;});}});jQuery.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(method,prop){var top="pageYOffset"===prop;jQuery.fn[method]=function(val){return access(this,function(elem,method,val){var win;if(isWindow(elem)){win=elem;}else if(elem.nodeType===9){win=elem.defaultView;}
721if(val===undefined){return win?win[prop]:elem[method];}
722if(win){win.scrollTo(!top?val:win.pageXOffset,top?val:win.pageYOffset);}else{elem[method]=val;}},method,val,arguments.length);};});jQuery.each(["top","left"],function(_i,prop){jQuery.cssHooks[prop]=addGetHookIf(support.pixelPosition,function(elem,computed){if(computed){computed=curCSS(elem,prop);return rnumnonpx.test(computed)?jQuery(elem).position()[prop]+"px":computed;}});});jQuery.each({Height:"height",Width:"width"},function(name,type){jQuery.each({padding:"inner"+name,content:type,"":"outer"+name},function(defaultExtra,funcName){jQuery.fn[funcName]=function(margin,value){var chainable=arguments.length&&(defaultExtra||typeof margin!=="boolean"),extra=defaultExtra||(margin===true||value===true?"margin":"border");return access(this,function(elem,type,value){var doc;if(isWindow(elem)){return funcName.indexOf("outer")===0?elem["inner"+name]:elem.document.documentElement["client"+name];}
723if(elem.nodeType===9){doc=elem.documentElement;return Math.max(elem.body["scroll"+name],doc["scroll"+name],elem.body["offset"+name],doc["offset"+name],doc["client"+name]);}
724return value===undefined?jQuery.css(elem,type,extra):jQuery.style(elem,type,value,extra);},type,chainable?margin:undefined,chainable);};});});jQuery.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(_i,type){jQuery.fn[type]=function(fn){return this.on(type,fn);};});jQuery.fn.extend({bind:function(types,data,fn){return this.on(types,null,data,fn);},unbind:function(types,fn){return this.off(types,null,fn);},delegate:function(selector,types,data,fn){return this.on(types,selector,data,fn);},undelegate:function(selector,types,fn){return arguments.length===1?this.off(selector,"**"):this.off(types,selector||"**",fn);},hover:function(fnOver,fnOut){return this.mouseenter(fnOver).mouseleave(fnOut||fnOver);}});jQuery.each(("blur focus focusin focusout resize scroll click dblclick "+
725"mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave "+
726"change select submit keydown keypress keyup contextmenu").split(" "),function(_i,name){jQuery.fn[name]=function(data,fn){return arguments.length>0?this.on(name,null,data,fn):this.trigger(name);};});var rtrim=/^[\s\uFEFF\xA0]+|([^\s\uFEFF\xA0])[\s\uFEFF\xA0]+$/g;jQuery.proxy=function(fn,context){var tmp,args,proxy;if(typeof context==="string"){tmp=fn[context];context=fn;fn=tmp;}
727if(!isFunction(fn)){return undefined;}
728args=slice.call(arguments,2);proxy=function(){return fn.apply(context||this,args.concat(slice.call(arguments)));};proxy.guid=fn.guid=fn.guid||jQuery.guid++;return proxy;};jQuery.holdReady=function(hold){if(hold){jQuery.readyWait++;}else{jQuery.ready(true);}};jQuery.isArray=Array.isArray;jQuery.parseJSON=JSON.parse;jQuery.nodeName=nodeName;jQuery.isFunction=isFunction;jQuery.isWindow=isWindow;jQuery.camelCase=camelCase;jQuery.type=toType;jQuery.now=Date.now;jQuery.isNumeric=function(obj){var type=jQuery.type(obj);return(type==="number"||type==="string")&&!isNaN(obj-parseFloat(obj));};jQuery.trim=function(text){return text==null?"":(text+"").replace(rtrim,"$1");};if(typeof define==="function"&&define.amd){define("jquery",[],function(){return jQuery;});}
729var
730_jQuery=window.jQuery,_$=window.$;jQuery.noConflict=function(deep){if(window.$===jQuery){window.$=_$;}
731if(deep&&window.jQuery===jQuery){window.jQuery=_jQuery;}
732return jQuery;};if(typeof noGlobal==="undefined"){window.jQuery=window.$=jQuery;}
733return jQuery;});!function(t,e){if("object"==typeof exports&&"object"==typeof module)module.exports=e(require("jquery"));else if("function"==typeof define&&define.amd)define(["jquery"],e);else{var n="object"==typeof exports?e(require("jquery")):e(t.jQuery);
733for(var i in n)("object"==typeof exports?exports:t)[i]=n[i]}}(window,function(n){return function(n){var i={};function o(t){if(i[t])return i[t].exports;var e=i[t]={i:t,l:!1,exports:{}};return n[t].call(e.exports,e,e.exports,o),e.l=!0,e.exports}return o.m=n,o.c=i,o.d=function(t,e,n){o.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},o.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},o.t=function(e,t){if(1&t&&(e=o(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(o.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)o.d(n,i,function(t){return e[t]}.bind(null,i));return n},o.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return o.d(e,"a",e),e},o.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},o.p="",o(o.s=0)}({
733"./js/entries/foundation.js":function(t,e,n){"use strict";n.r(e);var i=n("jquery"),o=n.n(i),s=n("./js/foundation.core.js");n.d(e,"Foundation",function(){return s.Foundation});var a=n("./js/foundation.core.utils.js");n.d(e,"CoreUtils",function(){return a});var r=n("./js/foundation.util.box.js");n.d(e,"Box",function(){return r.Box});var l=n("./js/foundation.util.imageLoader.js");n.d(e,"onImagesLoaded",function(){return l.onImagesLoaded});var u=n("./js/foundation.util.keyboard.js");n.d(e,"Keyboard",function(){return u.Keyboard});var c=n("./js/foundation.util.mediaQuery.js");n.d(e,"MediaQuery",function(){return c.MediaQuery});var d=n("./js/foundation.util.motion.js");n.d(e,"Motion",function(){return d.Motion});var h=n("./js/foundation.util.nest.js");n.d(e,"Nest",function(){return h.Nest});var f=n("./js/foundation.util.timer.js");n.d(e,"Timer",function(){return f.Timer});var p=n("./js/foundation.util.touch.js");n.d(e,"Touch",function(){return p.Touch});var m=n("./js/foundation.util.triggers.js");n.d(e,"Triggers",function(){return m.Triggers});var g=n("./js/foundation.abide.js");n.d(e,"Abide",function(){return g.Abide});var v=n("./js/foundation.accordion.js");n.d(e,"Accordion",function(){return v.Accordion});var y=n("./js/foundation.accordionMenu.js");n.d(e,"AccordionMenu",function(){return y.AccordionMenu});var b=n("./js/foundation.drilldown.js");n.d(e,"Drilldown",function(){return b.Drilldown});var w=n("./js/foundation.dropdown.js");n.d(e,"Dropdown",function(){return w.Dropdown});var _=n("./js/foundation.dropdownMenu.js");n.d(e,"DropdownMenu",function(){return _.DropdownMenu});var $=n("./js/foundation.equalizer.js");n.d(e,"Equalizer",function(){return $.Equalizer});var j=n("./js/foundation.interchange.js");n.d(e,"Interchange",function(){return j.Interchange});var k=n("./js/foundation.magellan.js");n.d(e,"Magellan",function(){return k.Magellan});var O=n("./js/foundation.offcanvas.js");n.d(e,"OffCanvas",function(){return O.OffCanvas});var C=n("./js/foundation.orbit.js");n.d(e,"Orbit",function(){return C.Orbit});var z=n("./js/foundation.responsiveMenu.js");n.d(e,"ResponsiveMenu",function(){return z.ResponsiveMenu});var T=n("./js/foundation.responsiveToggle.js");n.d(e,"ResponsiveToggle",function(){return T.ResponsiveToggle});var S=n("./js/foundation.reveal.js");n.d(e,"Reveal",function(){return S.Reveal});var P=n("./js/foundation.slider.js");n.d(e,"Slider",function(){return P.Slider});var E=n("./js/foundation.smoothScroll.js");n.d(e,"SmoothScroll",function(){return E.SmoothScroll});var A=n("./js/foundation.sticky.js");n.d(e,"Sticky",function(){return A.Sticky});var x=n("./js/foundation.tabs.js");n.d(e,"Tabs",function(){return x.Tabs});var L=n("./js/foundation.toggler.js");n.d(e,"Toggler",function(){return L.Toggler});var R=n("./js/foundation.tooltip.js");n.d(e,"Tooltip",function(){return R.Tooltip});var M=n("./js/foundation.responsiveAccordionTabs.js");n.d(e,"ResponsiveAccordionTabs",function(){return M.ResponsiveAccordionTabs}),s.Foundation.addToJquery(o.a),s.Foundation.rtl=a.rtl,s.Foundation.GetYoDigits=a.GetYoDigits,s.Foundation.transitionend=a.transitionend,s.Foundation.RegExpEscape=a.RegExpEscape,s.Foundation.onLoad=a.onLoad,s.Foundation.Box=r.Box,s.Foundation.onImagesLoaded=l.onImagesLoaded,s.Foundation.Keyboard=u.Keyboard,s.Foundation.MediaQuery=c.MediaQuery,s.Foundation.Motion=d.Motion,s.Foundation.Move=d.Move,s.Foundation.Nest=h.Nest,s.Foundation.Timer=f.Timer,p.Touch.init(o.a),m.Triggers.init(o.a,s.Foundation),c.MediaQuery._init(),s.Foundation.plugin(g.Abide,"Abide"),s.Foundation.plugin(v.Accordion,"Accordion"),s.Foundation.plugin(y.AccordionMenu,"AccordionMenu"),s.Foundation.plugin(b.Drilldown,"Drilldown"),s.Foundation.plugin(w.Dropdown,"Dropdown"),s.Foundation.plugin(_.DropdownMenu,"DropdownMenu"),s.Foundation.plugin($.Equalizer,"Equalizer"),s.Foundation.plugin(j.Interchange,"Interchange"),s.Foundation.plugin(k.Magellan,"Magellan"),s.Foundation.plugin(O.OffCanvas,"OffCanvas"),s.Foundation.plugin(C.Orbit,"Orbit"),s.Foundation.plugin(z.ResponsiveMenu,"ResponsiveMenu"),s.Foundation.plugin(T.ResponsiveToggle,"ResponsiveToggle"),s.Foundation.plugin(S.Reveal,"Reveal"),s.Foundation.plugin(P.Slider,"Slider"),s.Foundation.plugin(E.SmoothScroll,"SmoothScroll"),s.Foundation.plugin(A.Sticky,"Sticky"),s.Foundation.plugin(x.Tabs,"Tabs"),s.Foundation.plugin(L.Toggler,"Toggler"),s.Foundation.plugin(R.Tooltip,"Tooltip"),s.Foundation.plugin(M.ResponsiveAccordionTabs,"ResponsiveAccordionTabs"),e.default=s.Foundation},
733"./js/foundation.abide.js":function(t,e,n){"use strict";n.r(e),n.d(e,"Abide",function(){return h});var i=n("jquery"),c=n.n(i),s=n("./js/foundation.core.plugin.js"),a=n("./js/foundation.core.utils.js");function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function r(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function l(t,e){return!e||"object"!==o(e)&&"function"!=typeof e?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):e}function u(t){return(u=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function d(t,e){return(d=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var h=function(t){function n(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,n),l(this,u(n).apply(this,arguments))}var e,i,o;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&d(t,e)}(n,s["Plugin"]),e=n,(i=[{key:"_setup",value:function(t){var e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{};this.$element=t,this.options=c.a.extend(!0,{},n.defaults,this.$element.data(),e),this.className="Abide",this._init()}},{key:"_init",value:function(){var n=this;this.$inputs=c.a.merge(this.$element.find("input").not("[type=submit]"),this.$element.find("textarea, select"));var t=this.$element.find("[data-abide-error]");this.options.a11yAttributes&&(this.$inputs.each(function(t,e){return n.addA11yAttributes(c()(e))}),t.each(function(t,e){return n.addGlobalErrorA11yAttributes(c()(e))})),this._events()}},{key:"_events",value:function(){var e=this;this.$element.off(".abide").on("reset.zf.abide",function(){e.resetForm()}).on("submit.zf.abide",function(){return e.validateForm()}),"fieldChange"===this.options.validateOn&&this.$inputs.off("change.zf.abide").on("change.zf.abide",function(t){e.validateInput(c()(t.target))}),this.options.liveValidate&&this.$inputs.off("input.zf.abide").on("input.zf.abide",function(t){e.validateInput(c()(t.target))}),this.options.validateOnBlur&&this.$inputs.off("blur.zf.abide").on("blur.zf.abide",function(t){e.validateInput(c()(t.target))})}},{key:"_reflow",value:function(){this._init()}},{key:"requiredCheck",value:function(t){if(!t.attr("required"))return!0;var e=!0;switch(t[0].type){case"checkbox":e=t[0].checked;break;case"select":case"select-one":case"select-multiple":var n=t.find("option:selected");n.length&&n.val()||(e=!1);break;default:t.val()&&t.val().length||(e=!1)}return e}},{key:"findFormError",value:function(t){var e=t[0].id,n=t.siblings(this.options.formErrorSelector);return n.length||(n=t.parent().find(this.options.formErrorSelector)),e&&(n=n.add(this.$element.find('[data-form-error-for="'.concat(e,'"]')))),n}},{key:"findLabel",value:function(t){var e=t[0].id,n=this.$element.find('label[for="'.concat(e,'"]'));return n.length?n:t.closest("label")}},{key:"findRadioLabels",value:function(t){var o=this,e=t.map(function(t,e){var n=e.id,i=o.$element.find('label[for="'.concat(n,'"]'));return i.length||(i=c()(e).closest("label")),i[0]});return c()(e)}},{key:"addErrorClasses",value:function(t){var e=this.findLabel(t),n=this.findFormError(t);e.length&&e.addClass(this.options.labelErrorClass),n.length&&n.addClass(this.options.formErrorClass),t.addClass(this.options.inputErrorClass).attr({"data-invalid":"","aria-invalid":!0})}},{key:"addA11yAttributes",value:function(t){var e=this.findFormError(t),n=e.filter("label"),i=e.first();if(e.length){if(void 0===t.attr("aria-describedby")){var o=i.attr("id");void 0===o&&(o=Object(a.GetYoDigits)(6,"abide-error"),i.attr("id",o)),t.attr("aria-describedby",o)}if(n.filter("[for]").length<n.length){var s=t.attr("id");void 0===s&&(s=Object(a.GetYoDigits)(6,"abide-input"),t.attr("id",s)),n.each(function(t,e){var n=c()(e);void 0===n.attr("for")&&n.attr("for",s)})}e.each(function(t,e){var n=c()(e);void 0===n.attr("role")&&n.attr("role","alert")}).end()}}},{key:"addGlobalErrorA11yAttributes",value:function(t){void 0===t.attr("aria-live")&&t.attr("aria-live",this.options.a11yErrorLevel)}},{key:"removeRadioErrorClasses",value:function(t){var e=this.$element.find(':radio[name="'.concat(t,'"]')),n=this.findRadioLabels(e),i=this.findFormError(e);n.length&&n.removeClass(this.options.labelErrorClass),i.length&&i.removeClass(this.options.formErrorClass),e.removeClass(this.options.inputErrorClass).attr({"data-invalid":null,"aria-invalid":null})}},{key:"removeErrorClasses",value:function(t){if("radio"==t[0].type)return this.removeRadioErrorClasses(t.attr("name"));var e=this.findLabel(t),n=this.findFormError(t);e.length&&e.removeClass(this.options.labelErrorClass),n.length&&n.removeClass(this.options.formErrorClass),t.removeClass(this.options.inputErrorClass).attr({"data-invalid":null,"aria-invalid":null})}},{key:"validateInput",value:function(t){var e=this.requiredCheck(t),n=!1,i=!0,o=t.attr("data-validator"),s=!0;if(t.is("[data-abide-ignore]")||t.is('[type="hidden"]')||t.is("[disabled]"))return!0;switch(t[0].type){case"radio":n=this.validateRadio(t.attr("name"));break;case"checkbox":n=e;break;case"select":case"select-one":case"select-multiple":n=e;break;default:n=this.validateText(t)}
733o&&(i=this.matchValidation(t,o,t.attr("required"))),t.attr("data-equalto")&&(s=this.options.validators.equalTo(t));var a=-1===[e,n,i,s].indexOf(!1),r=(a?"valid":"invalid")+".zf.abide";if(a){var l=this.$element.find('[data-equalto="'.concat(t.attr("id"),'"]'));if(l.length){var u=this;l.each(function(){c()(this).val()&&u.validateInput(c()(this))})}}return this[a?"removeErrorClasses":"addErrorClasses"](t),t.trigger(r,[t]),a}},{key:"validateForm",value:function(){var i=this,t=[],e=this;this.$inputs.each(function(){t.push(e.validateInput(c()(this)))});var o=-1===t.indexOf(!1);return this.$element.find("[data-abide-error]").each(function(t,e){var n=c()(e);i.options.a11yAttributes&&i.addGlobalErrorA11yAttributes(n),n.css("display",o?"none":"block")}),this.$element.trigger((o?"formvalid":"forminvalid")+".zf.abide",[this.$element]),o}},{key:"validateText",value:function(t,e){e=e||t.attr("pattern")||t.attr("type");var n=t.val(),i=!1;return n.length?i=this.options.patterns.hasOwnProperty(e)?this.options.patterns[e].test(n):e===t.attr("type")||new RegExp(e).test(n):t.prop("required")||(i=!0),i}},{key:"validateRadio",value:function(t){var e=this.$element.find(':radio[name="'.concat(t,'"]')),n=!1,i=!1;return e.each(function(t,e){c()(e).attr("required")&&(i=!0)}),i||(n=!0),n||e.each(function(t,e){c()(e).prop("checked")&&(n=!0)}),n}},{key:"matchValidation",value:function(e,t,n){var i=this;return n=!!n,-1===t.split(" ").map(function(t){return i.options.validators[t](e,n,e.parent())}).indexOf(!1)}},{key:"resetForm",value:function(){var t=this.$element,e=this.options;c()(".".concat(e.labelErrorClass),t).not("small").removeClass(e.labelErrorClass),c()(".".concat(e.inputErrorClass),t).not("small").removeClass(e.inputErrorClass),c()("".concat(e.formErrorSelector,".").concat(e.formErrorClass)).removeClass(e.formErrorClass),t.find("[data-abide-error]").css("display","none"),c()(":input",t).not(":button, :submit, :reset, :hidden, :radio, :checkbox, [data-abide-ignore]").val("").attr({"data-invalid":null,"aria-invalid":null}),c()(":input:radio",t).not("[data-abide-ignore]").prop("checked",!1).attr({"data-invalid":null,"aria-invalid":null}),c()(":input:checkbox",t).not("[data-abide-ignore]").prop("checked",!1).attr({"data-invalid":null,"aria-invalid":null}),t.trigger("formreset.zf.abide",[t])}},{key:"_destroy",value:function(){var t=this;this.$element.off(".abide").find("[data-abide-error]").css("display","none"),this.$inputs.off(".abide").each(function(){t.removeErrorClasses(c()(this))})}}])&&r(e.prototype,i),o&&r(e,o),n}();h.defaults={validateOn:"fieldChange",labelErrorClass:"is-invalid-label",inputErrorClass:"is-invalid-input",formErrorSelector:".form-error",formErrorClass:"is-visible",a11yAttributes:!0,a11yErrorLevel:"assertive",liveValidate:!1,validateOnBlur:!1,patterns:{alpha:/^[a-zA-Z]+$/,alpha_numeric:/^[a-zA-Z0-9]+$/,integer:/^[-+]?\d+$/,number:/^[-+]?\d*(?:[\.\,]\d+)?$/,card:/^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|(?:222[1-9]|2[3-6][0-9]{2}|27[0-1][0-9]|2720)[0-9]{12}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11})$/,cvv:/^([0-9]){3,4}$/,email:/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+$/,url:/^((?:(https?|ftps?|file|ssh|sftp):\/\/|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}\/)(?:[^\s()<>]+|\((?:[^\s()<>]+|(?:\([^\s()<>]+\)))*\))+(?:\((?:[^\s()<>]+|(?:\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:\'".,<>?\xab\xbb\u201c\u201d\u2018\u2019]))$/,domain:/^([a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,8}$/,datetime:/^([0-2][0-9]{3})\-([0-1][0-9])\-([0-3][0-9])T([0-5][0-9])\:([0-5][0-9])\:([0-5][0-9])(Z|([\-\+]([0-1][0-9])\:00))$/,date:/(?:19|20)[0-9]{2}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-9])|(?:(?!02)(?:0[1-9]|1[0-2])-(?:30))|(?:(?:0[13578]|1[02])-31))$/,time:/^(0[0-9]|1[0-9]|2[0-3])(:[0-5][0-9]){2}$/,dateISO:/^\d{4}[\/\-]\d{1,2}[\/\-]\d{1,2}$/,month_day_year:/^(0[1-9]|1[012])[- \/.](0[1-9]|[12][0-9]|3[01])[- \/.]\d{4}$/,day_month_year:/^(0[1-9]|[12][0-9]|3[01])[- \/.](0[1-9]|1[012])[- \/.]\d{4}$/,color:/^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/,website:{test:function(t){return h.defaults.patterns.domain.test(t)||h.defaults.patterns.url.test(t)}}},validators:{equalTo:function(t,e,n){return c()("#".concat(t.attr("data-equalto"))).val()===t.val()}}}},
733"./js/foundation.accordion.js":function(t,e,n){"use strict";n.r(e),n.d(e,"Accordion",function(){return f});var i=n("jquery"),a=n.n(i),r=n("./js/foundation.core.utils.js"),s=n("./js/foundation.util.keyboard.js"),l=n("./js/foundation.core.plugin.js");function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function u(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function c(t,e){return!e||"object"!==o(e)&&"function"!=typeof e?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):e}function d(t){return(d=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function h(t,e){return(h=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var f=function(t){function n(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,n),c(this,d(n).apply(this,arguments))}var e,i,o;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&h(t,e)}(n,l["Plugin"]),e=n,(i=[{key:"_setup",value:function(t,e){this.$element=t,this.options=a.a.extend({},n.defaults,this.$element.data(),e),this.className="Accordion",this._init(),s.Keyboard.register("Accordion",{ENTER:"toggle",SPACE:"toggle",ARROW_DOWN:"next",ARROW_UP:"previous"})}},{key:"_init",value:function(){var o=this;this._isInitializing=!0,this.$element.attr("role","tablist"),this.$tabs=this.$element.children("[data-accordion-item]"),this.$tabs.each(function(t,e){var n=a()(e),i=n.children("[data-tab-content]"),o=i[0].id||Object(r.GetYoDigits)(6,"accordion"),s=e.id?"".concat(e.id,"-label"):"".concat(o,"-label");n.find("a:first").attr({"aria-controls":o,role:"tab",id:s,"aria-expanded":!1,"aria-selected":!1}),i.attr({role:"tabpanel","aria-labelledby":s,"aria-hidden":!0,id:o})});var t=this.$element.find(".is-active").children("[data-tab-content]");t.length&&(this._initialAnchor=t.prev("a").attr("href"),this._openSingleTab(t)),this._checkDeepLink=function(){var t=window.location.hash;if(!t.length){if(o._isInitializing)return;o._initialAnchor&&(t=o._initialAnchor)}var e=t&&a()(t),n=t&&o.$element.find('[href$="'.concat(t,'"]')),i=!(!e.length||!n.length);e&&n&&n.length?n.parent("[data-accordion-item]").hasClass("is-active")||o._openSingleTab(e):o._closeAllTabs(),i&&(o.options.deepLinkSmudge&&Object(r.onLoad)(a()(window),function(){var t=o.$element.offset();a()("html, body").animate({scrollTop:t.top},o.options.deepLinkSmudgeDelay)}),o.$element.trigger("deeplink.zf.accordion",[n,e]))},this.options.deepLink&&this._checkDeepLink(),this._events(),this._isInitializing=!1}},{key:"_events",value:function(){var i=this;this.$tabs.each(function(){var e=a()(this),n=e.children("[data-tab-content]");n.length&&e.children("a").off("click.zf.accordion keydown.zf.accordion").on("click.zf.accordion",function(t){t.preventDefault(),i.toggle(n)}).on("keydown.zf.accordion",function(t){s.Keyboard.handleKey(t,"Accordion",{toggle:function(){i.toggle(n)},next:function(){var t=e.next().find("a").focus();i.options.multiExpand||t.trigger("click.zf.accordion")},previous:function(){var t=e.prev().find("a").focus();i.options.multiExpand||t.trigger("click.zf.accordion")},handled:function(){t.preventDefault(),t.stopPropagation()}})})}),this.options.deepLink&&a()(window).on("hashchange",this._checkDeepLink)}},{key:"toggle",value:function(t){if(t.closest("[data-accordion]").is("[disabled]"))console.info("Cannot toggle an accordion that is disabled.");else if(t.parent().hasClass("is-active")?this.up(t):this.down(t),this.options.deepLink){var e=t.prev("a").attr("href");this.options.updateHistory?history.pushState({},"",e):history.replaceState({},"",e)}}},{key:"down",value:function(t){t.closest("[data-accordion]").is("[disabled]")?console.info("Cannot call down on an accordion that is disabled."):this.options.multiExpand?this._openTab(t):this._openSingleTab(t)}},{key:"up",value:function(t){if(this.$element.is("[disabled]"))console.info("Cannot call up on an accordion that is disabled.");else{var e=t.parent();if(e.hasClass("is-active")){var n=e.siblings();(this.options.allowAllClosed||n.hasClass("is-active"))&&this._closeTab(t)}}}},{key:"_openSingleTab",value:function(t){var e=this.$element.children(".is-active").children("[data-tab-content]");e.length&&this._closeTab(e.not(t)),this._openTab(t)}},{key:"_openTab",value:function(t){var e=this,n=t.parent(),i=t.attr("aria-labelledby");t.attr("aria-hidden",!1),n.addClass("is-active"),a()("#".concat(i)).attr({"aria-expanded":!0,"aria-selected":!0}),t.slideDown(this.options.slideSpeed,function(){e.$element.trigger("down.zf.accordion",[t])})}},{key:"_closeTab",value:function(t){var e=this,n=t.parent(),i=t.attr("aria-labelledby");t.attr("aria-hidden",!0),n.removeClass("is-active"),a()("#".concat(i)).attr({"aria-expanded":!1,"aria-selected":!1}),t.slideUp(this.options.slideSpeed,function(){e.$element.trigger("up.zf.accordion",[t])})}},{key:"_closeAllTabs",value:function(){var t=this.$element.children(".is-active").children("[data-tab-content]");t.length&&this._closeTab(t)}},{key:"_destroy",value:function(){this.$element.find("[data-tab-content]").stop(!0).slideUp(0).css("display",""),this.$element.find("a").off(".zf.accordion"),this.options.deepLink&&a()(window).off("hashchange",this._checkDeepLink)}}
733])&&u(e.prototype,i),o&&u(e,o),n}();f.defaults={slideSpeed:250,multiExpand:!1,allowAllClosed:!1,deepLink:!1,deepLinkSmudge:!1,deepLinkSmudgeDelay:300,updateHistory:!1}},
733"./js/foundation.accordionMenu.js":function(t,e,n){"use strict";n.r(e),n.d(e,"AccordionMenu",function(){return p});var i=n("jquery"),r=n.n(i),l=n("./js/foundation.util.keyboard.js"),a=n("./js/foundation.util.nest.js"),u=n("./js/foundation.core.utils.js"),s=n("./js/foundation.core.plugin.js");function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function c(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function d(t,e){return!e||"object"!==o(e)&&"function"!=typeof e?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):e}function h(t){return(h=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function f(t,e){return(f=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var p=function(t){function n(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,n),d(this,h(n).apply(this,arguments))}var e,i,o;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&f(t,e)}(n,s["Plugin"]),e=n,(i=[{key:"_setup",value:function(t,e){this.$element=t,this.options=r.a.extend({},n.defaults,this.$element.data(),e),this.className="AccordionMenu",this._init(),l.Keyboard.register("AccordionMenu",{ENTER:"toggle",SPACE:"toggle",ARROW_RIGHT:"open",ARROW_UP:"up",ARROW_DOWN:"down",ARROW_LEFT:"close",ESCAPE:"closeAll"})}},{key:"_init",value:function(){a.Nest.Feather(this.$element,"accordion");var s=this;this.$element.find("[data-submenu]").not(".is-active").slideUp(0),this.$element.attr({role:"tree","aria-multiselectable":this.options.multiOpen}),this.$menuLinks=this.$element.find(".is-accordion-submenu-parent"),this.$menuLinks.each(function(){var t=this.id||Object(u.GetYoDigits)(6,"acc-menu-link"),e=r()(this),n=e.children("[data-submenu]"),i=n[0].id||Object(u.GetYoDigits)(6,"acc-menu"),o=n.hasClass("is-active");s.options.parentLink&&e.children("a").clone().prependTo(n).wrap('<li data-is-parent-link class="is-submenu-parent-item is-submenu-item is-accordion-submenu-item"></li>');s.options.submenuToggle?(e.addClass("has-submenu-toggle"),e.children("a").after('<button id="'+t+'" class="submenu-toggle" aria-controls="'+i+'" aria-expanded="'+o+'" title="'+s.options.submenuToggleText+'"><span class="submenu-toggle-text">'+s.options.submenuToggleText+"</span></button>")):e.attr({"aria-controls":i,"aria-expanded":o,id:t}),n.attr({"aria-labelledby":t,"aria-hidden":!o,role:"group",id:i})}),this.$element.find("li").attr({role:"treeitem"});var t=this.$element.find(".is-active");if(t.length){s=this;t.each(function(){s.down(r()(this))})}this._events()}},{key:"_events",value:function(){var a=this;this.$element.find("li").each(function(){var e=r()(this).children("[data-submenu]");e.length&&(a.options.submenuToggle?r()(this).children(".submenu-toggle").off("click.zf.accordionMenu").on("click.zf.accordionMenu",function(t){a.toggle(e)}):r()(this).children("a").off("click.zf.accordionMenu").on("click.zf.accordionMenu",function(t){t.preventDefault(),a.toggle(e)}))}).on("keydown.zf.accordionmenu",function(e){var n,i,o=r()(this),s=o.parent("ul").children("li"),t=o.children("[data-submenu]");s.each(function(t){if(r()(this).is(o))return n=s.eq(Math.max(0,t-1)).find("a").first(),i=s.eq(Math.min(t+1,s.length-1)).find("a").first(),r()(this).children("[data-submenu]:visible").length&&(i=o.find("li:first-child").find("a").first()),r()(this).is(":first-child")?n=o.parents("li").first().find("a").first():n.parents("li").first().children("[data-submenu]:visible").length&&(n=n.parents("li").find("li:last-child").find("a").first()),void(r()(this).is(":last-child")&&(i=o.parents("li").first().next("li").find("a").first()))}),l.Keyboard.handleKey(e,"AccordionMenu",{open:function(){t.is(":hidden")&&(a.down(t),t.find("li").first().find("a").first().focus())},close:function(){t.length&&!t.is(":hidden")?a.up(t):o.parent("[data-submenu]").length&&(a.up(o.parent("[data-submenu]")),o.parents("li").first().find("a").first().focus())},up:function(){return n.focus(),!0},down:function(){return i.focus(),!0},toggle:function(){return!a.options.submenuToggle&&(o.children("[data-submenu]").length?(a.toggle(o.children("[data-submenu]")),!0):void 0)},closeAll:function(){a.hideAll()},handled:function(t){t&&e.preventDefault(),e.stopImmediatePropagation()}})})}},{key:"hideAll",value:function(){this.up(this.$element.find("[data-submenu]"))}},{key:"showAll",value:function(){this.down(this.$element.find("[data-submenu]"))}},{key:"toggle",value:function(t){t.is(":animated")||(t.is(":hidden")?this.down(t):this.up(t))}},{key:"down",value:function(t){var e=this;
733this.options.multiOpen||this.up(this.$element.find(".is-active").not(t.parentsUntil(this.$element).add(t))),t.addClass("is-active").attr({"aria-hidden":!1}),this.options.submenuToggle?t.prev(".submenu-toggle").attr({"aria-expanded":!0}):t.parent(".is-accordion-submenu-parent").attr({"aria-expanded":!0}),t.slideDown(this.options.slideSpeed,function(){e.$element.trigger("down.zf.accordionMenu",[t])})}},{key:"up",value:function(t){var e=this,n=t.find("[data-submenu]"),i=t.add(n);n.slideUp(0),i.removeClass("is-active").attr("aria-hidden",!0),this.options.submenuToggle?i.prev(".submenu-toggle").attr("aria-expanded",!1):i.parent(".is-accordion-submenu-parent").attr("aria-expanded",!1),t.slideUp(this.options.slideSpeed,function(){e.$element.trigger("up.zf.accordionMenu",[t])})}},{key:"_destroy",value:function(){this.$element.find("[data-submenu]").slideDown(0).css("display",""),this.$element.find("a").off("click.zf.accordionMenu"),this.$element.find("[data-is-parent-link]").detach(),this.options.submenuToggle&&(this.$element.find(".has-submenu-toggle").removeClass("has-submenu-toggle"),this.$element.find(".submenu-toggle").remove()),a.Nest.Burn(this.$element,"accordion")}}])&&c(e.prototype,i),o&&c(e,o),n}();p.defaults={parentLink:!1,slideSpeed:250,submenuToggle:!1,submenuToggleText:"Toggle menu",multiOpen:!0}},
733"./js/foundation.core.js":function(t,e,n){"use strict";n.r(e),n.d(e,"Foundation",function(){return l});var i=n("jquery"),s=n.n(i),o=n("./js/foundation.core.utils.js"),a=n("./js/foundation.util.mediaQuery.js");function r(t){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}var l={version:"6.5.1",_plugins:{},_uuids:[],plugin:function(t,e){var n=e||u(t),i=c(n);this._plugins[i]=this[n]=t},registerPlugin:function(t,e){var n=e?c(e):u(t.constructor).toLowerCase();t.uuid=Object(o.GetYoDigits)(6,n),t.$element.attr("data-".concat(n))||t.$element.attr("data-".concat(n),t.uuid),t.$element.data("zfPlugin")||t.$element.data("zfPlugin",t),t.$element.trigger("init.zf.".concat(n)),this._uuids.push(t.uuid)},unregisterPlugin:function(t){var e=c(u(t.$element.data("zfPlugin").constructor));for(var n in this._uuids.splice(this._uuids.indexOf(t.uuid),1),t.$element.removeAttr("data-".concat(e)).removeData("zfPlugin").trigger("destroyed.zf.".concat(e)),t)t[n]=null},reInit:function(t){var e=t instanceof s.a;try{if(e)t.each(function(){s()(this).data("zfPlugin")._init()});else{var n=r(t),i=this;({object:function(t){t.forEach(function(t){t=c(t),s()("[data-"+t+"]").foundation("_init")})},string:function(){t=c(t),s()("[data-"+t+"]").foundation("_init")},undefined:function(){this.object(Object.keys(i._plugins))}})[n](t)}}catch(t){console.error(t)}finally{return t}},reflow:function(i,t){void 0===t?t=Object.keys(this._plugins):"string"==typeof t&&(t=[t]);var o=this;s.a.each(t,function(t,e){var n=o._plugins[e];s()(i).find("[data-"+e+"]").addBack("[data-"+e+"]").each(function(){var t=s()(this),i={};if(t.data("zfPlugin"))console.warn("Tried to initialize "+e+" on an element that already has a Foundation plugin.");else{if(t.attr("data-options"))t.attr("data-options").split(";").forEach(function(t,e){var n=t.split(":").map(function(t){return t.trim()});n[0]&&(i[n[0]]=function(t){{if("true"===t)return!0;if("false"===t)return!1;if(!isNaN(1*t))return parseFloat(t)}return t}(n[1]))});try{t.data("zfPlugin",new n(s()(this),i))}catch(t){console.error(t)}finally{return}}})})},getFnName:u,addToJquery:function(s){return s.fn.foundation=function(n){var t=r(n),e=s(".no-js");if(e.length&&e.removeClass("no-js"),"undefined"===t)a.MediaQuery._init(),l.reflow(this);else{if("string"!==t)throw new TypeError("We're sorry, ".concat(t," is not a valid parameter. You must use a string representing the method you wish to invoke."));var i=Array.prototype.slice.call(arguments,1),o=this.data("zfPlugin");if(void 0===o||void 0===o[n])throw new ReferenceError("We're sorry, '"+n+"' is not an available method for "+(o?u(o):"this element")+".");1===this.length?o[n].apply(o,i):this.each(function(t,e){o[n].apply(s(e).data("zfPlugin"),i)})}return this},s}};function u(t){if(void 0!==Function.prototype.name)return void 0===t.prototype?t.constructor.name:t.prototype.constructor.name;var e=/function\s([^(]{1,})\(/.exec(t.toString());return e&&1<e.length?e[1].trim():""}function c(t){return t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}l.util={throttle:function(n,i){var o=null;return function(){var t=this,e=arguments;null===o&&(o=setTimeout(function(){n.apply(t,e),o=null},i))}}},window.Foundation=l,function(){Date.now&&window.Date.now||(window.Date.now=Date.now=function(){return(new Date).getTime()});for(var t=["webkit","moz"],e=0;e<t.length&&!window.requestAnimationFrame;++e){var n=t[e];window.requestAnimationFrame=window[n+"RequestAnimationFrame"],window.cancelAnimationFrame=window[n+"CancelAnimationFrame"]||window[n+"CancelRequestAnimationFrame"]}if(/iP(ad|hone|od).*OS 6/.test(window.navigator.userAgent)||!window.requestAnimationFrame||!window.cancelAnimationFrame){var i=0;window.requestAnimationFrame=function(t){var e=Date.now(),n=Math.max(i+16,e);return setTimeout(function(){t(i=n)},n-e)},window.cancelAnimationFrame=clearTimeout}window.performance&&window.performance.now||(window.performance={start:Date.now(),now:function(){return Date.now()-this.start}})}(),Function.prototype.bind||(Function.prototype.bind=function(t){if("function"!=typeof this)throw new TypeError("Function.prototype.bind - what is trying to be bound is not callable");
733var e=Array.prototype.slice.call(arguments,1),n=this,i=function(){},o=function(){return n.apply(this instanceof i?this:t,e.concat(Array.prototype.slice.call(arguments)))};return this.prototype&&(i.prototype=this.prototype),o.prototype=new i,o})},
733"./js/foundation.core.plugin.js":function(t,e,n){"use strict";n.r(e),n.d(e,"Plugin",function(){return i});n("jquery");var o=n("./js/foundation.core.utils.js");function s(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}var i=function(){function i(t,e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,i),this._setup(t,e);var n=r(this);this.uuid=Object(o.GetYoDigits)(6,n),this.$element.attr("data-".concat(n))||this.$element.attr("data-".concat(n),this.uuid),this.$element.data("zfPlugin")||this.$element.data("zfPlugin",this),this.$element.trigger("init.zf.".concat(n))}var t,e,n;return t=i,(e=[{key:"destroy",value:function(){this._destroy();var t=r(this);for(var e in this.$element.removeAttr("data-".concat(t)).removeData("zfPlugin").trigger("destroyed.zf.".concat(t)),this)this[e]=null}}])&&s(t.prototype,e),n&&s(t,n),i}();function a(t){return t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function r(t){return void 0!==t.constructor.name?a(t.constructor.name):a(t.className)}},
733"./js/foundation.core.utils.js":function(t,e,n){"use strict";n.r(e),n.d(e,"rtl",function(){return o}),n.d(e,"GetYoDigits",function(){return s}),n.d(e,"RegExpEscape",function(){return a}),n.d(e,"transitionend",function(){return r}),n.d(e,"onLoad",function(){return u}),n.d(e,"ignoreMousedisappear",function(){return c});var i=n("jquery"),l=n.n(i);function o(){return"rtl"===l()("html").attr("dir")}function s(t,e){return t=t||6,Math.round(Math.pow(36,t+1)-Math.random()*Math.pow(36,t)).toString(36).slice(1)+(e?"-".concat(e):"")}function a(t){return t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")}function r(t){var e,n={transition:"transitionend",WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"otransitionend"},i=document.createElement("div");for(var o in n)void 0!==i.style[o]&&(e=n[o]);return e||(e=setTimeout(function(){t.triggerHandler("transitionend",[t])},1),"transitionend")}function u(t,e){var n="complete"===document.readyState,i=(n?"_didLoad":"load")+".zf.util.onLoad",o=function(){return t.triggerHandler(i)};return t&&(e&&t.one(i,e),n?setTimeout(o):l()(window).one("load",o)),i}function c(s){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},e=t.ignoreLeaveWindow,a=void 0!==e&&e,n=t.ignoreReappear,r=void 0!==n&&n;return function(e){for(var t=arguments.length,n=new Array(1<t?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];var o=s.bind.apply(s,[this,e].concat(n));if(null!==e.relatedTarget)return o();setTimeout(function(){if(!a&&document.hasFocus&&!document.hasFocus())return o();r||l()(document).one("mouseenter",function(t){l()(e.currentTarget).has(t.target).length||(e.relatedTarget=t.target,o())})},0)}}},
733"./js/foundation.drilldown.js":function(t,e,n){"use strict";n.r(e),n.d(e,"Drilldown",function(){return m});var i=n("jquery"),a=n.n(i),r=n("./js/foundation.util.keyboard.js"),s=n("./js/foundation.util.nest.js"),l=n("./js/foundation.core.utils.js"),u=n("./js/foundation.util.box.js"),c=n("./js/foundation.core.plugin.js");function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function d(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function h(t,e){return!e||"object"!==o(e)&&"function"!=typeof e?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):e}function f(t){return(f=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function p(t,e){return(p=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var m=function(t){function n(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,n),h(this,f(n).apply(this,arguments))}var e,i,o;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&p(t,e)}(n,c["Plugin"]),e=n,(i=[{key:"_setup",value:function(t,e){this.$element=t,this.options=a.a.extend({},n.defaults,this.$element.data(),e),this.className="Drilldown",this._init(),r.Keyboard.register("Drilldown",{ENTER:"open",SPACE:"open",ARROW_RIGHT:"next",ARROW_UP:"up",ARROW_DOWN:"down",ARROW_LEFT:"previous",ESCAPE:"close",TAB:"down",SHIFT_TAB:"up"})}},{key:"_init",value:function(){s.Nest.Feather(this.$element,"drilldown"),this.options.autoApplyClass&&this.$element.addClass("drilldown"),this.$element.attr({role:"tree","aria-multiselectable":!1}),this.$submenuAnchors=this.$element.find("li.is-drilldown-submenu-parent").children("a"),this.$submenus=this.$submenuAnchors.parent("li").children("[data-submenu]").attr("role","group"),this.$menuItems=this.$element.find("li").not(".js-drilldown-back").attr("role","treeitem").find("a"),this.$currentMenu=this.$element,this.$element.attr("data-mutate",this.$element.attr("data-drilldown")||Object(l.GetYoDigits)(6,"drilldown")),this._prepareMenu(),this._registerEvents(),this._keyboardEvents()}},{key:"_prepareMenu",value:function(){var n=this;this.$submenuAnchors.each(function(){var t=a()(this),e=t.parent();n.options.parentLink&&t.clone().prependTo(e.children("[data-submenu]")).wrap('<li data-is-parent-link class="is-submenu-parent-item is-submenu-item is-drilldown-submenu-item" role="menuitem"></li>'),t.data("savedHref",t.attr("href")).removeAttr("href").attr("tabindex",0),t.children("[data-submenu]").attr({"aria-hidden":!0,tabindex:0,role:"group"}),n._events(t)}),this.$submenus.each(function(){var t=a()(this);if(!t.find(".js-drilldown-back").length)switch(n.options.backButtonPosition){case"bottom":t.append(n.options.backButton);break;case"top":t.prepend(n.options.backButton);break;default:console.error("Unsupported backButtonPosition value '"+n.options.backButtonPosition+"'")}n._back(t)}),this.$submenus.addClass("invisible"),this.options.autoHeight||this.$submenus.addClass("drilldown-submenu-cover-previous"),this.$element.parent().hasClass("is-drilldown")||(this.$wrapper=a()(this.options.wrapper).addClass("is-drilldown"),this.options.animateHeight&&this.$wrapper.addClass("animate-height"),this.$element.wrap(this.$wrapper)),this.$wrapper=this.$element.parent(),this.$wrapper.css(this._getMaxDims())}},{key:"_resize",value:function(){this.$wrapper.css({"max-width":"none","min-height":"none"}),this.$wrapper.css(this._getMaxDims())}},{key:"_events",value:function(n){var i=this;n.off("click.zf.drilldown").on("click.zf.drilldown",function(t){if(a()(t.target).parentsUntil("ul","li").hasClass("is-drilldown-submenu-parent")&&(t.stopImmediatePropagation(),t.preventDefault()),i._show(n.parent("li")),i.options.closeOnClick){var e=a()("body");e.off(".zf.drilldown").on("click.zf.drilldown",function(t){t.target===i.$element[0]||a.a.contains(i.$element[0],t.target)||(t.preventDefault(),i._hideAll(),e.off(".zf.drilldown"))})}})}},{key:"_registerEvents",value:function(){this.options.scrollTop&&(this._bindHandler=this._scrollTop.bind(this),this.$element.on("open.zf.drilldown hide.zf.drilldown closed.zf.drilldown",this._bindHandler)),this.$element.on("mutateme.zf.trigger",this._resize.bind(this))}},{key:"_scrollTop",value:function(){var t=this,e=""!=t.options.scrollTopElement?a()(t.options.scrollTopElement):t.$element,n=parseInt(e.offset().top+t.options.scrollTopOffset,10);a()("html, body").stop(!0).animate({scrollTop:n},t.options.animationDuration,t.options.animationEasing,function(){this===a()("html")[0]&&t.$element.trigger("scrollme.zf.drilldown")})}},{key:"_keyboardEvents",value:function(){var t=this;this.$menuItems.add(this.$element.find(".js-drilldown-back > a, .is-submenu-parent-item > a")).on("keydown.zf.drilldown",function(e){var n,i,o=a()(this),s=o.parent("li").parent("ul").children("li").children("a");s.each(function(t){if(a()(this).is(o))return n=s.eq(Math.max(0,t-1)),void(i=s.eq(Math.min(t+1,s.length-1)))}),r.Keyboard.handleKey(e,"Drilldown",{next:function(){if(o.is(t.$submenuAnchors))return t._show(o.parent("li")),o.parent("li").one(Object(l.transitionend)(o),function(){o.parent("li").find("ul li a").not(".js-drilldown-back a").first().focus()}),!0},previous:function(){return t._hide(o.parent("li").parent("ul")),o.parent("li").parent("ul").one(Object(l.transitionend)(o),function(){setTimeout(function(){o.parent("li").parent("ul").parent("li").children("a").first().focus()},1)}),!0},up:function(){return n.focus(),!o.is(t.$element.find("> li:first-child > a"))},down:function(){return i.focus(),!o.is(t.$element.find("> li:last-child > a"))},close:function(){o.is(t.$element.find("> li > a"))||(t._hide(o.parent().parent()),o.parent().parent().siblings("a").focus())},open:function(){return(!t.options.parentLink||!o.attr("href"))&&(o.is(t.$menuItems)?o.is(t.$submenuAnchors)?(t._show(o.parent("li")),o.parent("li").one(Object(l.transitionend)(o),function(){o.parent("li").find("ul li a").not(".js-drilldown-back a").first().focus()}),!0):void 0:(t._hide(o.parent("li").parent("ul")),o.parent("li").parent("ul").one(Object(l.transitionend)(o),function(){setTimeout(function(){o.parent("li").parent("ul").parent("li").children("a").first().focus()},1)}),!0))},handled:function(t){t&&e.preventDefault(),e.stopImmediatePropagation()}})})}}
733,{key:"_hideAll",value:function(){var e=this.$element.find(".is-drilldown-submenu.is-active").addClass("is-closing");this.options.autoHeight&&this.$wrapper.css({height:e.parent().closest("ul").data("calcHeight")}),e.one(Object(l.transitionend)(e),function(t){e.removeClass("is-active is-closing")}),this.$element.trigger("closed.zf.drilldown")}},{key:"_back",value:function(n){var i=this;n.off("click.zf.drilldown"),n.children(".js-drilldown-back").on("click.zf.drilldown",function(t){t.stopImmediatePropagation(),i._hide(n);var e=n.parent("li").parent("ul").parent("li");e.length&&i._show(e)})}},{key:"_menuLinkEvents",value:function(){var e=this;this.$menuItems.not(".is-drilldown-submenu-parent").off("click.zf.drilldown").on("click.zf.drilldown",function(t){setTimeout(function(){e._hideAll()},0)})}},{key:"_setShowSubMenuClasses",value:function(t,e){t.addClass("is-active").removeClass("invisible").attr("aria-hidden",!1),t.parent("li").attr("aria-expanded",!0),!0===e&&this.$element.trigger("open.zf.drilldown",[t])}},{key:"_setHideSubMenuClasses",value:function(t,e){t.removeClass("is-active").addClass("invisible").attr("aria-hidden",!0),t.parent("li").attr("aria-expanded",!1),!0===e&&t.trigger("hide.zf.drilldown",[t])}},{key:"_showMenu",value:function(n,i){var o=this;if(this.$element.find('li[aria-expanded="true"] > ul[data-submenu]').each(function(t){o._setHideSubMenuClasses(a()(this))}),(this.$currentMenu=n).is("[data-drilldown]"))return!0===i&&n.find('li[role="treeitem"] > a').first().focus(),void(this.options.autoHeight&&this.$wrapper.css("height",n.data("calcHeight")));var s=n.children().first().parentsUntil("[data-drilldown]","[data-submenu]");s.each(function(t){0===t&&o.options.autoHeight&&o.$wrapper.css("height",a()(this).data("calcHeight"));var e=t==s.length-1;!0===e&&a()(this).one(Object(l.transitionend)(a()(this)),function(){!0===i&&n.find('li[role="treeitem"] > a').first().focus()}),o._setShowSubMenuClasses(a()(this),e)})}},{key:"_show",value:function(t){var e=t.children("[data-submenu]");t.attr("aria-expanded",!0),(this.$currentMenu=e).addClass("is-active").removeClass("invisible").attr("aria-hidden",!1),this.options.autoHeight&&this.$wrapper.css({height:e.data("calcHeight")}),this.$element.trigger("open.zf.drilldown",[t])}},{key:"_hide",value:function(t){this.options.autoHeight&&this.$wrapper.css({height:t.parent().closest("ul").data("calcHeight")});t.parent("li").attr("aria-expanded",!1),t.attr("aria-hidden",!0),t.addClass("is-closing").one(Object(l.transitionend)(t),function(){t.removeClass("is-active is-closing"),t.blur().addClass("invisible")}),t.trigger("hide.zf.drilldown",[t])}},{key:"_getMaxDims",value:function(){var e=0,t={},n=this;return this.$submenus.add(this.$element).each(function(){a()(this).children("li").length;var t=u.Box.GetDimensions(this).height;e=e<t?t:e,n.options.autoHeight&&a()(this).data("calcHeight",t)}),this.options.autoHeight?t.height=this.$currentMenu.data("calcHeight"):t["min-height"]="".concat(e,"px"),t["max-width"]="".concat(this.$element[0].getBoundingClientRect().width,"px"),t}},{key:"_destroy",value:function(){this.options.scrollTop&&this.$element.off(".zf.drilldown",this._bindHandler),this._hideAll(),this.$element.off("mutateme.zf.trigger"),s.Nest.Burn(this.$element,"drilldown"),this.$element.unwrap().find(".js-drilldown-back, .is-submenu-parent-item").remove().end().find(".is-active, .is-closing, .is-drilldown-submenu").removeClass("is-active is-closing is-drilldown-submenu").end().find("[data-submenu]").removeAttr("aria-hidden tabindex role"),this.$submenuAnchors.each(function(){a()(this).off(".zf.drilldown")}),this.$element.find("[data-is-parent-link]").detach(),this.$submenus.removeClass("drilldown-submenu-cover-previous invisible"),this.$element.find("a").each(function(){var t=a()(this);t.removeAttr("tabindex"),t.data("savedHref")&&t.attr("href",t.data("savedHref")).removeData("savedHref")})}}])&&d(e.prototype,i),o&&d(e,o),n}();m.defaults={autoApplyClass:!0,backButton:'<li class="js-drilldown-back"><a tabindex="0">Back</a></li>',backButtonPosition:"top",wrapper:"<div></div>",parentLink:!1,closeOnClick:!1,autoHeight:!1,animateHeight:!1,scrollTop:!1,scrollTopElement:"",scrollTopOffset:0,animationDuration:500,animationEasing:"swing"}},
733"./js/foundation.dropdown.js":function(t,e,n){"use strict";n.r(e),n.d(e,"Dropdown",function(){return m});var i=n("jquery"),s=n.n(i),a=n("./js/foundation.util.keyboard.js"),r=n("./js/foundation.core.utils.js"),l=n("./js/foundation.positionable.js"),u=n("./js/foundation.util.triggers.js");function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function c(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function d(t,e){return!e||"object"!==o(e)&&"function"!=typeof e?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):e}function h(t,e,n){return(h="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){var i=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=f(t)););return t}(t,e);if(i){var o=Object.getOwnPropertyDescriptor(i,e);return o.get?o.get.call(n):o.value}})(t,e,n||t)}function f(t){return(f=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function p(t,e){return(p=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var m=function(t){function n(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,n),d(this,f(n).apply(this,arguments))}var e,i,o;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&p(t,e)}(n,l["Positionable"]),e=n,(i=[{key:"_setup",value:function(t,e){this.$element=t,this.options=s.a.extend({},n.defaults,this.$element.data(),e),this.className="Dropdown",u.Triggers.init(s.a),this._init(),a.Keyboard.register("Dropdown",{ENTER:"toggle",SPACE:"toggle",ESCAPE:"close"})}},{key:"_init",value:function(){var t=this.$element.attr("id");this.$anchors=s()('[data-toggle="'.concat(t,'"]')).length?s()('[data-toggle="'.concat(t,'"]')):s()('[data-open="'.concat(t,'"]')),this.$anchors.attr({"aria-controls":t,"data-is-focus":!1,"data-yeti-box":t,"aria-haspopup":!0,"aria-expanded":!1}),this._setCurrentAnchor(this.$anchors.first()),this.options.parentClass?this.$parent=this.$element.parents("."+this.options.parentClass):this.$parent=null,void 0===this.$element.attr("aria-labelledby")&&(void 0===this.$currentAnchor.attr("id")&&this.$currentAnchor.attr("id",Object(r.GetYoDigits)(6,"dd-anchor")),this.$element.attr("aria-labelledby",this.$currentAnchor.attr("id"))),this.$element.attr({"aria-hidden":"true","data-yeti-box":t,"data-resize":t}),h(f(n.prototype),"_init",this).call(this),this._events()}},{key:"_getDefaultPosition",value:function(){var t=this.$element[0].className.match(/(top|left|right|bottom)/g);return t?t[0]:"bottom"}},{key:"_getDefaultAlignment",value:function(){var t=/float-(\S+)/.exec(this.$currentAnchor.attr("class"));return t?t[1]:h(f(n.prototype),"_getDefaultAlignment",this).call(this)}},{key:"_setPosition",value:function(){this.$element.removeClass("has-position-".concat(this.position," has-alignment-").concat(this.alignment)),h(f(n.prototype),"_setPosition",this).call(this,this.$currentAnchor,this.$element,this.$parent),this.$element.addClass("has-position-".concat(this.position," has-alignment-").concat(this.alignment))}},{key:"_setCurrentAnchor",value:function(t){this.$currentAnchor=s()(t)}},{key:"_events",value:function(){var n=this;this.$element.on({"open.zf.trigger":this.open.bind(this),"close.zf.trigger":this.close.bind(this),"toggle.zf.trigger":this.toggle.bind(this),"resizeme.zf.trigger":this._setPosition.bind(this)}),this.$anchors.off("click.zf.trigger").on("click.zf.trigger",function(){n._setCurrentAnchor(this)}),this.options.hover&&(this.$anchors.off("mouseenter.zf.dropdown mouseleave.zf.dropdown").on("mouseenter.zf.dropdown",function(){n._setCurrentAnchor(this);var t=s()("body").data();void 0!==t.whatinput&&"mouse"!==t.whatinput||(clearTimeout(n.timeout),n.timeout=setTimeout(function(){n.open(),n.$anchors.data("hover",!0)},n.options.hoverDelay))}).on("mouseleave.zf.dropdown",Object(r.ignoreMousedisappear)(function(){clearTimeout(n.timeout),n.timeout=setTimeout(function(){n.close(),n.$anchors.data("hover",!1)},n.options.hoverDelay)})),this.options.hoverPane&&this.$element.off("mouseenter.zf.dropdown mouseleave.zf.dropdown").on("mouseenter.zf.dropdown",function(){clearTimeout(n.timeout)}).on("mouseleave.zf.dropdown",Object(r.ignoreMousedisappear)(function(){clearTimeout(n.timeout),n.timeout=setTimeout(function(){n.close(),n.$anchors.data("hover",!1)},n.options.hoverDelay)}))),this.$anchors.add(this.$element).on("keydown.zf.dropdown",function(t){var e=s()(this);a.Keyboard.findFocusable(n.$element);a.Keyboard.handleKey(t,"Dropdown",{open:function(){e.is(n.$anchors)&&!e.is("input, textarea")&&(n.open(),n.$element.attr("tabindex",-1).focus(),t.preventDefault())},close:function(){n.close(),n.$anchors.focus()}})})}},{key:"_addBodyHandler",value:function(){var e=s()(document.body).not(this.$element),n=this;e.off("click.zf.dropdown").on("click.zf.dropdown",function(t){n.$anchors.is(t.target)||n.$anchors.find(t.target).length||n.$element.is(t.target)||n.$element.find(t.target).length||(n.close(),e.off("click.zf.dropdown"))})}},{key:"open",value:function(){if(this.$element.trigger("closeme.zf.dropdown",this.$element.attr("id")),this.$anchors.addClass("hover").attr({"aria-expanded":!0}),this.$element.addClass("is-opening"),this._setPosition(),this.$element.removeClass("is-opening").addClass("is-open").attr({"aria-hidden":!1}),this.options.autoFocus){var t=a.Keyboard.findFocusable(this.$element);t.length&&t.eq(0).focus()}this.options.closeOnClick&&this._addBodyHandler(),this.options.trapFocus&&a.Keyboard.trapFocus(this.$element),this.$element.trigger("show.zf.dropdown",[this.$element])}},{key:"close",value:function(){if(!this.$element.hasClass("is-open"))return!1;this.$element.removeClass("is-open").attr({"aria-hidden":!0}),this.$anchors.removeClass("hover").attr("aria-expanded",!1),this.$element.trigger("hide.zf.dropdown",[this.$element]),this.options.trapFocus&&a.Keyboard.releaseFocus(this.$element)}},{key:"toggle",value:function(){if(this.$element.hasClass("is-open")){if(this.$anchors.data("hover"))return;this.close()}else this.open()}},{key:"_destroy",value:function(){this.$element.off(".zf.trigger").hide(),this.$anchors.off(".zf.dropdown"),s()(document.body).off("click.zf.dropdown")}}
733])&&c(e.prototype,i),o&&c(e,o),n}();m.defaults={parentClass:null,hoverDelay:250,hover:!1,hoverPane:!1,vOffset:0,hOffset:0,position:"auto",alignment:"auto",allowOverlap:!1,allowBottomOverlap:!0,trapFocus:!1,autoFocus:!1,closeOnClick:!1}},
733"./js/foundation.dropdownMenu.js":function(t,e,n){"use strict";n.r(e),n.d(e,"DropdownMenu",function(){return m});var i=n("jquery"),h=n.n(i),s=n("./js/foundation.core.plugin.js"),r=n("./js/foundation.core.utils.js"),f=n("./js/foundation.util.keyboard.js"),a=n("./js/foundation.util.nest.js"),l=n("./js/foundation.util.box.js");function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function u(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function c(t,e){return!e||"object"!==o(e)&&"function"!=typeof e?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):e}function d(t){return(d=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function p(t,e){return(p=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var m=function(t){function n(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,n),c(this,d(n).apply(this,arguments))}var e,i,o;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&p(t,e)}(n,s["Plugin"]),e=n,(i=[{key:"_setup",value:function(t,e){this.$element=t,this.options=h.a.extend({},n.defaults,this.$element.data(),e),this.className="DropdownMenu",this._init(),f.Keyboard.register("DropdownMenu",{ENTER:"open",SPACE:"open",ARROW_RIGHT:"next",ARROW_UP:"up",ARROW_DOWN:"down",ARROW_LEFT:"previous",ESCAPE:"close"})}},{key:"_init",value:function(){a.Nest.Feather(this.$element,"dropdown");var t=this.$element.find("li.is-dropdown-submenu-parent");this.$element.children(".is-dropdown-submenu-parent").children(".is-dropdown-submenu").addClass("first-sub"),this.$menuItems=this.$element.find('[role="menuitem"]'),this.$tabs=this.$element.children('[role="menuitem"]'),this.$tabs.find("ul.is-dropdown-submenu").addClass(this.options.verticalClass),"auto"===this.options.alignment?this.$element.hasClass(this.options.rightClass)||Object(r.rtl)()||this.$element.parents(".top-bar-right").is("*")?(this.options.alignment="right",t.addClass("opens-left")):(this.options.alignment="left",t.addClass("opens-right")):"right"===this.options.alignment?t.addClass("opens-left"):t.addClass("opens-right"),this.changed=!1,this._events()}},{key:"_isVertical",value:function(){return"block"===this.$tabs.css("display")||"column"===this.$element.css("flex-direction")}},{key:"_isRtl",value:function(){return this.$element.hasClass("align-right")||Object(r.rtl)()&&!this.$element.hasClass("align-left")}},{key:"_events",value:function(){var d=this,s="ontouchstart"in window||void 0!==window.ontouchstart,a="is-dropdown-submenu-parent";(this.options.clickOpen||s)&&this.$menuItems.on("click.zf.dropdownmenu touchstart.zf.dropdownmenu",function(t){var e=h()(t.target).parentsUntil("ul",".".concat(a)),n=e.hasClass(a),i="true"===e.attr("data-is-click"),o=e.children(".is-dropdown-submenu");if(n)if(i){if(!d.options.closeOnClick||!d.options.clickOpen&&!s||d.options.forceFollow&&s)return;t.stopImmediatePropagation(),t.preventDefault(),d._hide(e)}else t.preventDefault(),t.stopImmediatePropagation(),d._show(o),e.add(e.parentsUntil(d.$element,".".concat(a))).attr("data-is-click",!0)}),d.options.closeOnClickInside&&this.$menuItems.on("click.zf.dropdownmenu",function(t){h()(this).hasClass(a)||d._hide()}),this.options.disableHover||this.$menuItems.on("mouseenter.zf.dropdownmenu",function(t){var e=h()(this);e.hasClass(a)&&(clearTimeout(e.data("_delay")),e.data("_delay",setTimeout(function(){d._show(e.children(".is-dropdown-submenu"))},d.options.hoverDelay)))}).on("mouseleave.zf.dropdownMenu",Object(r.ignoreMousedisappear)(function(t){var e=h()(this);if(e.hasClass(a)&&d.options.autoclose){if("true"===e.attr("data-is-click")&&d.options.clickOpen)return!1;clearTimeout(e.data("_delay")),e.data("_delay",setTimeout(function(){d._hide(e)},d.options.closingTime))}})),this.$menuItems.on("keydown.zf.dropdownmenu",function(e){var n,i,o=h()(e.target).parentsUntil("ul",'[role="menuitem"]'),t=-1<d.$tabs.index(o),s=t?d.$tabs:o.siblings("li").add(o);s.each(function(t){if(h()(this).is(o))return n=s.eq(t-1),void(i=s.eq(t+1))});var a=function(){i.children("a:first").focus(),e.preventDefault()},r=function(){n.children("a:first").focus(),e.preventDefault()},l=function(){var t=o.children("ul.is-dropdown-submenu");t.length&&(d._show(t),o.find("li > a:first").focus(),e.preventDefault())},u=function(){var t=o.parent("ul").parent("li");t.children("a:first").focus(),d._hide(t),e.preventDefault()},c={open:l,close:function(){d._hide(d.$element),d.$menuItems.eq(0).children("a").focus(),e.preventDefault()},handled:function(){e.stopImmediatePropagation()}};t?d._isVertical()?d._isRtl()?h.a.extend(c,{down:a,up:r,next:u,previous:l}):h.a.extend(c,{down:a,up:r,next:l,previous:u}):d._isRtl()?h.a.extend(c,{next:r,previous:a,down:l,up:u}):h.a.extend(c,{next:a,previous:r,down:l,up:u}):d._isRtl()?h.a.extend(c,{next:u,previous:l,down:a,up:r}):h.a.extend(c,{next:l,previous:u,down:a,up:r}),f.Keyboard.handleKey(e,"DropdownMenu",c)})}},{key:"_addBodyHandler",value:function(){var e=h()(document.body),n=this;e.off("mouseup.zf.dropdownmenu touchend.zf.dropdownmenu").on("mouseup.zf.dropdownmenu touchend.zf.dropdownmenu",function(t){n.$element.find(t.target).length||(n._hide(),e.off("mouseup.zf.dropdownmenu touchend.zf.dropdownmenu"))})}},{key:"_show",value:function(n){var t=this.$tabs.index(this.$tabs.filter(function(t,e){return 0<h()(e).find(n).length})),e=n.parent("li.is-dropdown-submenu-parent").siblings("li.is-dropdown-submenu-parent");this._hide(e,t),n.css("visibility","hidden").addClass("js-dropdown-active").parent("li.is-dropdown-submenu-parent").addClass("is-active");var i=l.Box.ImNotTouchingYou(n,null,!0);if(!i){var o="left"===this.options.alignment?"-right":"-left",s=n.parent(".is-dropdown-submenu-parent");s.removeClass("opens".concat(o)).addClass("opens-".concat(this.options.alignment)),(i=l.Box.ImNotTouchingYou(n,null,!0))||s.removeClass("opens-".concat(this.options.alignment)).addClass("opens-inner"),this.changed=!0}n.css("visibility",""),this.options.closeOnClick&&this._addBodyHandler(),this.$element.trigger("show.zf.dropdownmenu",[n])}},{key:"_hide",value:function(t,n){var e;if((e=t&&t.length?t:void 0!==n?this.$tabs.not(function(t,e){return t===n}
733):this.$element).hasClass("is-active")||0<e.find(".is-active").length){if(e.find("li.is-active").add(e).attr({"data-is-click":!1}).removeClass("is-active"),e.find("ul.js-dropdown-active").removeClass("js-dropdown-active"),this.changed||e.find("opens-inner").length){var i="left"===this.options.alignment?"right":"left";e.find("li.is-dropdown-submenu-parent").add(e).removeClass("opens-inner opens-".concat(this.options.alignment)).addClass("opens-".concat(i)),this.changed=!1}this.$element.trigger("hide.zf.dropdownmenu",[e])}}},{key:"_destroy",value:function(){this.$menuItems.off(".zf.dropdownmenu").removeAttr("data-is-click").removeClass("is-right-arrow is-left-arrow is-down-arrow opens-right opens-left opens-inner"),h()(document.body).off(".zf.dropdownmenu"),a.Nest.Burn(this.$element,"dropdown")}}])&&u(e.prototype,i),o&&u(e,o),n}();m.defaults={disableHover:!1,autoclose:!0,hoverDelay:50,clickOpen:!1,closingTime:500,alignment:"auto",closeOnClick:!0,closeOnClickInside:!0,verticalClass:"vertical",rightClass:"align-right",forceFollow:!0}},
733"./js/foundation.equalizer.js":function(t,e,n){"use strict";n.r(e),n.d(e,"Equalizer",function(){return p});var i=n("jquery"),d=n.n(i),s=n("./js/foundation.util.mediaQuery.js"),a=n("./js/foundation.util.imageLoader.js"),r=n("./js/foundation.core.utils.js"),l=n("./js/foundation.core.plugin.js");function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function u(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function c(t,e){return!e||"object"!==o(e)&&"function"!=typeof e?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):e}function h(t){return(h=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function f(t,e){return(f=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var p=function(t){function n(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,n),c(this,h(n).apply(this,arguments))}var e,i,o;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&f(t,e)}(n,l["Plugin"]),e=n,(i=[{key:"_setup",value:function(t,e){this.$element=t,this.options=d.a.extend({},n.defaults,this.$element.data(),e),this.className="Equalizer",this._init()}},{key:"_init",value:function(){var t=this.$element.attr("data-equalizer")||"",e=this.$element.find('[data-equalizer-watch="'.concat(t,'"]'));s.MediaQuery._init(),this.$watched=e.length?e:this.$element.find("[data-equalizer-watch]"),this.$element.attr("data-resize",t||Object(r.GetYoDigits)(6,"eq")),this.$element.attr("data-mutate",t||Object(r.GetYoDigits)(6,"eq")),this.hasNested=0<this.$element.find("[data-equalizer]").length,this.isNested=0<this.$element.parentsUntil(document.body,"[data-equalizer]").length,this.isOn=!1,this._bindHandler={onResizeMeBound:this._onResizeMe.bind(this),onPostEqualizedBound:this._onPostEqualized.bind(this)};var n,i=this.$element.find("img");this.options.equalizeOn?(n=this._checkMQ(),d()(window).on("changed.zf.mediaquery",this._checkMQ.bind(this))):this._events(),(void 0!==n&&!1===n||void 0===n)&&(i.length?Object(a.onImagesLoaded)(i,this._reflow.bind(this)):this._reflow())}},{key:"_pauseEvents",value:function(){this.isOn=!1,this.$element.off({".zf.equalizer":this._bindHandler.onPostEqualizedBound,"resizeme.zf.trigger":this._bindHandler.onResizeMeBound,"mutateme.zf.trigger":this._bindHandler.onResizeMeBound})}},{key:"_onResizeMe",value:function(t){this._reflow()}},{key:"_onPostEqualized",value:function(t){t.target!==this.$element[0]&&this._reflow()}},{key:"_events",value:function(){this._pauseEvents(),this.hasNested?this.$element.on("postequalized.zf.equalizer",this._bindHandler.onPostEqualizedBound):(this.$element.on("resizeme.zf.trigger",this._bindHandler.onResizeMeBound),this.$element.on("mutateme.zf.trigger",this._bindHandler.onResizeMeBound)),this.isOn=!0}},{key:"_checkMQ",value:function(){var t=!s.MediaQuery.is(this.options.equalizeOn);return t?this.isOn&&(this._pauseEvents(),this.$watched.css("height","auto")):this.isOn||this._events(),t}},{key:"_killswitch",value:function(){}},{key:"_reflow",value:function(){if(!this.options.equalizeOnStack&&this._isStacked())return this.$watched.css("height","auto"),!1;this.options.equalizeByRow?this.getHeightsByRow(this.applyHeightByRow.bind(this)):this.getHeights(this.applyHeight.bind(this))}},{key:"_isStacked",value:function(){return!this.$watched[0]||!this.$watched[1]||this.$watched[0].getBoundingClientRect().top!==this.$watched[1].getBoundingClientRect().top}},{key:"getHeights",value:function(t){for(var e=[],n=0,i=this.$watched.length;n<i;n++)this.$watched[n].style.height="auto",e.push(this.$watched[n].offsetHeight);t(e)}},{key:"getHeightsByRow",value:function(t){var e=this.$watched.length?this.$watched.first().offset().top:0,n=[],i=0;n[i]=[];for(var o=0,s=this.$watched.length;o<s;o++){this.$watched[o].style.height="auto";var a=d()(this.$watched[o]).offset().top;a!=e&&(n[++i]=[],e=a),n[i].push([this.$watched[o],this.$watched[o].offsetHeight])}for(var r=0,l=n.length;r<l;r++){var u=d()(n[r]).map(function(){return this[1]}).get(),c=Math.max.apply(null,u);n[r].push(c)}t(n)}},{key:"applyHeight",value:function(t){var e=Math.max.apply(null,t);
vendor: 751 bytes, line 733
733this.$element.trigger("preequalized.zf.equalizer"),this.$watched.css("height",e),this.$element.trigger("postequalized.zf.equalizer")}},{key:"applyHeightByRow",value:function(t){this.$element.trigger("preequalized.zf.equalizer");for(var e=0,n=t.length;e<n;e++){var i=t[e].length,o=t[e][i-1];if(i<=2)d()(t[e][0][0]).css({height:"auto"});else{this.$element.trigger("preequalizedrow.zf.equalizer");for(var s=0,a=i-1;s<a;s++)d()(t[e][s][0]).css({height:o});this.$element.trigger("postequalizedrow.zf.equalizer")}}this.$element.trigger("postequalized.zf.equalizer")}},{key:"_destroy",value:function(){this._pauseEvents(),this.$watched.css("height","auto")}}])&&u(e.prototype,i),o&&u(e,o),n}();p.defaults={equalizeOnStack:!1,equalizeByRow:!1,equalizeOn:""}},
733"./js/foundation.interchange.js":function(t,e,n){"use strict";n.r(e),n.d(e,"Interchange",function(){return f});var i=n("jquery"),o=n.n(i),s=n("./js/foundation.util.mediaQuery.js"),a=n("./js/foundation.core.plugin.js"),l=n("./js/foundation.core.utils.js");function r(t){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function u(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function c(t,e){return!e||"object"!==r(e)&&"function"!=typeof e?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):e}function d(t){return(d=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function h(t,e){return(h=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var f=function(t){function r(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,r),c(this,d(r).apply(this,arguments))}var e,n,i;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&h(t,e)}(r,a["Plugin"]),e=r,(n=[{key:"_setup",value:function(t,e){this.$element=t,this.options=o.a.extend({},r.defaults,e),this.rules=[],this.currentPath="",this.className="Interchange",this._init(),this._events()}},{key:"_init",value:function(){s.MediaQuery._init();var t=this.$element[0].id||Object(l.GetYoDigits)(6,"interchange");this.$element.attr({"data-resize":t,id:t}),this._addBreakpoints(),this._generateRules(),this._reflow()}},{key:"_events",value:function(){var t=this;this.$element.off("resizeme.zf.trigger").on("resizeme.zf.trigger",function(){return t._reflow()})}},{key:"_reflow",value:function(){var t;for(var e in this.rules)if(this.rules.hasOwnProperty(e)){var n=this.rules[e];window.matchMedia(n.query).matches&&(t=n)}t&&this.replace(t.path)}},{key:"_addBreakpoints",value:function(){for(var t in s.MediaQuery.queries)if(s.MediaQuery.queries.hasOwnProperty(t)){var e=s.MediaQuery.queries[t];r.SPECIAL_QUERIES[e.name]=e.value}}},{key:"_generateRules",value:function(t){var e,n=[];for(var i in e="string"==typeof(e=this.options.rules?this.options.rules:this.$element.data("interchange"))?e.match(/\[.*?, .*?\]/g):e)if(e.hasOwnProperty(i)){var o=e[i].slice(1,-1).split(", "),s=o.slice(0,-1).join(""),a=o[o.length-1];r.SPECIAL_QUERIES[a]&&(a=r.SPECIAL_QUERIES[a]),n.push({path:s,query:a})}this.rules=n}},{key:"replace",value:function(e){if(this.currentPath!==e){var n=this,i="replaced.zf.interchange";"IMG"===this.$element[0].nodeName?this.$element.attr("src",e).on("load",function(){n.currentPath=e}).trigger(i):e.match(/\.(gif|jpg|jpeg|png|svg|tiff)([?#].*)?/i)?(e=e.replace(/\(/g,"%28").replace(/\)/g,"%29"),this.$element.css({"background-image":"url("+e+")"}).trigger(i)):o.a.get(e,function(t){n.$element.html(t).trigger(i),o()(t).foundation(),n.currentPath=e})}}},{key:"_destroy",value:function(){this.$element.off("resizeme.zf.trigger")}}])&&u(e.prototype,n),i&&u(e,i),r}();f.defaults={rules:null},f.SPECIAL_QUERIES={landscape:"screen and (orientation: landscape)",portrait:"screen and (orientation: portrait)",retina:"only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx)"}},
733"./js/foundation.magellan.js":function(t,e,n){"use strict";n.r(e),n.d(e,"Magellan",function(){return f});var i=n("jquery"),c=n.n(i),s=n("./js/foundation.core.utils.js"),a=n("./js/foundation.core.plugin.js"),r=n("./js/foundation.smoothScroll.js");function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function l(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function u(t,e){return!e||"object"!==o(e)&&"function"!=typeof e?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):e}function d(t){return(d=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function h(t,e){return(h=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var f=function(t){function n(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,n),u(this,d(n).apply(this,arguments))}var e,i,o;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&h(t,e)}(n,a["Plugin"]),e=n,(i=[{key:"_setup",value:function(t,e){this.$element=t,this.options=c.a.extend({},n.defaults,this.$element.data(),e),this.className="Magellan",this._init(),this.calcPoints()}},{key:"_init",value:function(){var t=this.$element[0].id||Object(s.GetYoDigits)(6,"magellan");this.$targets=c()("[data-magellan-target]"),this.$links=this.$element.find("a"),this.$element.attr({"data-resize":t,"data-scroll":t,id:t}),this.$active=c()(),this.scrollPos=parseInt(window.pageYOffset,10),this._events()}},{key:"calcPoints",value:function(){var n=this,t=document.body,e=document.documentElement;this.points=[],this.winHeight=Math.round(Math.max(window.innerHeight,e.clientHeight)),this.docHeight=Math.round(Math.max(t.scrollHeight,t.offsetHeight,e.clientHeight,e.scrollHeight,e.offsetHeight)),this.$targets.each(function(){var t=c()(this),e=Math.round(t.offset().top-n.options.threshold);t.targetPoint=e,n.points.push(e)})}},{key:"_events",value:function(){var n=this;c()("html, body"),n.options.animationDuration,n.options.animationEasing;c()(window).one("load",function(){n.options.deepLinking&&location.hash&&n.scrollToLoc(location.hash),n.calcPoints(),n._updateActive()}),n.onLoadListener=Object(s.onLoad)(c()(window),function(){n.$element.on({"resizeme.zf.trigger":n.reflow.bind(n),"scrollme.zf.trigger":n._updateActive.bind(n)}).on("click.zf.magellan",'a[href^="#"]',function(t){t.preventDefault();var e=this.getAttribute("href");n.scrollToLoc(e)})}),this._deepLinkScroll=function(t){n.options.deepLinking&&n.scrollToLoc(window.location.hash)},c()(window).on("hashchange",this._deepLinkScroll)}},{key:"scrollToLoc",value:function(t){this._inTransition=!0;var e=this,n={animationEasing:this.options.animationEasing,animationDuration:this.options.animationDuration,threshold:this.options.threshold,offset:this.options.offset};r.SmoothScroll.scrollToLoc(t,n,function(){e._inTransition=!1})}},{key:"reflow",value:function(){this.calcPoints(),this._updateActive()}},{key:"_updateActive",value:function(){var n=this;if(!this._inTransition){var t,i=parseInt(window.pageYOffset,10),o=this.scrollPos>i;if((this.scrollPos=i)<this.points[0]);else if(i+this.winHeight===this.docHeight)t=this.points.length-1;else{var e=this.points.filter(function(t,e){return t-n.options.offset-(o?n.options.threshold:0)<=i});t=e.length?e.length-1:0}var s=this.$active,a="";void 0!==t?(this.$active=this.$links.filter('[href="#'+this.$targets.eq(t).data("magellan-target")+'"]'),this.$active.length&&(a=this.$active[0].getAttribute("href"))):this.$active=c()();var r=!(!this.$active.length&&!s.length||this.$active.is(s)),l=a!==window.location.hash;if(r&&(s.removeClass(this.options.activeClass),this.$active.addClass(this.options.activeClass)),this.options.deepLinking&&l)if(window.history.pushState){var u=a||window.location.pathname+window.location.search;window.history.pushState(null,null,u)}else window.location.hash=a;r&&this.$element.trigger("update.zf.magellan",[this.$active])}}},{key:"_destroy",value:function(){if(this.$element.off(".zf.trigger .zf.magellan").find(".".concat(this.options.activeClass)).removeClass(this.options.activeClass),this.options.deepLinking){var t=this.$active[0].getAttribute("href");window.location.hash.replace(t,"")}c()(window).off("hashchange",this._deepLinkScroll),this.onLoadListener&&c()(window).off(this.onLoadListener)}}
733])&&l(e.prototype,i),o&&l(e,o),n}();f.defaults={animationDuration:500,animationEasing:"linear",threshold:50,activeClass:"is-active",deepLinking:!1,offset:0}},
733"./js/foundation.offcanvas.js":function(t,e,n){"use strict";n.r(e),n.d(e,"OffCanvas",function(){return m});var i=n("jquery"),s=n.n(i),a=n("./js/foundation.core.utils.js"),r=n("./js/foundation.util.keyboard.js"),l=n("./js/foundation.util.mediaQuery.js"),u=n("./js/foundation.core.plugin.js"),c=n("./js/foundation.util.triggers.js");function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function d(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function h(t,e){return!e||"object"!==o(e)&&"function"!=typeof e?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):e}function f(t){return(f=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function p(t,e){return(p=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var m=function(t){function i(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,i),h(this,f(i).apply(this,arguments))}var e,n,o;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&p(t,e)}(i,u["Plugin"]),e=i,(n=[{key:"_setup",value:function(t,e){var n=this;this.className="OffCanvas",this.$element=t,this.options=s.a.extend({},i.defaults,this.$element.data(),e),this.contentClasses={base:[],reveal:[]},this.$lastTrigger=s()(),this.$triggers=s()(),this.position="left",this.$content=s()(),this.nested=!!this.options.nested,s()(["push","overlap"]).each(function(t,e){n.contentClasses.base.push("has-transition-"+e)}),s()(["left","right","top","bottom"]).each(function(t,e){n.contentClasses.base.push("has-position-"+e),n.contentClasses.reveal.push("has-reveal-"+e)}),c.Triggers.init(s.a),l.MediaQuery._init(),this._init(),this._events(),r.Keyboard.register("OffCanvas",{ESCAPE:"close"})}},{key:"_init",value:function(){var t=this.$element.attr("id");if(this.$element.attr("aria-hidden","true"),this.options.contentId?this.$content=s()("#"+this.options.contentId):this.$element.siblings("[data-off-canvas-content]").length?this.$content=this.$element.siblings("[data-off-canvas-content]").first():this.$content=this.$element.closest("[data-off-canvas-content]").first(),this.options.contentId?this.options.contentId&&null===this.options.nested&&console.warn("Remember to use the nested option if using the content ID option!"):this.nested=0===this.$element.siblings("[data-off-canvas-content]").length,!0===this.nested&&(this.options.transition="overlap",this.$element.removeClass("is-transition-push")),this.$element.addClass("is-transition-".concat(this.options.transition," is-closed")),this.$triggers=s()(document).find('[data-open="'+t+'"], [data-close="'+t+'"], [data-toggle="'+t+'"]').attr("aria-expanded","false").attr("aria-controls",t),this.position=this.$element.is(".position-left, .position-top, .position-right, .position-bottom")?this.$element.attr("class").match(/position\-(left|top|right|bottom)/)[1]:this.position,!0===this.options.contentOverlay){var e=document.createElement("div"),n="fixed"===s()(this.$element).css("position")?"is-overlay-fixed":"is-overlay-absolute";e.setAttribute("class","js-off-canvas-overlay "+n),this.$overlay=s()(e),"is-overlay-fixed"===n?s()(this.$overlay).insertAfter(this.$element):this.$content.append(this.$overlay)}var i=new RegExp(Object(a.RegExpEscape)(this.options.revealClass)+"([^\\s]+)","g").exec(this.$element[0].className);i&&(this.options.isRevealed=!0,this.options.revealOn=this.options.revealOn||i[1]),!0===this.options.isRevealed&&this.options.revealOn&&(this.$element.first().addClass("".concat(this.options.revealClass).concat(this.options.revealOn)),this._setMQChecker()),this.options.transitionTime&&this.$element.css("transition-duration",this.options.transitionTime),this._removeContentClasses()}},{key:"_events",value:function(){(this.$element.off(".zf.trigger .zf.offcanvas").on({"open.zf.trigger":this.open.bind(this),"close.zf.trigger":this.close.bind(this),"toggle.zf.trigger":this.toggle.bind(this),"ke
733ydown.zf.offcanvas":this._handleKeyboard.bind(this)}),!0===this.options.closeOnClick)&&(this.options.contentOverlay?this.$overlay:this.$content).on({"click.zf.offcanvas":this.close.bind(this)})}},{key:"_setMQChecker",value:function(){var t=this;this.onLoadListener=Object(a.onLoad)(s()(window),function(){l.MediaQuery.atLeast(t.options.revealOn)&&t.reveal(!0)}),s()(window).on("changed.zf.mediaquery",function(){l.MediaQuery.atLeast(t.options.revealOn)?t.reveal(!0):t.reveal(!1)})}},{key:"_removeContentClasses",value:function(t){"boolean"!=typeof t?this.$content.removeClass(this.contentClasses.base.join(" ")):!1===t&&this.$content.removeClass("has-reveal-".concat(this.position))}},{key:"_addContentClasses",value:function(t){this._removeContentClasses(t),"boolean"!=typeof t?this.$content.addClass("has-transition-".concat(this.options.transition," has-position-").concat(this.position)):!0===t&&this.$content.addClass("has-reveal-".concat(this.position))}},{key:"reveal",value:function(t){t?(this.close(),this.isRevealed=!0,this.$element.attr("aria-hidden","false"),this.$element.off("open.zf.trigger toggle.zf.trigger"),this.$element.removeClass("is-closed")):(this.isRevealed=!1,this.$element.attr("aria-hidden","true"),this.$element.off("open.zf.trigger toggle.zf.trigger").on({"open.zf.trigger":this.open.bind(this),"toggle.zf.trigger":this.toggle.bind(this)}),this.$element.addClass("is-closed")),this._addContentClasses(t)}},{key:"_stopScrolling",value:function(t){return!1}},{key:"_recordScrollable",value:function(t){var e=this;e.scrollHeight!==e.clientHeight&&(0===e.scrollTop&&(e.scrollTop=1),e.scrollTop===e.scrollHeight-e.clientHeight&&(e.scrollTop=e.scrollHeight-e.clientHeight-1)),e.allowUp=0<e.scrollTop,e.allowDown=e.scrollTop<e.scrollHeight-e.clientHeight,e.lastY=t.originalEvent.pageY}},{key:"_stopScrollPropagation",value:function(t){var e=t.pageY<this.lastY,n=!e;this.lastY=t.pageY,e&&this.allowUp||n&&this.allowDown?t.stopPropagation():t.preventDefault()}},{key:"open",value:function(t,e){if(!this.$element.hasClass("is-open")&&!this.isRevealed){var n=this;e&&(this.$lastTrigger=e),"top"===this.options.forceTo?window.scrollTo(0,0):"bottom"===this.options.forceTo&&window.scrollTo(0,document.body.scrollHeight),this.options.transitionTime&&"overlap"!==this.options.transition?this.$element.siblings("[data-off-canvas-content]").css("transition-duration",this.options.transitionTime):this.$element.siblings("[data-off-canvas-content]").css("transition-duration",""),this.$element.addClass("is-open").removeClass("is-closed"),this.$triggers.attr("aria-expanded","true"),this.$element.attr("aria-hidden","false"),this.$content.addClass("is-open-"+this.position),!1===this.options.contentScroll&&(s()("body").addClass("is-off-canvas-open").on("touchmove",this._stopScrolling),this.$element.on("touchstart",this._recordScrollable),this.$element.on("touchmove",this._stopScrollPropagation)),!0===this.options.contentOverlay&&this.$overlay.addClass("is-visible"),!0===this.options.closeOnClick&&!0===this.options.contentOverlay&&this.$overlay.addClass("is-closable"),!0===this.options.autoFocus&&this.$element.one(Object(a.transitionend)(this.$element),function(){if(n.$element.hasClass("is-open")){var t=n.$element.find("[data-autofocus]");t.length?t.eq(0).focus():n.$element.find("a, button").eq(0).focus()}}),!0===this.options.trapFocus&&(this.$content.attr("tabindex","-1"),r.Keyboard.trapFocus(this.$element)),this._addContentClasses(),this.$element.trigger("opened.zf.offcanvas")}}},{key:"close",value:function(t){if(this.$element.hasClass("is-open")&&!this.isRevealed){var e=this;this.$element.removeClass("is-open"),this.$element.attr("aria-hidden","true").trigger("closed.zf.offcanvas"),this.$content.removeClass("is-open-left is-open-top is-open-right is-open-bottom"),!1===this.options.contentScroll&&(s()("body").removeClass("is-off-canvas-open").off("touchmove",this._stopScrolling),this.$element.off("touchstart",this._recordScrollable),this.$element.off("touchmove",this._stopScrollPropagation)),!0===this.options.contentOverlay&&this.$overlay.removeClass("is-visible"),!0===this.options.closeOnClick&&!0===this.options.contentOverlay&&this.$overlay.removeClass("is-closable"),this.$triggers.attr("aria-expanded","fal
733se"),!0===this.options.trapFocus&&(this.$content.removeAttr("tabindex"),r.Keyboard.releaseFocus(this.$element)),this.$element.one(Object(a.transitionend)(this.$element),function(t){e.$element.addClass("is-closed"),e._removeContentClasses()})}}},{key:"toggle",value:function(t,e){this.$element.hasClass("is-open")?this.close(t,e):this.open(t,e)}},{key:"_handleKeyboard",value:function(t){var e=this;r.Keyboard.handleKey(t,"OffCanvas",{close:function(){return e.close(),e.$lastTrigger.focus(),!0},handled:function(){t.stopPropagation(),t.preventDefault()}})}},{key:"_destroy",value:function(){this.close(),this.$element.off(".zf.trigger .zf.offcanvas"),this.$overlay.off(".zf.offcanvas"),this.onLoadListener&&s()(window).off(this.onLoadListener)}}])&&d(e.prototype,n),o&&d(e,o),i}();m.defaults={closeOnClick:!0,contentOverlay:!0,contentId:null,nested:null,contentScroll:!0,transitionTime:null,transition:"push",forceTo:null,isRevealed:!1,revealOn:null,autoFocus:!0,revealClass:"reveal-for-",trapFocus:!1}},
733"./js/foundation.orbit.js":function(t,e,n){"use strict";n.r(e),n.d(e,"Orbit",function(){return v});var i=n("jquery"),s=n.n(i),a=n("./js/foundation.util.keyboard.js"),c=n("./js/foundation.util.motion.js"),r=n("./js/foundation.util.timer.js"),l=n("./js/foundation.util.imageLoader.js"),u=n("./js/foundation.core.utils.js"),d=n("./js/foundation.core.plugin.js"),h=n("./js/foundation.util.touch.js");function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function f(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function p(t,e){return!e||"object"!==o(e)&&"function"!=typeof e?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):e}function m(t){return(m=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function g(t,e){return(g=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var v=function(t){function n(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,n),p(this,m(n).apply(this,arguments))}var e,i,o;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&g(t,e)}(n,d["Plugin"]),e=n,(i=[{key:"_setup",value:function(t,e){this.$element=t,this.options=s.a.extend({},n.defaults,this.$element.data(),e),this.className="Orbit",h.Touch.init(s.a),this._init(),a.Keyboard.register("Orbit",{ltr:{ARROW_RIGHT:"next",ARROW_LEFT:"previous"},rtl:{ARROW_LEFT:"next",ARROW_RIGHT:"previous"}})}},{key:"_init",value:function(){this._reset(),this.$wrapper=this.$element.find(".".concat(this.options.containerClass)),this.$slides=this.$element.find(".".concat(this.options.slideClass));var t=this.$element.find("img"),e=this.$slides.filter(".is-active"),n=this.$element[0].id||Object(u.GetYoDigits)(6,"orbit");this.$element.attr({"data-resize":n,id:n}),e.length||this.$slides.eq(0).addClass("is-active"),this.options.useMUI||this.$slides.addClass("no-motionui"),t.length?Object(l.onImagesLoaded)(t,this._prepareForOrbit.bind(this)):this._prepareForOrbit(),this.options.bullets&&this._loadBullets(),this._events(),this.options.autoPlay&&1<this.$slides.length&&this.geoSync(),this.options.accessible&&this.$wrapper.attr("tabindex",0)}},{key:"_loadBullets",value:function(){this.$bullets=this.$element.find(".".concat(this.options.boxOfBullets)).find("button")}},{key:"geoSync",value:function(){var t=this;this.timer=new r.Timer(this.$element,{duration:this.options.timerDelay,infinite:!1},function(){t.changeSlide(!0)}),this.timer.start()}},{key:"_prepareForOrbit",value:function(){this._setWrapperHeight()}},{key:"_setWrapperHeight",value:function(t){var e,n=0,i=0,o=this;this.$slides.each(function(){e=this.getBoundingClientRect().height,s()(this).attr("data-slide",i),/mui/g.test(s()(this)[0].className)||o.$slides.filter(".is-active")[0]===o.$slides.eq(i)[0]||s()(this).css({display:"none"}),n=n<e?e:n,i++}),i===this.$slides.length&&(this.$wrapper.css({height:n}),t&&t(n))}},{key:"_setSlideHeight",value:function(t){this.$slides.each(function(){s()(this).css("max-height",t)})}},{key:"_events",value:function(){var i=this;if(this.$element.off(".resizeme.zf.trigger").on({"resizeme.zf.trigger":this._prepareForOrbit.bind(this)}),1<this.$slides.length){if(this.options.swipe&&this.$slides.off("swipeleft.zf.orbit swiperight.zf.orbit").on("swipeleft.zf.orbit",function(t){t.preventDefault(),i.changeSlide(!0)}).on("swiperight.zf.orbit",function(t){t.preventDefault(),i.changeSlide(!1)}),this.options.autoPlay&&(this.$slides.on("click.zf.orbit",function(){i.$element.data("clickedOn",!i.$element.data("clickedOn")),i.timer[i.$element.data("clickedOn")?"pause":"start"]()}),this.options.pauseOnHover&&this.$element.on("mouseenter.zf.orbit",function(){i.timer.pause()}).on("mouseleave.zf.orbit",function(){i.$element.data("clickedOn")||i.timer.start()})),this.options.navButtons)this.$element.find(".".concat(this.options.nextClass,", .").concat(this.options.prevClass)).attr("tabindex",0).on("click.zf.orbit touchend.zf.orbit",function(t){t.preventDefault(),i.changeSlide(s()(this).hasClass(i.options.nextClass))});this.options.bullets&&this.$bullets.on("click.zf.orbit touchend.zf.orbit",function(){if(/is-active/g.test(this.className))return!1;var t=s()(this).data("slide"),e=t>i.$slides.filter(".is-active").data("slide"),n=i.$slides.eq(t);i.changeSlide(e,n,t)}),this.options.accessible&&this.$wrapper.add(this.$bullets).on("keydown.zf.orbit",function(t){a.Keyboard.handleKey(t,"Orbit",{next:function(){i.changeSlide(!0)},previous:function(){i.changeSlide(!1)},handled:function(){s()(t.target).is(i.$bullets)&&i.$bullets.filter(".is-active").focus()}})})}}},{key:"_reset",value:function(){void 0!==this.$slides&&1<this.$slides.length&&(this.$element.off(".zf.orbit").find("*").off(".zf.orbit"),this.options.autoPlay&&this.timer.restart(),this.$slides.each(function(t){s()(t).removeClass("is-active is-active is-in").removeAttr("aria-live").hide()}),this.$slides.first().addClass("is-active").show(),this.$element.trigger("slidechange.zf.orbit",[this.$slides.first()]),this.options.bullets&&this._updateBullets(0))}},{key:"changeSlide",value:function(t,e,n){if(this.$slides){var i=this.$slides.filter(".is-active").eq(0);if(/mui/g.test(i[0].className))return!1;var o,s=this.$slides.first(),a=this.$slides.last(),r=t?"Right":"Left",l=t?"Left":"Right",u=this;(o=e||(t?this.options.infiniteWrap?i.next(".".concat(this.options.slideClass)).length?i.next(".".concat(this.options.slideClass)):s:i.next(".".concat(this.options.slideClass)):this.options.infiniteWrap?i.prev(".".concat(this.options.slideClass)).length?i.prev(".".concat(this.options.slideClass)):a:i.prev(".".concat(this.options.slideClass)))).length&&(this.$element.trigger("beforeslidechange.zf.orbit",[i,o]),this.options.bullets&&(n=n||this.$slides.index(o),this._updateBullets(n)),this.options.useMUI&&!this.$element.is(":hidden")?(c.Motion.animateIn(o.addClass("is-active"),this.options["animInFrom".concat(r)],function(){o.css({display:"block"}).attr("aria-live","polite")}),c.Motion.animateOut(i.removeClass("is-active"),this.options["animOutTo".concat(l)],function(){i.removeAttr("aria-live"),u.options.autoPlay&&!u.timer.isPaused&&u.timer.restart()})):(i.removeClass("is-active is-in").removeAttr("aria-live").hide(),o.addClass("is-active is-in").attr("aria-live","polite").show(),this.options.autoPlay&&!this.timer.isPaused&&this.timer.restart()),this.$element.trigger("slidechange.zf.orbit",[o]))}}},{key:"_updateBullets",value:function(t){var e=this.$element.find(".".concat(this.options.boxOfBullets)).find(".is-active").removeClass("is-active").blur().find("span:last").detach();this.$bullets.eq(t).addClass("is-active").append(e)}},{key:"_destroy",value:function(){this.$element.off(".zf.orbit").find("*").off(".zf.orbit").end().hide()}}
733])&&f(e.prototype,i),o&&f(e,o),n}();v.defaults={bullets:!0,navButtons:!0,animInFromRight:"slide-in-right",animOutToRight:"slide-out-right",animInFromLeft:"slide-in-left",animOutToLeft:"slide-out-left",autoPlay:!0,timerDelay:5e3,infiniteWrap:!0,swipe:!0,pauseOnHover:!0,accessible:!0,containerClass:"orbit-container",slideClass:"orbit-slide",boxOfBullets:"orbit-bullets",nextClass:"orbit-next",prevClass:"orbit-previous",useMUI:!0}},
733"./js/foundation.positionable.js":function(t,e,n){"use strict";n.r(e),n.d(e,"Positionable",function(){return g});var a=n("./js/foundation.util.box.js"),s=n("./js/foundation.core.plugin.js"),r=n("./js/foundation.core.utils.js");function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function l(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function u(t,e){return!e||"object"!==i(e)&&"function"!=typeof e?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):e}function c(t){return(c=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function d(t,e){return(d=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var h=["left","right","top","bottom"],o=["top","bottom","center"],f=["left","right","center"],p={left:o,right:o,top:f,bottom:f};function m(t,e){var n=e.indexOf(t);return n===e.length-1?e[0]:e[n+1]}var g=function(t){function e(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),u(this,c(e).apply(this,arguments))}var n,i,o;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&d(t,e)}(e,s["Plugin"]),n=e,(i=[{key:"_init",value:function(){this.triedPositions={},this.position="auto"===this.options.position?this._getDefaultPosition():this.options.position,this.alignment="auto"===this.options.alignment?this._getDefaultAlignment():this.options.alignment,this.originalPosition=this.position,this.originalAlignment=this.alignment}},{key:"_getDefaultPosition",value:function(){return"bottom"}},{key:"_getDefaultAlignment",value:function(){switch(this.position){case"bottom":case"top":return Object(r.rtl)()?"right":"left";case"left":case"right":return"bottom"}}},{key:"_reposition",value:function(){this._alignmentsExhausted(this.position)?(this.position=m(this.position,h),this.alignment=p[this.position][0]):this._realign()}},{key:"_realign",value:function(){this._addTriedPosition(this.position,this.alignment),this.alignment=m(this.alignment,p[this.position])}},{key:"_addTriedPosition",value:function(t,e){this.triedPositions[t]=this.triedPositions[t]||[],this.triedPositions[t].push(e)}},{key:"_positionsExhausted",value:function(){for(var t=!0,e=0;e<h.length;e++)t=t&&this._alignmentsExhausted(h[e]);return t}},{key:"_alignmentsExhausted",value:function(t){return this.triedPositions[t]&&this.triedPositions[t].length==p[t].length}},{key:"_getVOffset",value:function(){return this.options.vOffset}},{key:"_getHOffset",value:function(){return this.options.hOffset}},{key:"_setPosition",value:function(t,e,n){if("false"===t.attr("aria-expanded"))return!1;a.Box.GetDimensions(e),a.Box.GetDimensions(t);if(this.options.allowOverlap||(this.position=this.originalPosition,this.alignment=this.originalAlignment),e.offset(a.Box.GetExplicitOffsets(e,t,this.position,this.alignment,this._getVOffset(),this._getHOffset())),!this.options.allowOverlap){for(var i=1e8,o={position:this.position,alignment:this.alignment};!this._positionsExhausted();){var s=a.Box.OverlapArea(e,n,!1,!1,this.options.allowBottomOverlap);if(0===s)return;s<i&&(i=s,o={position:this.position,alignment:this.alignment}),this._reposition(),e.offset(a.Box.GetExplicitOffsets(e,t,this.position,this.alignment,this._getVOffset(),this._getHOffset()))}this.position=o.position,this.alignment=o.alignment,e.offset(a.Box.GetExplicitOffsets(e,t,this.position,this.alignment,this._getVOffset(),this._getHOffset()))}}}])&&l(n.prototype,i),o&&l(n,o),e}();g.defaults={position:"auto",alignment:"auto",allowOverlap:!1,allowBottomOverlap:!0,vOffset:0,hOffset:0}},
733"./js/foundation.responsiveAccordionTabs.js":function(t,e,n){"use strict";n.r(e),n.d(e,"ResponsiveAccordionTabs",function(){return m});var i=n("jquery"),c=n.n(i),a=n("./js/foundation.util.mediaQuery.js"),d=n("./js/foundation.core.utils.js"),s=n("./js/foundation.core.plugin.js"),o=n("./js/foundation.accordion.js");function r(t){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function l(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function u(t,e){return!e||"object"!==r(e)&&"function"!=typeof e?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):e}function h(t){return(h=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function f(t,e){return(f=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var p={tabs:{cssClass:"tabs",plugin:n("./js/foundation.tabs.js").Tabs},accordion:{cssClass:"accordion",plugin:o.Accordion}},m=function(t){function e(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),u(this,h(e).apply(this,arguments))}var n,i,o;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&f(t,e)}(e,s["Plugin"]),n=e,(i=[{key:"_setup",value:function(t,e){this.$element=c()(t),this.options=c.a.extend({},this.$element.data(),e),this.rules=this.$element.data("responsive-accordion-tabs"),this.currentMq=null,this.currentPlugin=null,this.className="ResponsiveAccordionTabs",this.$element.attr("id")||this.$element.attr("id",Object(d.GetYoDigits)(6,"responsiveaccordiontabs")),this._init(),this._events()}},{key:"_init",value:function(){if(a.MediaQuery._init(),"string"==typeof this.rules){for(var t={},e=this.rules.split(" "),n=0;n<e.length;n++){var i=e[n].split("-"),o=1<i.length?i[0]:"small",s=1<i.length?i[1]:i[0];null!==p[s]&&(t[o]=p[s])}this.rules=t}this._getAllOptions(),c.a.isEmptyObject(this.rules)||this._checkMediaQueries()}},{key:"_getAllOptions",value:function(){for(var t in this.allOptions={},p)if(p.hasOwnProperty(t)){var e=p[t];try{var n=c()("<ul></ul>"),i=new e.plugin(n,this.options);for(var o in i.options)if(i.options.hasOwnProperty(o)&&"zfPlugin"!==o){var s=i.options[o];this.allOptions[o]=s}i.destroy()}catch(t){}}}},{key:"_events",value:function(){this._changedZfMediaQueryHandler=this._checkMediaQueries.bind(this),c()(window).on("changed.zf.mediaquery",this._changedZfMediaQueryHandler)}},{key:"_checkMediaQueries",value:function(){var e,n=this;c.a.each(this.rules,function(t){a.MediaQuery.atLeast(t)&&(e=t)}),e&&(this.currentPlugin instanceof this.rules[e].plugin||(c.a.each(p,function(t,e){n.$element.removeClass(e.cssClass)}),this.$element.addClass(this.rules[e].cssClass),this.currentPlugin&&(!this.currentPlugin.$element.data("zfPlugin")&&this.storezfData&&this.currentPlugin.$element.data("zfPlugin",this.storezfData),this.currentPlugin.destroy()),this._handleMarkup(this.rules[e].cssClass),this.currentPlugin=new this.rules[e].plugin(this.$element,{}),this.storezfData=this.currentPlugin.$element.data("zfPlugin")))}},{key:"_handleMarkup",value:function(t){var n=this,e="accordion",i=c()("[data-tabs-content="+this.$element.attr("id")+"]");if(i.length&&(e="tabs"),e!==t){var o=n.allOptions.linkClass?n.allOptions.linkClass:"tabs-title",s=n.allOptions.panelClass?n.allOptions.panelClass:"tabs-panel";this.$element.removeAttr("role");var a=this.$element.children("."+o+",[data-accordion-item]").removeClass(o).removeClass("accordion-item").removeAttr("data-accordion-item"),r=a.children("a").removeClass("accordion-title");if("tabs"===e?(i=i.children("."+s).removeClass(s).removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby")).children("a").removeAttr("role").removeAttr("aria-controls").removeAttr("aria-selected"):i=a.children("[data-tab-content]").removeClass("accordion-content"),i.css({display:"",visibility:""}),a.css({display:"",visibility:""}),"accordion"===t)i.each(function(t,e){c()(e).appendTo(a.get(t)).addClass("accordion-content").attr("data-tab-content","").removeClass("is-active").css({height:""}),c()("[data-tabs-content="+n.$element.attr("id")+"]").after('<div id="tabs-placeholder-'+n.$element.attr("id")+'"></div>').detach(),a.addClass("accordion-item").attr("data-accordion-item",""),r.addClass("accordion-title")});else if("tabs"===t){var l=c()("[data-tabs-content="+n.$element.attr("id")+"]"),u=c()("#tabs-placeholder-"+n.$element.attr("id"));u.length?(l=c()('<div class="tabs-content"></div>').insertAfter(u).attr("data-tabs-content",n.$element.attr("id")),u.remove()):l=c()('<div class="tabs-content"></div>').insertAfter(n.$element).attr("data-tabs-content",n.$element.attr("id")),i.each(function(t,e){var n=c()(e).appendTo(l).addClass(s),i=r.get(t).hash.slice(1),o=c()(e).attr("id")||Object(d.GetYoDigits)(6,"accordion");i!==o&&(""!==i?c()(e).attr("id",i):(i=o,c()(e).attr("id",i),c()(r.get(t)).attr("href",c()(r.get(t)).attr("href").replace("#","")+"#"+i))),c()(a.get(t)).hasClass("is-active")&&n.addClass("is-active")}),a.addClass(o)}}}},{key:"_destroy",value:function(){this.currentPlugin&&this.currentPlugin.destroy(),c()(window).off("changed.zf.mediaquery",this._changedZfMediaQueryHandler)}}
733])&&l(n.prototype,i),o&&l(n,o),e}();m.defaults={}},
733"./js/foundation.responsiveMenu.js":function(t,e,n){"use strict";n.r(e),n.d(e,"ResponsiveMenu",function(){return v});var i=n("jquery"),a=n.n(i),r=n("./js/foundation.util.mediaQuery.js"),l=n("./js/foundation.core.utils.js"),s=n("./js/foundation.core.plugin.js"),o=n("./js/foundation.dropdownMenu.js"),u=n("./js/foundation.drilldown.js"),c=n("./js/foundation.accordionMenu.js");function d(t){return(d="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function h(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function f(t,e){return!e||"object"!==d(e)&&"function"!=typeof e?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):e}function p(t){return(p=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function m(t,e){return(m=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var g={dropdown:{cssClass:"dropdown",plugin:o.DropdownMenu},drilldown:{cssClass:"drilldown",plugin:u.Drilldown},accordion:{cssClass:"accordion-menu",plugin:c.AccordionMenu}},v=function(t){function e(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),f(this,p(e).apply(this,arguments))}var n,i,o;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&m(t,e)}(e,s["Plugin"]),n=e,(i=[{key:"_setup",value:function(t,e){this.$element=a()(t),this.rules=this.$element.data("responsive-menu"),this.currentMq=null,this.currentPlugin=null,this.className="ResponsiveMenu",this._init(),this._events()}},{key:"_init",value:function(){if(r.MediaQuery._init(),"string"==typeof this.rules){for(var t={},e=this.rules.split(" "),n=0;n<e.length;n++){var i=e[n].split("-"),o=1<i.length?i[0]:"small",s=1<i.length?i[1]:i[0];null!==g[s]&&(t[o]=g[s])}this.rules=t}a.a.isEmptyObject(this.rules)||this._checkMediaQueries(),this.$element.attr("data-mutate",this.$element.attr("data-mutate")||Object(l.GetYoDigits)(6,"responsive-menu"))}},{key:"_events",value:function(){var t=this;a()(window).on("changed.zf.mediaquery",function(){t._checkMediaQueries()})}},{key:"_checkMediaQueries",value:function(){var e,n=this;a.a.each(this.rules,function(t){r.MediaQuery.atLeast(t)&&(e=t)}),e&&(this.currentPlugin instanceof this.rules[e].plugin||(a.a.each(g,function(t,e){n.$element.removeClass(e.cssClass)}),this.$element.addClass(this.rules[e].cssClass),this.currentPlugin&&this.currentPlugin.destroy(),this.currentPlugin=new this.rules[e].plugin(this.$element,{})))}},{key:"_destroy",value:function(){this.currentPlugin.destroy(),a()(window).off(".zf.ResponsiveMenu")}}])&&h(n.prototype,i),o&&h(n,o),e}();v.defaults={}},
733"./js/foundation.responsiveToggle.js":function(t,e,n){"use strict";n.r(e),n.d(e,"ResponsiveToggle",function(){return f});var i=n("jquery"),s=n.n(i),a=n("./js/foundation.util.mediaQuery.js"),r=n("./js/foundation.util.motion.js"),l=n("./js/foundation.core.plugin.js");function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function u(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function c(t,e){return!e||"object"!==o(e)&&"function"!=typeof e?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):e}function d(t){return(d=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function h(t,e){return(h=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var f=function(t){function n(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,n),c(this,d(n).apply(this,arguments))}var e,i,o;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&h(t,e)}(n,l["Plugin"]),e=n,(i=[{key:"_setup",value:function(t,e){this.$element=s()(t),this.options=s.a.extend({},n.defaults,this.$element.data(),e),this.className="ResponsiveToggle",this._init(),this._events()}},{key:"_init",value:function(){a.MediaQuery._init();var e=this.$element.data("responsive-toggle");if(e||console.error("Your tab bar needs an ID of a Menu as the value of data-tab-bar."),this.$targetMenu=s()("#".concat(e)),this.$toggler=this.$element.find("[data-toggle]").filter(function(){var t=s()(this).data("toggle");return t===e||""===t}),this.options=s.a.extend({},this.options,this.$targetMenu.data()),this.options.animate){var t=this.options.animate.split(" ");this.animationIn=t[0],this.animationOut=t[1]||null}this._update()}},{key:"_events",value:function(){this._updateMqHandler=this._update.bind(this),s()(window).on("changed.zf.mediaquery",this._updateMqHandler),this.$toggler.on("click.zf.responsiveToggle",this.toggleMenu.bind(this))}},{key:"_update",value:function(){a.MediaQuery.atLeast(this.options.hideFor)?(this.$element.hide(),this.$targetMenu.show()):(this.$element.show(),this.$targetMenu.hide())}},{key:"toggleMenu",value:function(){var t=this;a.MediaQuery.atLeast(this.options.hideFor)||(this.options.animate?this.$targetMenu.is(":hidden")?r.Motion.animateIn(this.$targetMenu,this.animationIn,function(){t.$element.trigger("toggled.zf.responsiveToggle"),t.$targetMenu.find("[data-mutate]").triggerHandler("mutateme.zf.trigger")}):r.Motion.animateOut(this.$targetMenu,this.animationOut,function(){t.$element.trigger("toggled.zf.responsiveToggle")}):(this.$targetMenu.toggle(0),this.$targetMenu.find("[data-mutate]").trigger("mutateme.zf.trigger"),this.$element.trigger("toggled.zf.responsiveToggle")))}},{key:"_destroy",value:function(){this.$element.off(".zf.responsiveToggle"),this.$toggler.off(".zf.responsiveToggle"),s()(window).off("changed.zf.mediaquery",this._updateMqHandler)}}])&&u(e.prototype,i),o&&u(e,o),n}();f.defaults={hideFor:"medium",animate:!1}},
733"./js/foundation.reveal.js":function(t,e,n){"use strict";n.r(e),n.d(e,"Reveal",function(){return g});var i=n("jquery"),a=n.n(i),s=n("./js/foundation.core.utils.js"),r=n("./js/foundation.util.keyboard.js"),l=n("./js/foundation.util.mediaQuery.js"),u=n("./js/foundation.util.motion.js"),c=n("./js/foundation.core.plugin.js"),d=n("./js/foundation.util.triggers.js");function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function h(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function f(t,e){return!e||"object"!==o(e)&&"function"!=typeof e?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):e}function p(t){return(p=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function m(t,e){return(m=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var g=function(t){function n(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,n),f(this,p(n).apply(this,arguments))}var e,i,o;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&m(t,e)}(n,c["Plugin"]),e=n,(i=[{key:"_setup",value:function(t,e){this.$element=t,this.options=a.a.extend({},n.defaults,this.$element.data(),e),this.className="Reveal",this._init(),d.Triggers.init(a.a),r.Keyboard.register("Reveal",{ESCAPE:"close"})}},{key:"_init",value:function(){var t=this;l.MediaQuery._init(),this.id=this.$element.attr("id"),this.isActive=!1,this.cached={mq:l.MediaQuery.current},this.$anchor=a()('[data-open="'.concat(this.id,'"]')).length?a()('[data-open="'.concat(this.id,'"]')):a()('[data-toggle="'.concat(this.id,'"]')),this.$anchor.attr({"aria-controls":this.id,"aria-haspopup":!0,tabindex:0}),(this.options.fullScreen||this.$element.hasClass("full"))&&(this.options.fullScreen=!0,this.options.overlay=!1),this.options.overlay&&!this.$overlay&&(this.$overlay=this._makeOverlay(this.id)),this.$element.attr({role:"dialog","aria-hidden":!0,"data-yeti-box":this.id,"data-resize":this.id}),this.$overlay?this.$element.detach().appendTo(this.$overlay):(this.$element.detach().appendTo(a()(this.options.appendTo)),this.$element.addClass("without-overlay")),this._events(),this.options.deepLink&&window.location.hash==="#".concat(this.id)&&(this.onLoadListener=Object(s.onLoad)(a()(window),function(){return t.open()}))}},{key:"_makeOverlay",value:function(){var t="";return this.options.additionalOverlayClasses&&(t=" "+this.options.additionalOverlayClasses),a()("<div></div>").addClass("reveal-overlay"+t).appendTo(this.options.appendTo)}},{key:"_updatePosition",value:function(){var t,e=this.$element.outerWidth(),n=a()(window).width(),i=this.$element.outerHeight(),o=a()(window).height(),s=null;t="auto"===this.options.hOffset?parseInt((n-e)/2,10):parseInt(this.options.hOffset,10),"auto"===this.options.vOffset?s=o<i?parseInt(Math.min(100,o/10),10):parseInt((o-i)/4,10):null!==this.options.vOffset&&(s=parseInt(this.options.vOffset,10)),null!==s&&this.$element.css({top:s+"px"}),this.$overlay&&"auto"===this.options.hOffset||(this.$element.css({left:t+"px"}),this.$element.css({margin:"0px"}))}},{key:"_events",value:function(){var n=this,i=this;this.$element.on({"open.zf.trigger":this.open.bind(this),"close.zf.trigger":function(t,e){if(t.target===i.$element[0]||a()(t.target).parents("[data-closable]")[0]===e)return n.close.apply(n)},"toggle.zf.trigger":this.toggle.bind(this),"resizeme.zf.trigger":function(){i._updatePosition()}}),this.options.closeOnClick&&this.options.overlay&&this.$overlay.off(".zf.reveal").on("click.zf.reveal",function(t){t.target!==i.$element[0]&&!a.a.contains(i.$element[0],t.target)&&a.a.contains(document,t.target)&&i.close()}),this.options.deepLink&&a()(window).on("hashchange.zf.reveal:".concat(this.id
733),this._handleState.bind(this))}},{key:"_handleState",value:function(t){window.location.hash!=="#"+this.id||this.isActive?this.close():this.open()}},{key:"_disableScroll",value:function(t){t=t||a()(window).scrollTop(),a()(document).height()>a()(window).height()&&a()("html").css("top",-t)}},{key:"_enableScroll",value:function(t){t=t||parseInt(a()("html").css("top")),a()(document).height()>a()(window).height()&&(a()("html").css("top",""),a()(window).scrollTop(-t))}},{key:"open",value:function(){var t=this,e="#".concat(this.id);this.options.deepLink&&window.location.hash!==e&&(window.history.pushState?this.options.updateHistory?window.history.pushState({},"",e):window.history.replaceState({},"",e):window.location.hash=e),this.$activeAnchor=a()(document.activeElement).is(this.$anchor)?a()(document.activeElement):this.$anchor,this.isActive=!0,this.$element.css({visibility:"hidden"}).show().scrollTop(0),this.options.overlay&&this.$overlay.css({visibility:"hidden"}).show(),this._updatePosition(),this.$element.hide().css({visibility:""}),this.$overlay&&(this.$overlay.css({visibility:""}).hide(),this.$element.hasClass("fast")?this.$overlay.addClass("fast"):this.$element.hasClass("slow")&&this.$overlay.addClass("slow")),this.options.multipleOpened||this.$element.trigger("closeme.zf.reveal",this.id),this._disableScroll();var n=this;if(this.options.animationIn){this.options.overlay&&u.Motion.animateIn(this.$overlay,"fade-in"),u.Motion.animateIn(this.$element,this.options.animationIn,function(){t.$element&&(t.focusableElements=r.Keyboard.findFocusable(t.$element),n.$element.attr({"aria-hidden":!1,tabindex:-1}).focus(),n._addGlobalClasses(),r.Keyboard.trapFocus(n.$element))})}else this.options.overlay&&this.$overlay.show(0),this.$element.show(this.options.showDelay);this.$element.attr({"aria-hidden":!1,tabindex:-1}).focus(),r.Keyboard.trapFocus(this.$element),this._addGlobalClasses(),this._addGlobalListeners(),this.$element.trigger("open.zf.reveal")}},{key:"_addGlobalClasses",value:function(){var t=function(){a()("html").toggleClass("zf-has-scroll",!!(a()(document).height()>a()(window).height()))};this.$element.on("resizeme.zf.trigger.revealScrollbarListener",function(){return t()}),t(),a()("html").addClass("is-reveal-open")}},{key:"_removeGlobalClasses",value:function(){this.$element.off("resizeme.zf.trigger.revealScrollbarListener"),a()("html").removeClass("is-reveal-open"),a()("html").removeClass("zf-has-scroll")}},{key:"_addGlobalListeners",value:function(){var e=this;this.$element&&(this.focusableElements=r.Keyboard.findFocusable(this.$element),this.options.overlay||!this.options.closeOnClick||this.options.fullScreen||a()("body").on("click.zf.reveal",function(t){t.target!==e.$element[0]&&!a.a.contains(e.$element[0],t.target)&&a.a.contains(document,t.target)&&e.close()}),this.options.closeOnEsc&&a()(window).on("keydown.zf.reveal",function(t){r.Keyboard.handleKey(t,"Reveal",{close:function(){e.options.closeOnEsc&&e.close()}})}))}},{key:"close",value:function(){if(!this.isActive||!this.$element.is(":visible"))return!1;var e=this;function t(){var t=parseInt(a()("html").css("top"));0===a()(".reveal:visible").length&&e._removeGlobalClasses(),r.Keyboard.releaseFocus(e.$element),e.$element.attr("aria-hidden",!0),e._enableScroll(t),e.$element.trigger("closed.zf.reveal")}if(this.options.animationOut?(this.options.overlay&&u.Motion.animateOut(this.$overlay,"fade-out"),u.Motion.animateOut(this.$element,this.options.animationOut,t)):(this.$element.hide(this.options.hideDelay),this.options.overlay?this.$overlay.hide(0,t):t()),this.options.closeOnEsc&&a()(window).off("keydown.zf.reveal"),!this.options.overlay&&this.options.closeOnClick&&a()("body").off("click.zf.reveal"),this.$element.off("keydown.zf.reveal"),this.options.resetOnClose&&this.$element.html(this.$element.html()),this.isActive=!1,e.options.deepLink&&window.location.hash==="#".concat(this.id))if(window.history.replaceState){var n=window.location.pathname+window.location.search;this.options.updateHistory?window.history.pushState({},"",n):window.history.replaceState("",document.title,n)}else window.location.hash="";this.$activeAnchor.focus()}},{key:"toggle",value:function(){this.isActive?this.close():this.open()}},{key:"_destroy",value:function(){this.options.overlay&&(this.$element.appendTo(a()(this.options.appendTo)),this.$overlay.hide().off().remove()),this.$element.hide().off(),this.$anchor.off(".zf"),a()(window).off(".zf.reveal:".concat(this.id
733)),this.onLoadListener&&a()(window).off(this.onLoadListener),0===a()(".reveal:visible").length&&this._removeGlobalClasses()}}])&&h(e.prototype,i),o&&h(e,o),n}();g.defaults={animationIn:"",animationOut:"",showDelay:0,hideDelay:0,closeOnClick:!0,closeOnEsc:!0,multipleOpened:!1,vOffset:"auto",hOffset:"auto",fullScreen:!1,overlay:!0,resetOnClose:!1,deepLink:!1,updateHistory:!1,appendTo:"body",additionalOverlayClasses:""}},
733"./js/foundation.slider.js":function(t,e,n){"use strict";n.r(e),n.d(e,"Slider",function(){return f});var i=n("jquery"),m=n.n(i),a=n("./js/foundation.util.keyboard.js"),_=n("./js/foundation.util.motion.js"),g=n("./js/foundation.core.utils.js"),s=n("./js/foundation.core.plugin.js"),r=n("./js/foundation.util.touch.js"),l=n("./js/foundation.util.triggers.js");function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function u(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function c(t,e){return!e||"object"!==o(e)&&"function"!=typeof e?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):e}function d(t){return(d=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}
733function h(t,e){return(h=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var f=function(t){function n(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,n),c(this,d(n).apply(this,arguments))}var e,i,o;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&h(t,e)}(n,s["Plugin"]),e=n,(i=[{key:"_setup",value:function(t,e){this.$element=t,this.options=m.a.extend({},n.defaults,this.$element.data(),e),this.className="Slider",r.Touch.init(m.a),l.Triggers.init(m.a),this._init(),a.Keyboard.register("Slider",{ltr:{ARROW_RIGHT:"increase",ARROW_UP:"increase",ARROW_DOWN:"decrease",ARROW_LEFT:"decrease",SHIFT_ARROW_RIGHT:"increase_fast",SHIFT_ARROW_UP:"increase_fast",SHIFT_ARROW_DOWN:"decrease_fast",SHIFT_ARROW_LEFT:"decrease_fast",HOME:"min",END:"max"},rtl:{ARROW_LEFT:"increase",ARROW_RIGHT:"decrease",SHIFT_ARROW_LEFT:"increase_fast",SHIFT_ARROW_RIGHT:"decrease_fast"}})}},{key:"_init",value:function(){this.inputs=this.$element.find("input"),this.handles=this.$element.find("[data-slider-handle]"),this.$handle=this.handles.eq(0),this.$input=this.inputs.length?this.inputs.eq(0):m()("#".concat(this.$handle.attr("aria-controls"))),this.$fill=this.$element.find("[data-slider-fill]").css(this.options.vertical?"height":"width",0);(this.options.disabled||this.$element.hasClass(this.options.disabledClass))&&(this.options.disabled=!0,this.$element.addClass(this.options.disabledClass)),this.inputs.length||(this.inputs=m()().add(this.$input),this.options.binding=!0),this._setInitAttr(0),this.handles[1]&&(this.options.doubleSided=!0,this.$handle2=this.handles.eq(1),this.$input2=1<this.inputs.length?this.inputs.eq(1):m()("#".concat(this.$handle2.attr("aria-controls"))),this.inputs[1]||(this.inputs=this.inputs.add(this.$input2)),!0,this._setInitAttr(1)),this.setHandles(),this._events()}},{key:"setHandles",value:function(){var t=this;this.handles[1]?this._setHandlePos(this.$handle,this.inputs.eq(0).val(),!0,function(){t._setHandlePos(t.$handle2,t.inputs.eq(1).val(),!0)}):this._setHandlePos(this.$handle,this.inputs.eq(0).val(),!0)}},{key:"_reflow",value:function(){this.setHandles()}},{key:"_pctOfBar",value:function(t){var e=$(t-this.options.start,this.options.end-this.options.start);switch(this.options.positionValueFunction){case"pow":e=this._logTransform(e);break;case"log":e=this._powTransform(e)}return e.toFixed(2)}},{key:"_value",value:function(t){switch(this.options.positionValueFunction){case"pow":t=this._powTransform(t);break;case"log":t=this._logTransform(t)}return(this.options.end-this.options.start)*t+parseFloat(this.options.start)}},{key:"_logTransform",value:function(t){return e=this.options.nonLinearBase,n=t*(this.options.nonLinearBase-1)+1,Math.log(n)/Math.log(e);var e,n}},{key:"_powTransform",value:function(t){return(Math.pow(this.options.nonLinearBase,t)-1)/(this.options.nonLinearBase-1)}},{key:"_setHandlePos",value:function(t,e,n,i){if(!this.$element.hasClass(this.options.disabledClass)){(e=parseFloat(e))<this.options.start?e=this.options.start:e>this.options.end&&(e=this.options.end);var o=this.options.doubleSided;if(this.options.vertical&&!n&&(e=this.options.end-e),o)if(0===this.handles.index(t)){var s=parseFloat(this.$handle2.attr("aria-valuenow"));e=s<=e?s-this.options.step:e}else{var a=parseFloat(this.$handle.attr("aria-valuenow"));e=e<=a?a+this.options.step:e}var r=this,l=this.options.vertical,u=l?"height":"width",c=l?"top":"left",d=t[0].getBoundingClientRect()[u],h=this.$element[0].getBoundingClientRect()[u],f=this._pctOfBar(e),p=(100*$((h-d)*f,h)).toFixed(this.options.decimal);e=parseFloat(e.toFixed(this.options.decimal));var m={};if(this._setValues(t,e),o){var g,v=0===this.handles.index(t),y=~~(100*$(d,h));if(v)m[c]="".concat(p,"%"),g=parseFloat(this.$handle2[0].style[c])-p+y,i&&"function"==typeof i&&i();else{var b=parseFloat(this.$handle[0].style[c]);g=p-(isNaN(b)?(this.options.initialStart-this.options.start)/((this.options.end-this.options.start)/100):b)+y}m["min-".concat(u)]="".concat(g,"%")}this.$element.one("finished.zf.animate",function(){r.$element.trigger("moved.zf.slider",[t])});var w=this.$element.data("dragging")?1e3/60:this.options.moveTime;Object(_.Move)(w,t,function(){isNaN(p)?t.css(c,"".concat(100*f,"%")):t.css(c,"".concat(p,"%")),r.options.doubleSided?r.$fill.css(m):r.$fill.css(u,"".concat(100*f,"%"))}),clearTimeout(r.timeout),r.timeout=setTimeout(function(){r.$element.trigger("changed.zf.slider",[t])},r.options.changedDelay)}}},{key:"_setInitAttr",value:function(t){var e=0===t?this.options.initialStart:this.options.initialEnd,n=this.inputs.eq(t).attr("id")||Object(g.GetYoDigits)(6,"slider");this.inputs.eq(t).attr({id:n,max:this.options.end,min:this.options.start,step:this.options.step}),this.inputs.eq(t).val(e),this.handles.eq(t).attr({role:"slider","aria-controls":n,"aria-valuemax":this.options.end,"aria-valuemin":this.options.start,"aria-valuenow":e,"aria-orientation":this.options.vertical?"vertical":"horizontal",tabindex:0})}},{key:"_setValues",value:function(t,e){var n=this.options.doubleSided?this.handles.index(t):0;this.inputs.eq(n).val(e),t.attr("aria-valuenow",e)}},{key:"_handleEvent",value:function(t,e,n){var i,o;if(n)i=this._adjustValue(null,n),o=!0;else{t.preventDefault();var s=this.options.vertical,a=s?"height":"width",r=s?"top":"left",l=s?t.pageY:t.pageX,u=(this.$handle[0].getBoundingClientRect()[a],this.$element[0].getBoundingClientRect()[a]),c=s?m()(window).scrollTop():m()(window).scrollLeft(),d=this.$element.offset()[r];t.clientY===t.pageY&&(l+=c);var h,f=l-d,p=$(h=f<0?0:u<f?u:f,u);
733if(i=this._value(p),Object(g.rtl)()&&!this.options.vertical&&(i=this.options.end-i),i=this._adjustValue(null,i),o=!1,!e)e=v(this.$handle,r,h,a)<=v(this.$handle2,r,h,a)?this.$handle:this.$handle2}this._setHandlePos(e,i,o)}},{key:"_adjustValue",value:function(t,e){var n,i,o,s=this.options.step,a=parseFloat(s/2);return 0===(i=0<=(n=t?parseFloat(t.attr("aria-valuenow")):e)?n%s:s+n%s)?n:n=(o=n-i)+a<=n?o+s:o}},{key:"_events",value:function(){this._eventsForHandle(this.$handle),this.handles[1]&&this._eventsForHandle(this.$handle2)}},{key:"_eventsForHandle",value:function(e){var n,s=this,i=function(t){var e=s.inputs.index(m()(this));s._handleEvent(t,s.handles.eq(e),m()(this).val())};if(this.inputs.off("keyup.zf.slider").on("keyup.zf.slider",function(t){13==t.keyCode&&i.call(this,t)}),this.inputs.off("change.zf.slider").on("change.zf.slider",i),this.options.clickSelect&&this.$element.off("click.zf.slider").on("click.zf.slider",function(t){if(s.$element.data("dragging"))return!1;m()(t.target).is("[data-slider-handle]")||(s.options.doubleSided?s._handleEvent(t):s._handleEvent(t,s.$handle))}),this.options.draggable){this.handles.addTouch();var o=m()("body");e.off("mousedown.zf.slider").on("mousedown.zf.slider",function(t){e.addClass("is-dragging"),s.$fill.addClass("is-dragging"),s.$element.data("dragging",!0),n=m()(t.currentTarget),o.on("mousemove.zf.slider",function(t){t.preventDefault(),s._handleEvent(t,n)}).on("mouseup.zf.slider",function(t){s._handleEvent(t,n),e.removeClass("is-dragging"),s.$fill.removeClass("is-dragging"),s.$element.data("dragging",!1),o.off("mousemove.zf.slider mouseup.zf.slider")})}).on("selectstart.zf.slider touchmove.zf.slider",function(t){t.preventDefault()})}e.off("keydown.zf.slider").on("keydown.zf.slider",function(t){var e,n=m()(this),i=s.options.doubleSided?s.handles.index(n):0,o=parseFloat(s.inputs.eq(i).val());a.Keyboard.handleKey(t,"Slider",{decrease:function(){e=o-s.options.step},increase:function(){e=o+s.options.step},decrease_fast:function(){e=o-10*s.options.step},increase_fast:function(){e=o+10*s.options.step},min:function(){e=s.options.start},max:function(){e=s.options.end},handled:function(){t.preventDefault(),s._setHandlePos(n,e,!0)}})})}},{key:"_destroy",value:function(){this.handles.off(".zf.slider"),this.inputs.off(".zf.slider"),this.$element.off(".zf.slider"),clearTimeout(this.timeout)}}])&&u(e.prototype,i),o&&u(e,o),n}();function $(t,e){return t/e}function v(t,e,n,i){return Math.abs(t.position()[e]+t[i]()/2-n)}f.defaults={start:0,end:100,step:1,initialStart:0,initialEnd:100,binding:!1,clickSelect:!0,vertical:!1,draggable:!0,disabled:!1,doubleSided:!1,decimal:2,moveTime:200,disabledClass:"disabled",invertVertical:!1,changedDelay:500,nonLinearBase:5,positionValueFunction:"linear"}},
733"./js/foundation.smoothScroll.js":function(t,e,n){"use strict";n.r(e),n.d(e,"SmoothScroll",function(){return h});var i=n("jquery"),a=n.n(i),o=n("./js/foundation.core.utils.js"),r=n("./js/foundation.core.plugin.js");function s(t){return(s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function l(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function u(t,e){return!e||"object"!==s(e)&&"function"!=typeof e?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):e}function c(t){return(c=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function d(t,e){return(d=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var h=function(t){function s(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,s),u(this,c(s).apply(this,arguments))}var e,n,i;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&d(t,e)}(s,r["Plugin"]),e=s,i=[{key:"scrollToLoc",value:function(t){var e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:s.defaults,n=2<arguments.length?arguments[2]:void 0,i=a()(t);if(!i.length)return!1;var o=Math.round(i.offset().top-e.threshold/2-e.offset);a()("html, body").stop(!0).animate({scrollTop:o},e.animationDuration,e.animationEasing,function(){"function"==typeof n&&n()})}}],(n=[{key:"_setup",value:function(t,e){this.$element=t,this.options=a.a.extend({},s.defaults,this.$element.data(),e),this.className="SmoothScroll",this._init()}},{key:"_init",value:function(){var t=this.$element[0].id||Object(o.GetYoDigits)(6,"smooth-scroll");this.$element.attr({id:t}),this._events()}},{key:"_events",value:function(){this.$element.on("click.zf.smoothScroll",this._handleLinkClick),this.$element.on("click.zf.smoothScroll",'a[href^="#"]',this._handleLinkClick)}},{key:"_handleLinkClick",value:function(t){var e=this;if(a()(t.currentTarget).is('a[href^="#"]')){var n=t.currentTarget.getAttribute("href");this._inTransition=!0,s.scrollToLoc(n,this.options,function(){e._inTransition=!1}),t.preventDefault()}}},{key:"_destroy",value:function(){this.$element.off("click.zf.smoothScroll",this._handleLinkClick),this.$element.off("click.zf.smoothScroll",'a[href^="#"]',this._handleLinkClick)}}])&&l(e.prototype,n),i&&l(e,i),s}();h.defaults={animationDuration:500,animationEasing:"linear",threshold:50,offset:0}},
733"./js/foundation.sticky.js":function(t,e,n){"use strict";n.r(e),n.d(e,"Sticky",function(){return p});var i=n("jquery"),r=n.n(i),s=n("./js/foundation.core.utils.js"),l=n("./js/foundation.util.mediaQuery.js"),a=n("./js/foundation.core.plugin.js"),u=n("./js/foundation.util.triggers.js");function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function c(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function d(t,e){return!e||"object"!==o(e)&&"function"!=typeof e?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):e}function h(t){return(h=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function f(t,e){return(f=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var p=function(t){function n(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,n),d(this,h(n).apply(this,arguments))}var e,i,o;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&f(t,e)}(n,a["Plugin"]),e=n,(i=[{key:"_setup",value:function(t,e){this.$element=t,this.options=r.a.extend({},n.defaults,this.$element.data(),e),this.className="Sticky",u.Triggers.init(r.a),this._init()}},{key:"_init",value:function(){l.MediaQuery._init();var t=this.$element.parent("[data-sticky-container]"),e=this.$element[0].id||Object(s.GetYoDigits)(6,"sticky"),n=this;t.length?this.$container=t:(this.wasWrapped=!0,this.$element.wrap(this.options.container),this.$container=this.$element.parent()),this.$container.addClass(this.options.containerClass),this.$element.addClass(this.options.stickyClass).attr({"data-resize":e,"data-mutate":e}),""!==this.options.anchor&&r()("#"+n.options.anchor).attr({"data-mutate":e}),this.scrollCount=this.options.checkEvery,this.isStuck=!1,this.onLoadListener=Object(s.onLoad)(r()(window),function(){n.containerHeight="none"==n.$element.css("display")?0:n.$element[0].getBoundingClientRect().height,n.$container.css("height",n.containerHeight),n.elemHeight=n.containerHeight,""!==n.options.anchor?n.$anchor=r()("#"+n.options.anchor):n._parsePoints(),n._setSizes(function(){var t=window.pageYOffset;n._calc(!1,t),n.isStuck||n._removeSticky(!(t>=n.topPoint))}),n._events(e.split("-").reverse().join("-"))})}},{key:"_parsePoints",value:function(){for(var t=[""==this.options.topAnchor?1:this.options.topAnchor,""==this.options.btmAnchor?document.documentElement.scrollHeight:this.options.btmAnchor],e={},n=0,i=t.length;n<i&&t[n];n++){var o;if("number"==typeof t[n])o=t[n];else{var s=t[n].split(":"),a=r()("#".concat(s[0]));o=a.offset().top,s[1]&&"bottom"===s[1].toLowerCase()&&(o+=a[0].getBoundingClientRect().height)}e[n]=o}this.points=e}},{key:"_events",value:function(n){var i=this,t=this.scrollListener="scroll.zf.".concat(n);this.isOn||(this.canStick&&(this.isOn=!0,r()(window).off(t).on(t,function(t){0===i.scrollCount?(i.scrollCount=i.options.checkEvery,i._setSizes(function(){i._calc(!1,window.pageYOffset)})):(i.scrollCount--,i._calc(!1,window.pageYOffset))})),this.$element.off("resizeme.zf.trigger").on("resizeme.zf.trigger",function(t,e){i._eventsHandler(n)}),this.$element.on("mutateme.zf.trigger",function(t,e){i._eventsHandler(n)}),this.$anchor&&this.$anchor.on("mutateme.zf.trigger",function(t,e){i._eventsHandler(n)}))}},{key:"_eventsHandler",value:function(t){var e=this,n=this.scrollListener="scroll.zf.".concat(t);e._setSizes(function(){e._calc(!1),e.canStick?e.isOn||e._events(t):e.isOn&&e._pauseListeners(n)})}},{key:"_pauseListeners",value:function(t){this.isOn=!1,r()(window).off(t),this.$element.trigger("pause.zf.sticky")}},{key:"_calc",value:function(t,e){if(t&&this._setSizes(),!this.canStick)return this.isStuck&&this._removeSticky(!0),!1;e||(e=window.pageYOffset),e>=this.topPoint?e<=this.bottomPoint?this.isStuck||this._setSticky():this.isStuck&&this._removeSticky(!1):this.isStuck&&this._removeSticky(!0)}},{key:"_setSticky",value:function(){var t=this,e=this.options.stickTo,n="top"===e?"marginTop":"marginBottom",i="top"===e?"bottom":"top",o={};o[n]="".concat(this.options[n],"em"),o[e]=0,o[i]="auto",this.isStuck=!0,this.$element.removeClass("is-anchored is-at-".concat(i)).addClass("is-stuck is-at-".concat(e)).css(o).trigger("sticky.zf.stuckto:".concat(e)),this.$element.on("transitionend webkitTransitionEnd oTransitionEnd otransitionend MSTransitionEnd",function(){t._setSizes()})}},{key:"_removeSticky",value:function(t){var e=this.options.stickTo,n="top"===e,i={},o=(this.points?this.points[1]-this.points[0]:this.anchorHeight)-this.elemHeight,s=t?"top":"bottom";i[n?"marginTop":"marginBottom"]=0,i.bottom="auto",i.top=t?0:o,this.isStuck=!1,this.$element.removeClass("is-stuck is-at-".concat(e)).addClass("is-anchored is-at-".concat(s)).css(i).trigger("sticky.zf.unstuckfrom:".concat(s))}},{key:"_setSizes",value:function(t){this.canStick=l.MediaQuery.is(this.options.stickyOn),this.canStick||t&&"function"==typeof t&&t();var e=this.$container[0].getBoundingClientRect().width,n=window.getComputedStyle(this.$container[0]),i=parseInt(n["padding-left"],10),o=parseInt(n["padding-right"],10);this.$anchor&&this.$anchor.length?this.anchorHeight=this.$anchor[0].getBoundingClientRect().height:this._parsePoints(),this.$element.css({"max-width":"".concat(e-i-o,"px")});var s=this.$element[0].getBoundingClientRect().height||this.containerHeight;if("none"==this.$element.css("display")&&(s=0),this.containerHeight=s,this.$container.css({height:s}),this.elemHeight=s,!this.isStuck&&this.$element.hasClass("is-at-bottom")){var a=(this.points?this.points[1]-this.$container.offset().top:this.anchorHeight)-this.elemHeight;this.$element.css("top",a)}this._setBreakPoints(s,function(){t&&"function"==typeof t&&t()})}},{key:"_setBreakPoints",value:function(t,e){if(!this.canStick){if(!e||"function"!=typeof e)return!1;e()}var n=m(this.options.marginTop),i=m(this.options.marginBottom),o=this.points?this.points[0]:this.$anchor.offset().top,s=this.points?this.points[1]:o+this.anchorHeight,a=window.innerHeight;"top"===this.options.stickTo?(o-=n,s-=t+n):"bottom"===this.options.stickTo&&(o-=a-(t+i),s-=a-i),this.topPoint=o,this.bottomPoint=s,e&&"function"==typeof e&&e()}},{key:"_destroy",value:function(){this._removeSticky(!0),this.$element.removeClass("".concat(this.options.stickyClass," is-anchored is-at-top")).css({height:"",top:"",bottom:"","max-width":""}).off("resizeme.zf.trigger").off("mutateme.zf.trigger"),this.$anchor&&this.$anchor.length&&this.$anchor.off("change.zf.sticky"),this.scrollListener&&r()(window).off(this.scrollListener),this.onLoadListener&&r()(window).off(this.onLoadListener),this.wasWrapped?this.$element.unwrap():this.$container.removeClass(this.options.containerClass).css({height:""})}}
733])&&c(e.prototype,i),o&&c(e,o),n}();function m(t){return parseInt(window.getComputedStyle(document.body,null).fontSize,10)*t}p.defaults={container:"<div data-sticky-container></div>",stickTo:"top",anchor:"",topAnchor:"",btmAnchor:"",marginTop:1,marginBottom:1,stickyOn:"medium",stickyClass:"sticky",containerClass:"sticky-container",checkEvery:-1}},
733"./js/foundation.tabs.js":function(t,e,n){"use strict";n.r(e),n.d(e,"Tabs",function(){return o});var i=n("jquery"),r=n.n(i),l=n("./js/foundation.core.utils.js"),a=n("./js/foundation.util.keyboard.js"),u=n("./js/foundation.util.imageLoader.js"),s=n("./js/foundation.core.plugin.js");function c(t){return(c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function d(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function h(t,e){return!e||"object"!==c(e)&&"function"!=typeof e?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):e}function f(t){return(f=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function p(t,e){return(p=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var o=function(t){function n(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,n),h(this,f(n).apply(this,arguments))}var e,i,o;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&p(t,e)}(n,s["Plugin"]),e=n,(i=[{key:"_setup",value:function(t,e){this.$element=t,this.options=r.a.extend({},n.defaults,this.$element.data(),e),this.className="Tabs",this._init(),a.Keyboard.register("Tabs",{ENTER:"open",SPACE:"open",ARROW_RIGHT:"next",ARROW_UP:"previous",ARROW_DOWN:"next",ARROW_LEFT:"previous"})}},{key:"_init",value:function(){var s=this,a=this;if(this._isInitializing=!0,this.$element.attr({role:"tablist"}),this.$tabTitles=this.$element.find(".".concat(this.options.linkClass)),this.$tabContent=r()('[data-tabs-content="'.concat(this.$element[0].id,'"]')),this.$tabTitles.each(function(){var t=r()(this),e=t.find("a"),n=t.hasClass("".concat(a.options.linkActiveClass)),i=e.attr("data-tabs-target")||e[0].hash.slice(1),o=e[0].id?e[0].id:"".concat(i,"-label"),s=r()("#".concat(i));t.attr({role:"presentation"}),e.attr({role:"tab","aria-controls":i,"aria-selected":n,id:o,tabindex:n?"0":"-1"}),s.attr({role:"tabpanel","aria-labelledby":o}),n&&(a._initialAnchor="#".concat(i)),n||s.attr("aria-hidden","true"),n&&a.options.autoFocus&&(a.onLoadListener=Object(l.onLoad)(r()(window),function(){r()("html, body").animate({scrollTop:t.offset().top},a.options.deepLinkSmudgeDelay,function(){e.focus()})}))}),this.options.matchHeight){var t=this.$tabContent.find("img");t.length?Object(u.onImagesLoaded)(t,this._setHeight.bind(this)):this._setHeight()}this._checkDeepLink=function(){var t=window.location.hash;if(!t.length){if(s._isInitializing)return;s._initialAnchor&&(t=s._initialAnchor)}var e=t&&r()(t),n=t&&s.$element.find('[href$="'+t+'"]'),i=!(!e.length||!n.length);if(e&&e.length&&n&&n.length?s.selectTab(e,!0):s._collapse(),i){if(s.options.deepLinkSmudge){var o=s.$element.offset();r()("html, body").animate({scrollTop:o.top},s.options.deepLinkSmudgeDelay)}s.$element.trigger("deeplink.zf.tabs",[n,e])}},this.options.deepLink&&this._checkDeepLink(),this._events(),this._isInitializing=!1}},{key:"_events",value:function(){this._addKeyHandler(),this._addClickHandler(),this._setHeightMqHandler=null,this.options.matchHeight&&(this._setHeightMqHandler=this._setHeight.bind(this),r()(window).on("changed.zf.mediaquery",this._setHeightMqHandler)),this.options.deepLink&&r()(window).on("hashchange",this._checkDeepLink)}},{key:"_addClickHandler",value:function(){var e=this;this.$element.off("click.zf.tabs").on("click.zf.tabs",".".concat(this.options.linkClass),function(t){t.preventDefault(),t.stopPropagation(),e._handleTabChange(r()(this))})}},{key:"_addKeyHandler",value:function(){var s=this;this.$tabTitles.off("keydown.zf.tabs").on("keydown.zf.tabs",function(t){if(9!==t.which){var e,n,i=r()(this),o=i.parent("ul").children("li");o.each(function(t){r()(this).is(i)&&(n=s.options.wrapOnKeys?(e=0===t?o.last():o.eq(t-1),t===o.length-1?o.first():o.eq(t+1)):(e=o.eq(Math.max(0,t-1)),o.eq(Math.min(t+1,o.length-1))))}),a.Keyboard.handleKey(t,"Tabs",{open:function(){i.find('[role="tab"]').focus(),s._handleTabChange(i)},previous:function(){e.find('[role="tab"]').focus(),s._handleTabChange(e)},next:function(){n.find('[role="tab"]').focus(),s._handleTabChange(n)},handled:function(){t.stopPropagation(),t.preventDefault()}})}})}},{key:"_handleTabChange",value:function(t,e){if(t.hasClass("".concat(this.options.linkActiveClass)))this.options.activeCollapse&&this._collapse();else{var n=this.$element.find(".".concat(this.options.linkClass,".").concat(this.options.linkActiveClass)),i=t.find('[role="tab"]'),o=i.attr("data-tabs-target"),s=o&&o.length?"#".concat(o):i[0].hash,a=this.$tabContent.find(s);this._collapseTab(n),this._openTab(t),this.options.deepLink&&!e&&(this.options.updateHistory?history.pushState({},"",s):history.replaceState({},"",s)),this.$element.trigger("change.zf.tabs",[t,a]),a.find("[data-mutate]").trigger("mutateme.zf.trigger")}}},{key:"_openTab",value:function(t){var e=t.find('[role="tab"]'),n=e.attr("data-tabs-target")||e[0].hash.slice(1),i=this.$tabContent.find("#".concat(n));t.addClass("".concat(this.options.linkActiveClass)),e.attr({"aria-selected":"true",tabindex:"0"}),i.addClass("".concat(this.options.panelActiveClass)).removeAttr("aria-hidden")}},{key:"_collapseTab",value:function(t){var e=t.removeClass("".concat(this.options.linkActiveClass)).find('[role="tab"]').attr({"aria-selected":"false",tabindex:-1});r()("#".concat(e.attr("aria-controls"))).removeClass("".concat(this.options.panelActiveClass)).attr({"aria-hidden":"true"})}},{key:"_collapse",value:function(){var t=this.$element.find(".".concat(this.options.linkClass,".").concat(this.options.linkActiveClass));t.length&&(this._collapseTab(t),this.$element.trigger("collapse.zf.tabs",[t]))}},{key:"selectTab",value:function(t,e){var n;(n="object"===c(t)?t[0].id:t).indexOf("#")<0&&(n="#".concat(n));var i=this.$tabTitles.has('[href$="'.concat(n,'"]'));this._handleTabChange(i,e)}},{key:"_setHeight",value:function(){var i=0,o=this;this.$tabContent.find(".".concat(this.options.panelClass)).css("height","").each(function(){var t=r()(this),e=t.hasClass("".concat(o.options.panelActiveClass));e||t.css({visibility:"hidden",display:"block"});var n=this.getBoundingClientRect().height;e||t.css({visibility:"",display:""}),i=i<n?n:i}).css("height","".concat(i,"px"))}},{key:"_destroy",value:function(){this.$element.find(".".concat(this.options.linkClass)).off(".zf.tabs").hide().end().find(".".concat(this.options.panelClass)).hide(),this.options.matchHeight&&null!=this._setHeightMqHandler&&r()(window).off("changed.zf.mediaquery",this._setHeightMqHandler),this.options.deepLink&&r()(window).off("hashchange",this._checkDeepLink),this.onLoadListener&&r()(window).off(this.onLoadListener)}}
733])&&d(e.prototype,i),o&&d(e,o),n}();o.defaults={deepLink:!1,deepLinkSmudge:!1,deepLinkSmudgeDelay:300,updateHistory:!1,autoFocus:!1,wrapOnKeys:!0,matchHeight:!1,activeCollapse:!1,linkClass:"tabs-title",linkActiveClass:"is-active",panelClass:"tabs-panel",panelActiveClass:"is-active"}},
733"./js/foundation.toggler.js":function(t,e,n){"use strict";n.r(e),n.d(e,"Toggler",function(){return p});var i=n("jquery"),s=n.n(i),a=n("./js/foundation.util.motion.js"),r=n("./js/foundation.core.plugin.js"),l=n("./js/foundation.core.utils.js"),u=n("./js/foundation.util.triggers.js");function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function c(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function d(t,e){return!e||"object"!==o(e)&&"function"!=typeof e?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):e}function h(t){return(h=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function f(t,e){return(f=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var p=function(t){function n(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,n),d(this,h(n).apply(this,arguments))}var e,i,o;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&f(t,e)}(n,r["Plugin"]),e=n,(i=[{key:"_setup",value:function(t,e){this.$element=t,this.options=s.a.extend({},n.defaults,t.data(),e),this.className="",this.className="Toggler",u.Triggers.init(s.a),this._init(),this._events()}},{key:"_init",value:function(){var t;this.options.animate?(t=this.options.animate.split(" "),this.animationIn=t[0],this.animationOut=t[1]||null):(t=this.$element.data("toggler"),this.className="."===t[0]?t.slice(1):t);var o=this.$element[0].id,e=s()('[data-open~="'.concat(o,'"], [data-close~="').concat(o,'"], [data-toggle~="').concat(o,'"]'));e.attr("aria-expanded",!this.$element.is(":hidden")),e.each(function(t,e){var n=s()(e),i=n.attr("aria-controls")||"";new RegExp("\\b".concat(Object(l.RegExpEscape)(o),"\\b")).test(i)||n.attr("aria-controls",i?"".concat(i," ").concat(o):o)})}},{key:"_events",value:function(){this.$element.off("toggle.zf.trigger").on("toggle.zf.trigger",this.toggle.bind(this))}},{key:"toggle",value:function(){this[this.options.animate?"_toggleAnimate":"_toggleClass"]()}},{key:"_toggleClass",value:function(){this.$element.toggleClass(this.className);var t=this.$element.hasClass(this.className);t?this.$element.trigger("on.zf.toggler"):this.$element.trigger("off.zf.toggler"),this._updateARIA(t),this.$element.find("[data-mutate]").trigger("mutateme.zf.trigger")}},{key:"_toggleAnimate",value:function(){var t=this;this.$element.is(":hidden")?a.Motion.animateIn(this.$element,this.animationIn,function(){t._updateARIA(!0),this.trigger("on.zf.toggler"),this.find("[data-mutate]").trigger("mutateme.zf.trigger")}):a.Motion.animateOut(this.$element,this.animationOut,function(){t._updateARIA(!1),this.trigger("off.zf.toggler"),this.find("[data-mutate]").trigger("mutateme.zf.trigger")})}},{key:"_updateARIA",value:function(t){var e=this.$element[0].id;s()('[data-open="'.concat(e,'"], [data-close="').concat(e,'"], [data-toggle="').concat(e,'"]')).attr({"aria-expanded":!!t})}},{key:"_destroy",value:function(){this.$element.off(".zf.toggler")}}])&&c(e.prototype,i),o&&c(e,o),n}();p.defaults={animate:!1}},
733"./js/foundation.tooltip.js":function(t,e,n){"use strict";n.r(e),n.d(e,"Tooltip",function(){return m});var i=n("jquery"),s=n.n(i),a=n("./js/foundation.core.utils.js"),r=n("./js/foundation.util.mediaQuery.js"),l=n("./js/foundation.util.triggers.js"),u=n("./js/foundation.positionable.js");function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function c(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function d(t,e){return!e||"object"!==o(e)&&"function"!=typeof e?function(t){if(void 0!==t)return t;throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}(t):e}function h(t,e,n){return(h="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,n){var i=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=f(t)););return t}(t,e);if(i){var o=Object.getOwnPropertyDescriptor(i,e);return o.get?o.get.call(n):o.value}})(t,e,n||t)}function f(t){return(f=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function p(t,e){return(p=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var m=function(t){function n(){return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,n),d(this,f(n).apply(this,arguments))}var e,i,o;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&p(t,e)}(n,u["Positionable"]),e=n,(i=[{key:"_setup",value:function(t,e){this.$element=t,this.options=s.a.extend({},n.defaults,this.$element.data(),e),this.className="Tooltip",this.isActive=!1,this.isClick=!1,l.Triggers.init(s.a),this._init()}},{key:"_init",value:function(){r.MediaQuery._init();var t=this.$element.attr("aria-describedby")||Object(a.GetYoDigits)(6,"tooltip");this.options.tipText=this.options.tipText||this.$element.attr("title"),this.template=this.options.template?s()(this.options.template):this._buildTemplate(t),this.options.allowHtml?this.template.appendTo(document.body).html(this.options.tipText).hide():this.template.appendTo(document.body).text(this.options.tipText).hide(),this.$element.attr({title:"","aria-describedby":t,"data-yeti-box":t,"data-toggle":t,"data-resize":t}).addClass(this.options.triggerClass),h(f(n.prototype),"_init",this).call(this),this._events()}},{key:"_getDefaultPosition",value:function(){var t=this.$element[0].className.match(/\b(top|left|right|bottom)\b/g);return t?t[0]:"top"}},{key:"_getDefaultAlignment",value:function(){return"center"}},{key:"_getHOffset",value:function(){return"left"===this.position||"right"===this.position?this.options.hOffset+this.options.tooltipWidth:this.options.hOffset}},{key:"_getVOffset",value:function(){return"top"===this.position||"bottom"===this.position?this.options.vOffset+this.options.tooltipHeight:this.options.vOffset}},{key:"_buildTemplate",value:function(t){var e="".concat(this.options.tooltipClass," ").concat(this.options.templateClasses).trim();return s()("<div></div>").addClass(e).attr({role:"tooltip","aria-hidden":!0,"data-is-active":!1,"data-is-focus":!1,id:t})}},{key:"_setPosition",value:function(){h(f(n.prototype),"_setPosition",this).call(this,this.$element,this.template)}},{key:"show",value:function(){if("all"!==this.options.showOn&&!r.MediaQuery.is(this.options.showOn))return!1;this.template.css("visibility","hidden").show(),this._setPosition(),this.template.removeClass("top bottom left right").addClass(this.position),this.template.removeClass("align-top align-bottom align-left align-right align-center").addClass("align-"+this.alignment),this.$element.trigger("closeme.zf.tooltip",this.template.attr("id")),this.template.attr({"data-is-active":!0,"aria-hidden":!1}),this.isActive=!0,this.template.stop().hide().css("visibility","").fadeIn(this.options.fadeInDuration,function(){}),this.$element.trigger("show.zf.tooltip")}},{key:"hide",value:function(){var t=this;this.template.stop().attr({"aria-hidden":!0,"data-is-active":!1}).fadeOut(this.options.fadeOutDuration,function(){t.isActive=!1,t.isClick=!1}),this.$element.trigger("hide.zf.tooltip")}},{key:"_events",value:function(){var e=this,n=(this.template,!1);this.options.disableHover||this.$element.on("mouseenter.zf.tooltip",function(t){e.isActive||(e.timeout=setTimeout(function(){e.show()}
733,e.options.hoverDelay))}).on("mouseleave.zf.tooltip",Object(a.ignoreMousedisappear)(function(t){clearTimeout(e.timeout),(!n||e.isClick&&!e.options.clickOpen)&&e.hide()})),this.options.clickOpen?this.$element.on("mousedown.zf.tooltip",function(t){t.stopImmediatePropagation(),e.isClick||(e.isClick=!0,!e.options.disableHover&&e.$element.attr("tabindex")||e.isActive||e.show())}):this.$element.on("mousedown.zf.tooltip",function(t){t.stopImmediatePropagation(),e.isClick=!0}),this.options.disableForTouch||this.$element.on("tap.zf.tooltip touchend.zf.tooltip",function(t){e.isActive?e.hide():e.show()}),this.$element.on({"close.zf.trigger":this.hide.bind(this)}),this.$element.on("focus.zf.tooltip",function(t){if(n=!0,e.isClick)return e.options.clickOpen||(n=!1),!1;e.show()}).on("focusout.zf.tooltip",function(t){n=!1,e.isClick=!1,e.hide()}).on("resizeme.zf.trigger",function(){e.isActive&&e._setPosition()})}},{key:"toggle",value:function(){this.isActive?this.hide():this.show()}},{key:"_destroy",value:function(){this.$element.attr("title",this.template.text()).off(".zf.trigger .zf.tooltip").removeClass(this.options.triggerClass).removeClass("top right left bottom").removeAttr("aria-describedby data-disable-hover data-resize data-toggle data-tooltip data-yeti-box"),this.template.remove()}}])&&c(e.prototype,i),o&&c(e,o),n}();m.defaults={disableForTouch:!1,hoverDelay:200,fadeInDuration:150,fadeOutDuration:150,disableHover:!1,templateClasses:"",tooltipClass:"tooltip",triggerClass:"has-tip",showOn:"small",template:"",tipText:"",touchCloseText:"Tap to close.",clickOpen:!0,position:"auto",alignment:"auto",allowOverlap:!1,allowBottomOverlap:!1,vOffset:0,hOffset:0,tooltipHeight:14,tooltipWidth:12,allowHtml:!1}},
733"./js/foundation.util.box.js":function(t,e,n){"use strict";n.r(e),n.d(e,"Box",function(){return i});var a=n("./js/foundation.core.utils.js"),i={ImNotTouchingYou:function(t,e,n,i,o){return 0===s(t,e,n,i,o)},OverlapArea:s,GetDimensions:d,GetOffsets:function(t,e,n,i,o,s){switch(console.log("NOTE: GetOffsets is deprecated in favor of GetExplicitOffsets and will be removed in 6.5"),n){case"top":return Object(a.rtl)()?r(t,e,"top","left",i,o,s):r(t,e,"top","right",i,o,s);case"bottom":return Object(a.rtl)()?r(t,e,"bottom","left",i,o,s):r(t,e,"bottom","right",i,o,s);case"center top":return r(t,e,"top","center",i,o,s);case"center bottom":return r(t,e,"bottom","center",i,o,s);case"center left":return r(t,e,"left","center",i,o,s);case"center right":return r(t,e,"right","center",i,o,s);case"left bottom":return r(t,e,"bottom","left",i,o,s);case"right bottom":return r(t,e,"bottom","right",i,o,s);case"center":return{left:$eleDims.windowDims.offset.left+$eleDims.windowDims.width/2-$eleDims.width/2+o,top:$eleDims.windowDims.offset.top+$eleDims.windowDims.height/2-($eleDims.height/2+i)};case"reveal":return{left:($eleDims.windowDims.width-$eleDims.width)/2+o,top:$eleDims.windowDims.offset.top+i};case"reveal full":return{left:$eleDims.windowDims.offset.left,top:$eleDims.windowDims.offset.top};default:return{left:Object(a.rtl)()?$anchorDims.offset.left-$eleDims.width+$anchorDims.width-o:$anchorDims.offset.left+o,top:$anchorDims.offset.top+$anchorDims.height+i}}},GetExplicitOffsets:r};function s(t,e,n,i,o){var s,a,r,l,u=d(t);if(e){var c=d(e);a=c.height+c.offset.top-(u.offset.top+u.height),s=u.offset.top-c.offset.top,r=u.offset.left-c.offset.left,l=c.width+c.offset.left-(u.offset.left+u.width)}else a=u.windowDims.height+u.windowDims.offset.top-(u.offset.top+u.height),s=u.offset.top-u.windowDims.offset.top,r=u.offset.left-u.windowDims.offset.left,l=u.windowDims.width-(u.offset.left+u.width);return a=o?0:Math.min(a,0),s=Math.min(s,0),r=Math.min(r,0),l=Math.min(l,0),n?r+l:i?s+a:Math.sqrt(s*s+a*a+r*r+l*l)}function d(t){if((t=t.length?t[0]:t)===window||t===document)throw new Error("I'm sorry, Dave. I'm afraid I can't do that.");var e=t.getBoundingClientRect(),n=t.parentNode.getBoundingClientRect(),i=document.body.getBoundingClientRect(),o=window.pageYOffset,s=window.pageXOffset;return{width:e.width,height:e.height,offset:{top:e.top+o,left:e.left+s},parentDims:{width:n.width,height:n.height,offset:{top:n.top+o,left:n.left+s}},windowDims:{width:i.width,height:i.height,offset:{top:o,left:s}}}}function r(t,e,n,i,o,s,a){var r,l,u=d(t),c=e?d(e):null;switch(n){case"top":r=c.offset.top-(u.height+o);break;case"bottom":r=c.offset.top+c.height+o;break;case"left":l=c.offset.left-(u.width+s);break;case"right":l=c.offset.left+c.width+s}switch(n){case"top":case"bottom":switch(i){case"left":l=c.offset.left+s;break;case"right":l=c.offset.left-u.width+c.width-s;break;case"center":l=a?s:c.offset.left+c.width/2-u.width/2+s}break;case"right":case"left":switch(i){case"bottom":r=c.offset.top-o+c.height-u.height;break;case"top":r=c.offset.top+o;break;case"center":r=c.offset.top+o+c.height/2-u.height/2}}return{top:r,left:l}}},
733"./js/foundation.util.imageLoader.js":function(t,e,n){"use strict";n.r(e),n.d(e,"onImagesLoaded",function(){return s});var i=n("jquery"),o=n.n(i);function s(t,e){var n=t.length;function i(){0===--n&&e()}0===n&&e(),t.each(function(){if(this.complete&&void 0!==this.naturalWidth)i();else{var t=new Image,n="load.zf.images error.zf.images";o()(t).one(n,function t(e){o()(this).off(n,t),i()}),t.src=o()(this).attr("src")}})}},
733"./js/foundation.util.keyboard.js":function(t,e,n){"use strict";n.r(e),n.d(e,"Keyboard",function(){return c});var i=n("jquery"),r=n.n(i),l=n("./js/foundation.core.utils.js"),o={9:"TAB",13:"ENTER",27:"ESCAPE",32:"SPACE",35:"END",36:"HOME",37:"ARROW_LEFT",38:"ARROW_UP",39:"ARROW_RIGHT",40:"ARROW_DOWN"},u={};function s(t){return!!t&&t.find("a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, *[tabindex], *[contenteditable]").filter(function(){return!(!r()(this).is(":visible")||r()(this).attr("tabindex")<0)})}function a(t){var e=o[t.which||t.keyCode]||String.fromCharCode(t.which).toUpperCase();return e=e.replace(/\W+/,""),t.shiftKey&&(e="SHIFT_".concat(e)),t.ctrlKey&&(e="CTRL_".concat(e)),t.altKey&&(e="ALT_".concat(e)),e=e.replace(/_$/,"")}var c={keys:function(t){var e={};for(var n in t)e[t[n]]=t[n];return e}(o),parseKey:a,handleKey:function(t,e,n){var i,o=u[e],s=this.parseKey(t);if(!o)return console.warn("Component not defined!");if((i=n[(void 0===o.ltr?o:Object(l.rtl)()?r.a.extend({},o.ltr,o.rtl):r.a.extend({},o.rtl,o.ltr))[s]])&&"function"==typeof i){var a=i.apply();(n.handled||"function"==typeof n.handled)&&n.handled(a)}else(n.unhandled||"function"==typeof n.unhandled)&&n.unhandled()},findFocusable:s,register:function(t,e){u[t]=e},trapFocus:function(t){var e=s(t),n=e.eq(0),i=e.eq(-1);t.on("keydown.zf.trapfocus",function(t){t.target===i[0]&&"TAB"===a(t)?(t.preventDefault(),n.focus()):t.target===n[0]&&"SHIFT_TAB"===a(t)&&(t.preventDefault(),i.focus())})},releaseFocus:function(t){t.off("keydown.zf.trapfocus")}}},
733"./js/foundation.util.mediaQuery.js":function(t,e,n){"use strict";n.r(e),n.d(e,"MediaQuery",function(){return a});var i=n("jquery"),s=n.n(i);function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}window.matchMedia||(window.matchMedia=function(){var e=window.styleMedia||window.media;if(!e){var n,i=document.createElement("style"),t=document.getElementsByTagName("script")[0];i.type="text/css",i.id="matchmediajs-test",t?t.parentNode.insertBefore(i,t):document.head.appendChild(i),n="getComputedStyle"in window&&window.getComputedStyle(i,null)||i.currentStyle,e={matchMedium:function(t){var e="@media "+t+"{ #matchmediajs-test { width: 1px; } }";return i.styleSheet?i.styleSheet.cssText=e:i.textContent=e,"1px"===n.width}}}return function(t){return{matches:e.matchMedium(t||"all"),media:t||"all"}}}());var a={queries:[],current:"",_init:function(){s()("meta.foundation-mq").length||s()('<meta class="foundation-mq">').appendTo(document.head);var t,e,n,i=s()(".foundation-mq").css("font-family");for(var o in n={},t="string"==typeof(e=i)&&(e=e.trim().slice(1,-1))?n=e.split("&").reduce(function(t,e){var n=e.replace(/\+/g," ").split("="),i=n[0],o=n[1];return i=decodeURIComponent(i),o=void 0===o?null:decodeURIComponent(o),t.hasOwnProperty(i)?Array.isArray(t[i])?t[i].push(o):t[i]=[t[i],o]:t[i]=o,t},{}):n)t.hasOwnProperty(o)&&this.queries.push({name:o,value:"only screen and (min-width: ".concat(t[o],")")});this.current=this._getCurrentSize(),this._watcher()},atLeast:function(t){var e=this.get(t);return!!e&&window.matchMedia(e).matches},is:function(t){return 1<(t=t.trim().split(" ")).length&&"only"===t[1]?t[0]===this._getCurrentSize():this.atLeast(t[0])},get:function(t){for(var e in this.queries)if(this.queries.hasOwnProperty(e)){var n=this.queries[e];if(t===n.name)return n.value}return null},_getCurrentSize:function(){for(var t,e=0;e<this.queries.length;e++){var n=this.queries[e];window.matchMedia(n.value).matches&&(t=n)}return"object"===o(t)?t.name:t},_watcher:function(){var n=this;s()(window).off("resize.zf.mediaquery").on("resize.zf.mediaquery",function(){var t=n._getCurrentSize(),e=n.current;t!==e&&(n.current=t,s()(window).trigger("changed.zf.mediaquery",[t,e]))})}}},
733"./js/foundation.util.motion.js":function(t,e,n){"use strict";n.r(e),n.d(e,"Move",function(){return s}),n.d(e,"Motion",function(){return o});var i=n("jquery"),r=n.n(i),l=n("./js/foundation.core.utils.js"),u=["mui-enter","mui-leave"],c=["mui-enter-active","mui-leave-active"],o={animateIn:function(t,e,n){a(!0,t,e,n)},animateOut:function(t,e,n){a(!1,t,e,n)}};function s(n,i,o){var s,a,r=null;if(0===n)return o.apply(i),void i.trigger("finished.zf.animate",[i]).triggerHandler("finished.zf.animate",[i]);s=window.requestAnimationFrame(function t(e){r||(r=e),a=e-r,o.apply(i),a<n?s=window.requestAnimationFrame(t,i):(window.cancelAnimationFrame(s),i.trigger("finished.zf.animate",[i]).triggerHandler("finished.zf.animate",[i]))})}function a(t,e,n,i){if((e=r()(e).eq(0)).length){var o=t?u[0]:u[1],s=t?c[0]:c[1];a(),e.addClass(n).css("transition","none"),requestAnimationFrame(function(){e.addClass(o),t&&e.show()}),requestAnimationFrame(function(){e[0].offsetWidth,e.css("transition","").addClass(s)}),e.one(Object(l.transitionend)(e),function(){t||e.hide();a(),i&&i.apply(e)})}function a(){e[0].style.transitionDuration=0,e.removeClass("".concat(o," ").concat(s," ").concat(n))}}},
733"./js/foundation.util.nest.js":function(t,e,n){"use strict";n.r(e),n.d(e,"Nest",function(){return o});var i=n("jquery"),r=n.n(i),o={Feather:function(t){var n=1<arguments.length&&void 0!==arguments[1]?arguments[1]:"zf";t.attr("role","menubar");var e=t.find("li").attr({role:"menuitem"}),i="is-".concat(n,"-submenu"),o="".concat(i,"-item"),s="is-".concat(n,"-submenu-parent"),a="accordion"!==n;e.each(function(){var t=r()(this),e=t.children("ul");e.length&&(t.addClass(s),e.addClass("submenu ".concat(i)).attr({"data-submenu":""}),a&&(t.attr({"aria-haspopup":!0,"aria-label":t.children("a:first").text()}),"drilldown"===n&&t.attr({"aria-expanded":!1})),e.addClass("submenu ".concat(i)).attr({"data-submenu":"",role:"menubar"}),"drilldown"===n&&e.attr({"aria-hidden":!0})),t.parent("[data-submenu]").length&&t.addClass("is-submenu-item ".concat(o))})},Burn:function(t,e){var n="is-".concat(e,"-submenu"),i="".concat(n,"-item"),o="is-".concat(e,"-submenu-parent");t.find(">li, > li > ul, .menu, .menu > li, [data-submenu] > li").removeClass("".concat(n," ").concat(i," ").concat(o," is-submenu-item submenu is-active")).removeAttr("data-submenu").css("display","")}}},
vendor: 639 bytes, line 733
733"./js/foundation.util.timer.js":function(t,e,n){"use strict";n.r(e),n.d(e,"Timer",function(){return i});n("jquery");function i(e,t,n){var i,o,s=this,a=t.duration,r=Object.keys(e.data())[0]||"timer",l=-1;this.isPaused=!1,this.restart=function(){l=-1,clearTimeout(o),this.start()},this.start=function(){this.isPaused=!1,clearTimeout(o),l=l<=0?a:l,e.data("paused",!1),i=Date.now(),o=setTimeout(function(){t.infinite&&s.restart(),n&&"function"==typeof n&&n()},l),e.trigger("timerstart.zf.".concat(r))},this.pause=function(){this.isPaused=!0,clearTimeout(o),e.data("paused",!0);var t=Date.now();l-=t-i,e.trigger("timerpaused.zf.".concat(r))}}},
733"./js/foundation.util.touch.js":function(t,e,n){"use strict";n.r(e),n.d(e,"Touch",function(){return c});var i=n("jquery"),o=n.n(i);function s(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}var a,r,l,u,c={},d=!1,h=!1;function f(t){if(this.removeEventListener("touchmove",p),this.removeEventListener("touchend",f),!h){var e=o.a.Event("tap",u||t);o()(this).trigger(e)}u=null,h=d=!1}function p(t){if(o.a.spotSwipe.preventDefault&&t.preventDefault(),d){var e,n=t.touches[0].pageX,i=(t.touches[0].pageY,a-n);h=!0,l=(new Date).getTime()-r,Math.abs(i)>=o.a.spotSwipe.moveThreshold&&l<=o.a.spotSwipe.timeThreshold&&(e=0<i?"left":"right"),e&&(t.preventDefault(),f.apply(this,arguments),o()(this).trigger(o.a.Event("swipe",t),e).trigger(o.a.Event("swipe".concat(e),t)))}}function m(t){1==t.touches.length&&(a=t.touches[0].pageX,t.touches[0].pageY,u=t,h=!(d=!0),r=(new Date).getTime(),this.addEventListener("touchmove",p,!1),this.addEventListener("touchend",f,!1))}function g(){this.addEventListener&&this.addEventListener("touchstart",m,!1)}var v=function(){function e(t){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),this.version="1.0.0",this.enabled="ontouchstart"in document.documentElement,this.preventDefault=!1,this.moveThreshold=75,this.timeThreshold=200,this.$=t,this._init()}var t,n,i;return t=e,(n=[{key:"_init",value:function(){var t=this.$;t.event.special.swipe={setup:g},t.event.special.tap={setup:g},t.each(["left","up","down","right"],function(){t.event.special["swipe".concat(this)]={setup:function(){t(this).on("swipe",t.noop)}}})}}])&&s(t.prototype,n),i&&s(t,i),e}();c.setupSpotSwipe=function(t){t.spotSwipe=new v(t)},c.setupTouchHandler=function(i){i.fn.addTouch=function(){this.each(function(t,e){i(e).bind("touchstart touchmove touchend touchcancel",function(t){n(t)})});var n=function(t){var e,n=t.changedTouches[0],i={touchstart:"mousedown",touchmove:"mousemove",touchend:"mouseup"}[t.type];"MouseEvent"in window&&"function"==typeof window.MouseEvent?e=new window.MouseEvent(i,{bubbles:!0,cancelable:!0,screenX:n.screenX,screenY:n.screenY,clientX:n.clientX,clientY:n.clientY}):(e=document.createEvent("MouseEvent")).initMouseEvent(i,!0,!0,window,1,n.screenX,n.screenY,n.clientX,n.clientY,!1,!1,!1,!1,0,null),n.target.dispatchEvent(e)}}},c.init=function(t){void 0===t.spotSwipe&&(c.setupSpotSwipe(t),c.setupTouchHandler(t))}},
733"./js/foundation.util.triggers.js":function(t,e,n){"use strict";n.r(e),n.d(e,"Triggers",function(){return c});var i=n("jquery"),s=n.n(i),o=n("./js/foundation.core.utils.js"),a=n("./js/foundation.util.motion.js");function r(t){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}var l=function(){for(var t=["WebKit","Moz","O","Ms",""],e=0;e<t.length;e++)if("".concat(t[e],"MutationObserver")in window)return window["".concat(t[e],"MutationObserver")];return!1}(),u=function(e,n){e.data(n).split(" ").forEach(function(t){s()("#".concat(t))["close"===n?"trigger":"triggerHandler"]("".concat(n,".zf.trigger"),[e])})},c={Listeners:{Basic:{},Global:{}},Initializers:{}};function d(e,t,n){var i,o=Array.prototype.slice.call(arguments,3);s()(window).off(t).on(t,function(t){i&&clearTimeout(i),i=setTimeout(function(){n.apply(null,o)},e||10)})}c.Listeners.Basic={openListener:function(){u(s()(this),"open")},closeListener:function(){s()(this).data("close")?u(s()(this),"close"):s()(this).trigger("close.zf.trigger")},toggleListener:function(){s()(this).data("toggle")?u(s()(this),"toggle"):s()(this).trigger("toggle.zf.trigger")},closeableListener:function(t){t.stopPropagation();var e=s()(this).data("closable");""!==e?a.Motion.animateOut(s()(this),e,function(){s()(this).trigger("closed.zf")}):s()(this).fadeOut().trigger("closed.zf")},toggleFocusListener:function(){var t=s()(this).data("toggle-focus");s()("#".concat(t)).triggerHandler("toggle.zf.trigger",[s()(this)])}},c.Initializers.addOpenListener=function(t){t.off("click.zf.trigger",c.Listeners.Basic.openListener),t.on("click.zf.trigger","[data-open]",c.Listeners.Basic.openListener)},c.Initializers.addCloseListener=function(t){t.off("click.zf.trigger",c.Listeners.Basic.closeListener),t.on("click.zf.trigger","[data-close]",c.Listeners.Basic.closeListener)},c.Initializers.addToggleListener=function(t){t.off("click.zf.trigger",c.Listeners.Basic.toggleListener),t.on("click.zf.trigger","[data-toggle]",c.Listeners.Basic.toggleListener)},c.Initializers.addCloseableListener=function(t){t.off("close.zf.trigger",c.Listeners.Basic.closeableListener),t.on("close.zf.trigger","[data-closeable], [data-closable]",c.Listeners.Basic.closeableListener)},c.Initializers.addToggleFocusListener=function(t){t.off("focus.zf.trigger blur.zf.trigger",c.Listeners.Basic.toggleFocusListener),t.on("focus.zf.trigger blur.zf.trigger","[data-toggle-focus]",c.Listeners.Basic.toggleFocusListener)},c.Listeners.Global={resizeListener:function(t){l||t.each(function(){s()(this).triggerHandler("resizeme.zf.trigger")}),t.attr("data-events","resize")},scrollListener:function(t){l||t.each(function(){s()(this).triggerHandler("scrollme.zf.trigger")}),t.attr("data-events","scroll")},closeMeListener:function(t,e){var n=t.namespace.split(".")[0];s()("[data-".concat(n,"]")).not('[data-yeti-box="'.concat(e,'"]')).each(function(){var t=s()(this);t.triggerHandler("close.zf.trigger",[t])})}},c.Initializers.addClosemeListener=function(t){var e=s()("[data-yeti-box]"),n=["dropdown","tooltip","reveal"];if(t&&("string"==typeof t?n.push(t):"object"===r(t)&&"string"==typeof t[0]?n.concat(t):console.error("Plugin names must be strings")),e.length){var i=n.map(function(t){return"closeme.zf.".concat(t)}).join(" ");s()(window).off(i).on(i,c.Listeners.Global.closeMeListener)}},c.Initializers.addResizeListener=function(t){var e=s()("[data-resize]");e.length&&d(t,"resize.zf.trigger",c.Listeners.Global.resizeListener,e)},c.Initializers.addScrollListener=function(t){var e=s()("[data-scroll]");e.length&&d(t,"scroll.zf.trigger",c.Listeners.Global.scrollListener,e)},c.Initializers.addMutationEventsListener=function(t){if(!l)return!1;var e=t.find("[data-resize], [data-scroll], [data-mutate]"),n=function(t){var e=s()(t[0].target);switch(t[0].type){case"attributes":"scroll"===e.attr("data-events")&&"data-events"===t[0].attributeName&&e.triggerHandler("scrollme.zf.trigger",[e,window.pageYOffset]),"resize"===e.attr("data-events")&&"data-events"===t[0].attributeName&&e.triggerHandler("resizeme.zf.trigger",[e]),"style"===t[0].attributeName&&(e.closest("[data-mutate]").attr("data-events","mutate"),e.closest("[data-mutate]").triggerHandler("mutateme.zf.trigger",[e.closest("[data-mutate]")]));break;case"childList":e.closest("[data-mutate]").attr("data-events","mutate"),e.closest("[data-mutate]").triggerHandler("mutateme.zf.trigger",[e.closest("[data-mutate]")]);break;default:return!1}};if(e.length)for(var i=0;i<=e.length-1;i++){new l(n).observe(e[i],{attributes:!0,childList:!0,characterData:!1,subtree:!0,attributeFilter:["data-events","style"]})}}
733,c.Initializers.addSimpleListeners=function(){var t=s()(document);c.Initializers.addOpenListener(t),c.Initializers.addCloseListener(t),c.Initializers.addToggleListener(t),c.Initializers.addCloseableListener(t),c.Initializers.addToggleFocusListener(t)},c.Initializers.addGlobalListeners=function(){var t=s()(document);c.Initializers.addMutationEventsListener(t),c.Initializers.addResizeListener(),c.Initializers.addScrollListener(),c.Initializers.addClosemeListener()},c.init=function(t,e){Object(o.onLoad)(t(window),function(){!0!==t.triggersInitialized&&(c.Initializers.addSimpleListeners(),c.Initializers.addGlobalListeners(),t.triggersInitialized=!0)}),e&&(e.Triggers=c,e.IHearYou=c.Initializers.addGlobalListeners)}}
733,0:function(t,e,n){t.exports=n("./js/entries/foundation.js")},jquery:function(t,e){t.exports=n}})});(function($){$.fn.areYouSure=function(options){var settings=$.extend({'message':'You have unsaved changes!','dirtyClass':'dirty','change':null,'silent':false,'addRemoveFieldsMarksDirty':false,'fieldEvents':'change keyup propertychange input','fieldSelector':":input:not(input[type=submit]):not(input[type=button])"},options);var getValue=function($field){if($field.hasClass('ays-ignore')||$field.hasClass('aysIgnore')||$field.attr('data-ays-ignore')||$field.attr('name')===undefined){return null;}
734if($field.is(':disabled')){return'ays-disabled';}
735var val;var type=$field.attr('type');if($field.is('select')){type='select';}
736switch(type){case'checkbox':case'radio':val=$field.is(':checked');break;case'select':val='';$field.find('option').each(function(o){var $option=$(this);if($option.is(':selected')){val+=$option.val();}});break;default:val=$field.val();}
737return val;};var storeOrigValue=function($field){$field.data('ays-orig',getValue($field));};var checkForm=function(evt){var isFieldDirty=function($field){var origValue=$field.data('ays-orig');if(undefined===origValue){return false;}
738return(getValue($field)!=origValue);};var $form=($(this).is('form'))?$(this):$(this).parents('form');if(isFieldDirty($(evt.target))){setDirtyStatus($form,true);return;}
739$fields=$form.find(settings.fieldSelector);if(settings.addRemoveFieldsMarksDirty){var origCount=$form.data("ays-orig-field-count");if(origCount!=$fields.length){setDirtyStatus($form,true);return;}}
740var isDirty=false;$fields.each(function(){$field=$(this);if(isFieldDirty($field)){isDirty=true;return false;}});setDirtyStatus($form,isDirty);};var initForm=function($form){var fields=$form.find(settings.fieldSelector);$(fields).each(function(){storeOrigValue($(this));});$(fields).unbind(settings.fieldEvents,checkForm);$(fields).bind(settings.fieldEvents,checkForm);$form.data("ays-orig-field-count",$(fields).length);setDirtyStatus($form,false);};var setDirtyStatus=function($form,isDirty){var changed=isDirty!=$form.hasClass(settings.dirtyClass);$form.toggleClass(settings.dirtyClass,isDirty);if(changed){if(settings.change)settings.change.call($form,$form);if(isDirty)$form.trigger('dirty.areYouSure',[$form]);if(!isDirty)$form.trigger('clean.areYouSure',[$form]);$form.trigger('change.areYouSure',[$form]);}};var rescan=function(){var $form=$(this);var fields=$form.find(settings.fieldSelector);$(fields).each(function(){var $field=$(this);if(!$field.data('ays-orig')){storeOrigValue($field);$field.bind(settings.fieldEvents,checkForm);}});$form.trigger('checkform.areYouSure');};var reinitialize=function(){initForm($(this));}
741if(!settings.silent&&!window.aysUnloadSet){window.aysUnloadSet=true;$(window).bind('beforeunload',function(){$dirtyForms=$("form").filter('.'+settings.dirtyClass);if($dirtyForms.length==0){return;}
742if(navigator.userAgent.toLowerCase().match(/msie|chrome/)){if(window.aysHasPrompted){return;}
743window.aysHasPrompted=true;window.setTimeout(function(){window.aysHasPrompted=false;},900);}
744return settings.message;});}
745return this.each(function(elem){if(!$(this).is('form')){return;}
746var $form=$(this);$form.submit(function(){$form.removeClass(settings.dirtyClass);});$form.bind('reset',function(){setDirtyStatus($form,false);});$form.bind('rescan.areYouSure',rescan);$form.bind('reinitialize.areYouSure',reinitialize);$form.bind('checkform.areYouSure',checkForm);initForm($form);});};})(jQuery);(function(){window.$clamp=function(c,d){function s(a,b){n.getComputedStyle||(n.getComputedStyle=function(a,b){this.el=a;this.getPropertyValue=function(b){var c=/(\-([a-z]){1})/g;"float"==b&&(b="styleFloat");c.test(b)&&(b=b.replace(c,function(a,b,c){return c.toUpperCase()}));return a.currentStyle&&a.currentStyle[b]?a.currentStyle[b]:null};return this});return n.getComputedStyle(a,null).getPropertyValue(b)}function t(a){a=a||c.clientHeight;var b=u(c);return Math.max(Math.floor(a/b),0)}function x(a){return u(c)*a}function u(a){var b=s(a,"line-height");"normal"==b&&(b=1.2*parseInt(s(a,"font-size")));return parseInt(b)}function l(a){if(a.lastChild.children&&0<a.lastChild.children.length)return l(Array.prototype.slice.call(a.children).pop());if(a.lastChild&&a.lastChild.nodeValue&&""!=a.lastChild.nodeValue&&a.lastChild.nodeValue!=b.truncationChar)return a.lastChild;a.lastChild.parentNode.removeChild(a.lastChild);return l(c)}function p(a,d){if(d){var e=a.nodeValue.replace(b.truncationChar,"");f||(h=0<k.length?k.shift():"",f=e.split(h));1<f.length?(q=f.pop(),r(a,f.join(h))):f=null;
746m&&(a.nodeValue=a.nodeValue.replace(b.truncationChar,""),c.innerHTML=a.nodeValue+" "+m.innerHTML+b.truncationChar);if(f){if(c.clientHeight<=d)if(0<=k.length&&""!=h)r(a,f.join(h)+h+q),f=null;else return c.innerHTML}else""==h&&(r(a,""),a=l(c),k=b.splitOnChars.slice(0),h=k[0],q=f=null);if(b.animate)setTimeout(function(){p(a,d)},!0===b.animate?10:b.animate);else return p(a,d)}}function r(a,c){a.nodeValue=c+b.truncationChar}d=d||{};var n=window,b={clamp:d.clamp||2,useNativeClamp:"undefined"!=typeof d.useNativeClamp?d.useNativeClamp:!0,splitOnChars:d.splitOnChars||[".","-","\u2013","\u2014"," "],animate:d.animate||!1,truncationChar:d.truncationChar||"\u2026",truncationHTML:d.truncationHTML},e=c.style,y=c.innerHTML,z="undefined"!=typeof c.style.webkitLineClamp,g=b.clamp,v=g.indexOf&&(-1<g.indexOf("px")||-1<g.indexOf("em")),m;b.truncationHTML&&(m=document.createElement("span"),m.innerHTML=b.truncationHTML);var k=b.splitOnChars.slice(0),h=k[0],f,q;"auto"==g?g=t():v&&(g=t(parseInt(g)));var w;z&&b.useNativeClamp?(e.overflow="hidden",e.textOverflow="ellipsis",e.webkitBoxOrient="vertical",e.display="-webkit-box",e.webkitLineClamp=g,v&&(e.height=b.clamp+"px")):(e=x(g),e<=c.clientHeight&&(w=p(l(c),e)));return{original:y,clamped:w}}})();var EasyAutocomplete=(function(scope){scope.Configuration=function Configuration(options){var defaults={data:"list-required",url:"list-required",dataType:"json",listLocation:function(data){return data;},xmlElementName:"",getValue:function(element){return element;},autocompleteOff:true,placeholder:false,ajaxCallback:function(){},matchResponseProperty:false,list:{sort:{enabled:false,method:function(a,b){a=defaults.getValue(a);b=defaults.getValue(b);if(a<b){return-1;}
747if(a>b){return 1;}
748return 0;}},maxNumberOfElements:6,hideOnEmptyPhrase:true,match:{enabled:false,caseSensitive:false,method:function(element,phrase){if(element.search(phrase)>-1){return true;}else{return false;}}},showAnimation:{type:"normal",time:400,callback:function(){}},hideAnimation:{type:"normal",time:400,callback:function(){}},onClickEvent:function(){},onSelectItemEvent:function(){},onLoadEvent:function(){},onChooseEvent:function(){},onKeyEnterEvent:function(){},onMouseOverEvent:function(){},onMouseOutEvent:function(){},onShowListEvent:function(){},onHideListEvent:function(){}},highlightPhrase:true,theme:"",cssClasses:"",minCharNumber:0,requestDelay:0,adjustWidth:true,ajaxSettings:{},preparePostData:function(data,inputPhrase){return data;},loggerEnabled:true,template:"",categoriesAssigned:false,categories:[{maxNumberOfElements:4}]};var externalObjects=["ajaxSettings","template"];this.get=function(propertyName){return defaults[propertyName];};this.equals=function(name,value){if(isAssigned(name)){if(defaults[name]===value){return true;}}
749return false;};this.checkDataUrlProperties=function(){if(defaults.url==="list-required"&&defaults.data==="list-required"){return false;}
750return true;};this.checkRequiredProperties=function(){for(var propertyName in defaults){if(defaults[propertyName]==="required"){logger.error("Option "+propertyName+" must be defined");return false;}}
751return true;};this.printPropertiesThatDoesntExist=function(consol,optionsToCheck){printPropertiesThatDoesntExist(consol,optionsToCheck);};prepareDefaults();mergeOptions();if(defaults.loggerEnabled===true){printPropertiesThatDoesntExist(console,options);}
752addAjaxSettings();processAfterMerge();function prepareDefaults(){if(options.dataType==="xml"){if(!options.getValue){options.getValue=function(element){return $(element).text();};}
753if(!options.list){options.list={};}
754if(!options.list.sort){options.list.sort={};}
755options.list.sort.method=function(a,b){a=options.getValue(a);b=options.getValue(b);if(a<b){return-1;}
756if(a>b){return 1;}
757return 0;};if(!options.list.match){options.list.match={};}
758options.list.match.method=function(element,phrase){if(element.search(phrase)>-1){return true;}else{return false;}};}
759if(options.categories!==undefined&&options.categories instanceof Array){var categories=[];for(var i=0,length=options.categories.length;i<length;i+=1){var category=options.categories[i];
vendor: 23,562 bytes, lines 759-897
759for(var property in defaults.categories[0]){if(category[property]===undefined){category[property]=defaults.categories[0][property];}}
760categories.push(category);}
761options.categories=categories;}}
762function mergeOptions(){defaults=mergeObjects(defaults,options);function mergeObjects(source,target){var mergedObject=source||{};for(var propertyName in source){if(target[propertyName]!==undefined&&target[propertyName]!==null){if(typeof target[propertyName]!=="object"||target[propertyName]instanceof Array){mergedObject[propertyName]=target[propertyName];}else{mergeObjects(source[propertyName],target[propertyName]);}}}
763if(target.data!==undefined&&target.data!==null&&typeof target.data==="object"){mergedObject.data=target.data;}
764return mergedObject;}}
765function processAfterMerge(){if(defaults.url!=="list-required"&&typeof defaults.url!=="function"){var defaultUrl=defaults.url;defaults.url=function(){return defaultUrl;};}
766if(defaults.ajaxSettings.url!==undefined&&typeof defaults.ajaxSettings.url!=="function"){var defaultUrl=defaults.ajaxSettings.url;defaults.ajaxSettings.url=function(){return defaultUrl;};}
767if(typeof defaults.listLocation==="string"){var defaultlistLocation=defaults.listLocation;if(defaults.dataType.toUpperCase()==="XML"){defaults.listLocation=function(data){return $(data).find(defaultlistLocation);};}else{defaults.listLocation=function(data){return data[defaultlistLocation];};}}
768if(typeof defaults.getValue==="string"){var defaultsGetValue=defaults.getValue;defaults.getValue=function(element){return element[defaultsGetValue];};}
769if(options.categories!==undefined){defaults.categoriesAssigned=true;}}
770function addAjaxSettings(){if(options.ajaxSettings!==undefined&&typeof options.ajaxSettings==="object"){defaults.ajaxSettings=options.ajaxSettings;}else{defaults.ajaxSettings={};}}
771function isAssigned(name){if(defaults[name]!==undefined&&defaults[name]!==null){return true;}else{return false;}}
772function printPropertiesThatDoesntExist(consol,optionsToCheck){checkPropertiesIfExist(defaults,optionsToCheck);function checkPropertiesIfExist(source,target){for(var property in target){if(source[property]===undefined){consol.log("Property '"+property+"' does not exist in EasyAutocomplete options API.");}
773if(typeof source[property]==="object"&&$.inArray(property,externalObjects)===-1){checkPropertiesIfExist(source[property],target[property]);}}}}};return scope;})(EasyAutocomplete||{});var EasyAutocomplete=(function(scope){scope.Logger=function Logger(){this.error=function(message){console.log("ERROR: "+message);};this.warning=function(message){console.log("WARNING: "+message);};};return scope;})(EasyAutocomplete||{});var EasyAutocomplete=(function(scope){scope.Constans=function Constans(){var constants={CONTAINER_CLASS:"easy-autocomplete-container",CONTAINER_ID:"eac-container-",WRAPPER_CSS_CLASS:"easy-autocomplete"};this.getValue=function(propertyName){return constants[propertyName];};};return scope;})(EasyAutocomplete||{});var EasyAutocomplete=(function(scope){scope.ListBuilderService=function ListBuilderService(configuration,proccessResponseData){this.init=function(data){var listBuilder=[],builder={};builder.data=configuration.get("listLocation")(data);builder.getValue=configuration.get("getValue");builder.maxListSize=configuration.get("list").maxNumberOfElements;listBuilder.push(builder);return listBuilder;};this.updateCategories=function(listBuilder,data){if(configuration.get("categoriesAssigned")){listBuilder=[];for(var i=0;i<configuration.get("categories").length;i+=1){var builder=convertToListBuilder(configuration.get("categories")[i],data);listBuilder.push(builder);}}
774return listBuilder;};this.convertXml=function(listBuilder){if(configuration.get("dataType").toUpperCase()==="XML"){for(var i=0;i<listBuilder.length;i+=1){listBuilder[i].data=convertXmlToList(listBuilder[i]);}}
775return listBuilder;};this.processData=function(listBuilder,inputPhrase){for(var i=0,length=listBuilder.length;i<length;i+=1){listBuilder[i].data=proccessResponseData(configuration,listBuilder[i],inputPhrase);}
776return listBuilder;};this.checkIfDataExists=function(listBuilders){for(var i=0,length=listBuilders.length;i<length;i+=1){if(listBuilders[i].data!==undefined&&listBuilders[i].data instanceof Array){if(listBuilders[i].data.length>0){return true;}}}
777return false;};function convertToListBuilder(category,data){var builder={};if(configuration.get("dataType").toUpperCase()==="XML"){builder=convertXmlToListBuilder();}else{builder=convertDataToListBuilder();}
778if(category.header!==undefined){builder.header=category.header;}
779if(category.maxNumberOfElements!==undefined){builder.maxNumberOfElements=category.maxNumberOfElements;}
780if(configuration.get("list").maxNumberOfElements!==undefined){builder.maxListSize=configuration.get("list").maxNumberOfElements;}
781if(category.getValue!==undefined){if(typeof category.getValue==="string"){var defaultsGetValue=category.getValue;builder.getValue=function(element){return element[defaultsGetValue];};}else if(typeof category.getValue==="function"){builder.getValue=category.getValue;}}else{builder.getValue=configuration.get("getValue");}
782return builder;function convertXmlToListBuilder(){var builder={},listLocation;if(category.xmlElementName!==undefined){builder.xmlElementName=category.xmlElementName;}
783if(category.listLocation!==undefined){listLocation=category.listLocation;}else if(configuration.get("listLocation")!==undefined){listLocation=configuration.get("listLocation");}
784if(listLocation!==undefined){if(typeof listLocation==="string"){builder.data=$(data).find(listLocation);}else if(typeof listLocation==="function"){builder.data=listLocation(data);}}else{builder.data=data;}
785return builder;}
786function convertDataToListBuilder(){var builder={};if(category.listLocation!==undefined){if(typeof category.listLocation==="string"){builder.data=data[category.listLocation];}else if(typeof category.listLocation==="function"){builder.data=category.listLocation(data);}}else{builder.data=data;}
787return builder;}}
788function convertXmlToList(builder){var simpleList=[];if(builder.xmlElementName===undefined){builder.xmlElementName=configuration.get("xmlElementName");}
789$(builder.data).find(builder.xmlElementName).each(function(){simpleList.push(this);});return simpleList;}};return scope;})(EasyAutocomplete||{});var EasyAutocomplete=(function(scope){scope.proccess=function proccessData(config,listBuilder,phrase){scope.proccess.match=match;var list=listBuilder.data,inputPhrase=phrase;list=findMatch(list,inputPhrase);list=reduceElementsInList(list);list=sort(list);return list;function findMatch(list,phrase){var preparedList=[],value="";if(config.get("list").match.enabled){for(var i=0,length=list.length;i<length;i+=1){value=config.get("getValue")(list[i]);if(match(value,phrase)){preparedList.push(list[i]);}}}else{preparedList=list;}
790return preparedList;}
791function match(value,phrase){if(!config.get("list").match.caseSensitive){if(typeof value==="string"){value=value.toLowerCase();}
792phrase=phrase.toLowerCase();}
793if(config.get("list").match.method(value,phrase)){return true;}else{return false;}}
794function reduceElementsInList(list){if(listBuilder.maxNumberOfElements!==undefined&&list.length>listBuilder.maxNumberOfElements){list=list.slice(0,listBuilder.maxNumberOfElements);}
795return list;}
796function sort(list){if(config.get("list").sort.enabled){list.sort(config.get("list").sort.method);}
797return list;}};return scope;})(EasyAutocomplete||{});var EasyAutocomplete=(function(scope){scope.Template=function Template(options){var genericTemplates={basic:{type:"basic",method:function(element){return element;},cssClass:""},description:{type:"description",fields:{description:"description"},method:function(element){return element+" - description";},cssClass:"eac-description"},iconLeft:{type:"iconLeft",fields:{icon:""},method:function(element){return element;},cssClass:"eac-icon-left"},iconRight:{type:"iconRight",fields:{iconSrc:""},method:function(element){return element;},cssClass:"eac-icon-right"},links:{type:"links",fields:{link:""},method:function(element){return element;},cssClass:""},custom:{type:"custom",method:function(){},cssClass:""}},convertTemplateToMethod=function(template){var _fields=template.fields,buildMethod;if(template.type==="description"){buildMethod=genericTemplates.description.method;if(typeof _fields.description==="string"){buildMethod=function(elementValue,element){return elementValue+" - <span>"+element[_fields.description]+"</span>";};}else if(typeof _fields.description==="function"){buildMethod=function(elementValue,element){return elementValue+" - <span>"+_fields.description(element)+"</span>";};}
798return buildMethod;}
799if(template.type==="iconRight"){if(typeof _fields.iconSrc==="string"){buildMethod=function(elementValue,element){return elementValue+"<img class='eac-icon' src='"+element[_fields.iconSrc]+"' />";};}else if(typeof _fields.iconSrc==="function"){buildMethod=function(elementValue,element){return elementValue+"<img class='eac-icon' src='"+_fields.iconSrc(element)+"' />";};}
800return buildMethod;}
801if(template.type==="iconLeft"){if(typeof _fields.iconSrc==="string"){buildMethod=function(elementValue,element){return"<img class='eac-icon' src='"+element[_fields.iconSrc]+"' />"+elementValue;};}else if(typeof _fields.iconSrc==="function"){buildMethod=function(elementValue,element){return"<img class='eac-icon' src='"+_fields.iconSrc(element)+"' />"+elementValue;};}
802return buildMethod;}
803if(template.type==="links"){if(typeof _fields.link==="string"){buildMethod=function(elementValue,element){return"<a href='"+element[_fields.link]+"' >"+elementValue+"</a>";};}else if(typeof _fields.link==="function"){buildMethod=function(elementValue,element){return"<a href='"+_fields.link(element)+"' >"+elementValue+"</a>";};}
804return buildMethod;}
805if(template.type==="custom"){return template.method;}
806return genericTemplates.basic.method;},prepareBuildMethod=function(options){if(!options||!options.type){return genericTemplates.basic.method;}
807if(options.type&&genericTemplates[options.type]){return convertTemplateToMethod(options);}else{return genericTemplates.basic.method;}},templateClass=function(options){var emptyStringFunction=function(){return"";};if(!options||!options.type){return emptyStringFunction;}
808if(options.type&&genericTemplates[options.type]){return(function(){var _cssClass=genericTemplates[options.type].cssClass;return function(){return _cssClass;};})();}else{return emptyStringFunction;}};this.getTemplateClass=templateClass(options);this.build=prepareBuildMethod(options);};return scope;})(EasyAutocomplete||{});var EasyAutocomplete=(function(scope){scope.main=function Core($input,options){var module={name:"EasyAutocomplete",shortcut:"eac"};var consts=new scope.Constans(),config=new scope.Configuration(options),logger=new scope.Logger(),template=new scope.Template(options.template),listBuilderService=new scope.ListBuilderService(config,scope.proccess),checkParam=config.equals,$field=$input,$container="",elementsList=[],selectedElement=-1,requestDelayTimeoutId
809response=null;scope.consts=consts;this.getConstants=function(){return consts;};this.getConfiguration=function(){return config;};this.getContainer=function(){return $container;};this.getSelectedItemIndex=function(){return selectedElement;};this.getItems=function(){return elementsList;};this.getItemData=function(index){if(elementsList.length<index||elementsList[index]===undefined){return-1;}else{return elementsList[index];}};this.getSelectedItemData=function(){return this.getItemData(selectedElement);};function setResponseData(data){response=data;}
810this.getResponseData=function(){return response;}
811this.build=function(){prepareField();};this.init=function(){init();};function init(){if($field.length===0){logger.error("Input field doesn't exist.");return;}
812if(!config.checkDataUrlProperties()){logger.error("One of options variables 'data' or 'url' must be defined.");return;}
813if(!config.checkRequiredProperties()){logger.error("Will not work without mentioned properties.");return;}
814prepareField();bindEvents();}
815function prepareField(){if($field.parent().hasClass(consts.getValue("WRAPPER_CSS_CLASS"))){removeContainer();removeWrapper();}
816createWrapper();createContainer();$container=$("#"+getContainerId());if(config.get("placeholder")){$field.attr("placeholder",config.get("placeholder"));}
817function createWrapper(){var $wrapper=$("<div>"),classes=consts.getValue("WRAPPER_CSS_CLASS");if(config.get("theme")&&config.get("theme")!==""){classes+=" eac-"+config.get("theme");}
818if(config.get("cssClasses")&&config.get("cssClasses")!==""){classes+=" "+config.get("cssClasses");}
819if(template.getTemplateClass()!==""){classes+=" "+template.getTemplateClass();}
820$wrapper
821.addClass(classes);$field.wrap($wrapper);if(config.get("adjustWidth")===true){adjustWrapperWidth();}}
822function adjustWrapperWidth(){var fieldWidth=$field.outerWidth();$field.parent().css("width",fieldWidth);}
823function removeWrapper(){$field.unwrap();}
824function createContainer(){var $elements_container=$("<div>").addClass(consts.getValue("CONTAINER_CLASS"));$elements_container
825.attr("id",getContainerId())
826.prepend($("<ul>"));(function(){$elements_container
827.on("show.eac",function(){switch(config.get("list").showAnimation.type){case"slide":var animationTime=config.get("list").showAnimation.time,callback=config.get("list").showAnimation.callback;$elements_container.find("ul").slideDown(animationTime,callback);break;case"fade":var animationTime=config.get("list").showAnimation.time,callback=config.get("list").showAnimation.callback;$elements_container.find("ul").fadeIn(animationTime),callback;break;default:$elements_container.find("ul").show();break;}
828config.get("list").onShowListEvent();})
829.on("hide.eac",function(){switch(config.get("list").hideAnimation.type){case"slide":var animationTime=config.get("list").hideAnimation.time,callback=config.get("list").hideAnimation.callback;$elements_container.find("ul").slideUp(animationTime,callback);break;case"fade":var animationTime=config.get("list").hideAnimation.time,callback=config.get("list").hideAnimation.callback;$elements_container.find("ul").fadeOut(animationTime,callback);break;default:$elements_container.find("ul").hide();break;}
830config.get("list").onHideListEvent();})
831.on("selectElement.eac",function(){$elements_container.find("ul li").removeClass("selected");$elements_container.find("ul li").eq(selectedElement).addClass("selected");config.get("list").onSelectItemEvent();})
832.on("loadElements.eac",function(event,listBuilders,phrase){var $item="",$listContainer=$elements_container.find("ul");$listContainer
833.empty()
834.detach();elementsList=[];var counter=0;for(var builderIndex=0,listBuildersLength=listBuilders.length;builderIndex<listBuildersLength;builderIndex+=1){var listData=listBuilders[builderIndex].data;if(listData.length===0){continue;}
835if(listBuilders[builderIndex].header!==undefined&&listBuilders[builderIndex].header.length>0){$listContainer.append("<div class='eac-category' >"+listBuilders[builderIndex].header+"</div>");}
836for(var i=0,listDataLength=listData.length;i<listDataLength&&counter<listBuilders[builderIndex].maxListSize;i+=1){$item=$("<li><div class='eac-item'></div></li>");(function(){var j=i,itemCounter=counter,elementsValue=listBuilders[builderIndex].getValue(listData[j]);$item.find(" > div")
837.on("click",function(){$field.val(elementsValue).trigger("change");selectedElement=itemCounter;selectElement(itemCounter);config.get("list").onClickEvent();config.get("list").onChooseEvent();})
838.mouseover(function(){selectedElement=itemCounter;selectElement(itemCounter);config.get("list").onMouseOverEvent();})
839.mouseout(function(){config.get("list").onMouseOutEvent();})
840.html(template.build(highlight(elementsValue,phrase),listData[j]));})();$listContainer.append($item);elementsList.push(listData[i]);counter+=1;}}
841$elements_container.append($listContainer);config.get("list").onLoadEvent();});})();$field.after($elements_container);}
842function removeContainer(){$field.next("."+consts.getValue("CONTAINER_CLASS")).remove();}
843function highlight(string,phrase){if(config.get("highlightPhrase")&&phrase!==""){return highlightPhrase(string,phrase);}else{return string;}}
844function escapeRegExp(str){return str.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&");}
845function highlightPhrase(string,phrase){var escapedPhrase=escapeRegExp(phrase);return(string+"").replace(new RegExp("("+escapedPhrase+")","gi"),"<b>$1</b>");}}
846function getContainerId(){var elementId=$field.attr("id");elementId=consts.getValue("CONTAINER_ID")+elementId;return elementId;}
847function bindEvents(){bindAllEvents();function bindAllEvents(){if(checkParam("autocompleteOff",true)){removeAutocomplete();}
848bindFocusOut();bindKeyup();bindKeydown();bindKeypress();bindFocus();bindBlur();}
849function bindFocusOut(){$field.focusout(function(){var fieldValue=$field.val(),phrase;if(!config.get("list").match.caseSensitive){fieldValue=fieldValue.toLowerCase();}
850for(var i=0,length=elementsList.length;i<length;i+=1){phrase=config.get("getValue")(elementsList[i]);if(!config.get("list").match.caseSensitive){phrase=phrase.toLowerCase();}
851if(phrase===fieldValue){selectedElement=i;selectElement(selectedElement);return;}}});}
852function bindKeyup(){$field
853.off("keyup")
854.keyup(function(event){switch(event.keyCode){case 27:hideContainer();loseFieldFocus();break;case 38:event.preventDefault();if(elementsList.length>0&&selectedElement>0){selectedElement-=1;$field.val(config.get("getValue")(elementsList[selectedElement]));selectElement(selectedElement);}
855break;case 40:event.preventDefault();if(elementsList.length>0&&selectedElement<elementsList.length-1){selectedElement+=1;$field.val(config.get("getValue")(elementsList[selectedElement]));selectElement(selectedElement);}
856break;default:if(event.keyCode>40||event.keyCode===8){var inputPhrase=$field.val();if(!(config.get("list").hideOnEmptyPhrase===true&&event.keyCode===8&&inputPhrase==="")){if(config.get("requestDelay")>0){if(requestDelayTimeoutId!==undefined){clearTimeout(requestDelayTimeoutId);}
857requestDelayTimeoutId=setTimeout(function(){loadData(inputPhrase);},config.get("requestDelay"));}else{loadData(inputPhrase);}}else{hideContainer();}}
858break;}
859function loadData(inputPhrase){if(inputPhrase.length<config.get("minCharNumber")){return;}
860if(config.get("data")!=="list-required"){var data=config.get("data");var listBuilders=listBuilderService.init(data);listBuilders=listBuilderService.updateCategories(listBuilders,data);listBuilders=listBuilderService.processData(listBuilders,inputPhrase);loadElements(listBuilders,inputPhrase);if($field.parent().find("li").length>0){showContainer();}else{hideContainer();}}
861var settings=createAjaxSettings();if(settings.url===undefined||settings.url===""){settings.url=config.get("url");}
862if(settings.dataType===undefined||settings.dataType===""){settings.dataType=config.get("dataType");}
863if(settings.url!==undefined&&settings.url!=="list-required"){settings.url=settings.url(inputPhrase);settings.data=config.get("preparePostData")(settings.data,inputPhrase);$.ajax(settings)
864.done(function(data){var listBuilders=listBuilderService.init(data);listBuilders=listBuilderService.updateCategories(listBuilders,data);listBuilders=listBuilderService.convertXml(listBuilders);if(checkInputPhraseMatchResponse(inputPhrase,data)){listBuilders=listBuilderService.processData(listBuilders,inputPhrase);loadElements(listBuilders,inputPhrase);}
865if(listBuilderService.checkIfDataExists(listBuilders)&&$field.parent().find("li").length>0){showContainer();}else{hideContainer();}
866setResponseData(data);config.get("ajaxCallback")();})
867.fail(function(){logger.warning("Fail to load response data");})
868.always(function(){});}
869function createAjaxSettings(){var settings={},ajaxSettings=config.get("ajaxSettings")||{};for(var set in ajaxSettings){settings[set]=ajaxSettings[set];}
870return settings;}
871function checkInputPhraseMatchResponse(inputPhrase,data){if(config.get("matchResponseProperty")!==false){if(typeof config.get("matchResponseProperty")==="string"){return(data[config.get("matchResponseProperty")]===inputPhrase);}
872if(typeof config.get("matchResponseProperty")==="function"){return(config.get("matchResponseProperty")(data)===inputPhrase);}
873return true;}else{return true;}}}});}
874function bindKeydown(){$field
875.on("keydown",function(evt){evt=evt||window.event;var keyCode=evt.keyCode;if(keyCode===38){suppressKeypress=true;return false;}})
876.keydown(function(event){if(event.keyCode===13&&selectedElement>-1){$field.val(config.get("getValue")(elementsList[selectedElement]));config.get("list").onKeyEnterEvent();config.get("list").onChooseEvent();selectedElement=-1;hideContainer();event.preventDefault();}});}
877function bindKeypress(){$field
878.off("keypress");}
879function bindFocus(){$field.focus(function(){if($field.val()!==""&&elementsList.length>0){selectedElement=-1;showContainer();}});}
880function bindBlur(){$field.blur(function(){setTimeout(function(){selectedElement=-1;hideContainer();},250);});}
881function removeAutocomplete(){$field.attr("autocomplete","off");}}
882function showContainer(){$container.trigger("show.eac");}
883function hideContainer(){$container.trigger("hide.eac");}
884function selectElement(index){$container.trigger("selectElement.eac",index);}
885function loadElements(list,phrase){$container.trigger("loadElements.eac",[list,phrase]);}
886function loseFieldFocus(){$field.trigger("blur");}};scope.eacHandles=[];scope.getHandle=function(id){return scope.eacHandles[id];};scope.inputHasId=function(input){if($(input).attr("id")!==undefined&&$(input).attr("id").length>0){return true;}else{return false;}};scope.assignRandomId=function(input){var fieldId="";do{fieldId="eac-"+Math.floor(Math.random()*10000);}while($("#"+fieldId).length!==0);elementId=scope.consts.getValue("CONTAINER_ID")+fieldId;$(input).attr("id",fieldId);};scope.setHandle=function(handle,id){scope.eacHandles[id]=handle;};return scope;})(EasyAutocomplete||{});(function($){$.fn.easyAutocomplete=function(options){return this.each(function(){var $this=$(this),eacHandle=new EasyAutocomplete.main($this,options);if(!EasyAutocomplete.inputHasId($this)){EasyAutocomplete.assignRandomId($this);}
887eacHandle.init();EasyAutocomplete.setHandle(eacHandle,$this.attr("id"));});};$.fn.getSelectedItemIndex=function(){var inputId=$(this).attr("id");if(inputId!==undefined){return EasyAutocomplete.getHandle(inputId).getSelectedItemIndex();}
888return-1;};$.fn.getItems=function(){var inputId=$(this).attr("id");if(inputId!==undefined){return EasyAutocomplete.getHandle(inputId).getItems();}
889return-1;};$.fn.getItemData=function(index){var inputId=$(this).attr("id");if(inputId!==undefined&&index>-1){return EasyAutocomplete.getHandle(inputId).getItemData(index);}
890return-1;};$.fn.getResponseData=function(){var inputId=$(this).attr("id");if(inputId!==undefined){return EasyAutocomplete.getHandle(inputId).getResponseData();}
891return-1;};$.fn.getSelectedItemData=function(){var inputId=$(this).attr("id");if(inputId!==undefined){return EasyAutocomplete.getHandle(inputId).getSelectedItemData();}
892return-1;};})(jQuery);(function webpackUniversalModuleDefinition(root,factory){if(typeof exports==='object'&&typeof module==='object')
893module.exports=factory();else if(typeof define==='function'&&define.amd)
894define("whatInput",[],factory);else if(typeof exports==='object')
895exports["whatInput"]=factory();else
896root["whatInput"]=factory();})(this,function(){return(function(modules){var installedModules={};function __webpack_require__(moduleId){if(installedModules[moduleId])
897return installedModules[moduleId].exports;
vendor: 7,326 bytes, lines 897-918
897var module=installedModules[moduleId]={exports:{},id:moduleId,loaded:false
898};modules[moduleId].call(module.exports,module,module.exports,__webpack_require__);module.loaded=true;return module.exports;}
899__webpack_require__.m=modules;__webpack_require__.c=installedModules;__webpack_require__.p="";return __webpack_require__(0);})
900([(function(module,exports){'use strict';module.exports=function(){if(typeof document==='undefined'||typeof window==='undefined'){return{ask:function ask(){return'initial';},element:function element(){return null;},ignoreKeys:function ignoreKeys(){},specificKeys:function specificKeys(){},registerOnChange:function registerOnChange(){},unRegisterOnChange:function unRegisterOnChange(){}};}
901var docElem=document.documentElement;var currentElement=null;var currentInput='initial';var currentIntent=currentInput;var currentTimestamp=Date.now();var shouldPersist=false;var formInputs=['button','input','select','textarea'];var functionList=[];var ignoreMap=[16,17,18,91,93];var specificMap=[];var inputMap={keydown:'keyboard',keyup:'keyboard',mousedown:'mouse',mousemove:'mouse',MSPointerDown:'pointer',MSPointerMove:'pointer',pointerdown:'pointer',pointermove:'pointer',touchstart:'touch',touchend:'touch'
902};var isScrolling=false;var mousePos={x:null,y:null
903};var pointerMap={2:'touch',3:'touch',4:'mouse'
904};var supportsPassive=false;try{var opts=Object.defineProperty({},'passive',{get:function get(){supportsPassive=true;}});window.addEventListener('test',null,opts);}catch(e){}
905var setUp=function setUp(){inputMap[detectWheel()]='mouse';addListeners();};var addListeners=function addListeners(){var options=supportsPassive?{passive:true,capture:true}:true;document.addEventListener('DOMContentLoaded',setPersist,true);if(window.PointerEvent){window.addEventListener('pointerdown',setInput,true);window.addEventListener('pointermove',setIntent,true);}else if(window.MSPointerEvent){window.addEventListener('MSPointerDown',setInput,true);window.addEventListener('MSPointerMove',setIntent,true);}else{window.addEventListener('mousedown',setInput,true);window.addEventListener('mousemove',setIntent,true);if('ontouchstart'in window){window.addEventListener('touchstart',setInput,options);window.addEventListener('touchend',setInput,true);}}
906window.addEventListener(detectWheel(),setIntent,options);window.addEventListener('keydown',setInput,true);window.addEventListener('keyup',setInput,true);window.addEventListener('focusin',setElement,true);window.addEventListener('focusout',clearElement,true);};var setPersist=function setPersist(){shouldPersist=!(docElem.getAttribute('data-whatpersist')==='false'||document.body.getAttribute('data-whatpersist')==='false');if(shouldPersist){try{if(window.sessionStorage.getItem('what-input')){currentInput=window.sessionStorage.getItem('what-input');}
907if(window.sessionStorage.getItem('what-intent')){currentIntent=window.sessionStorage.getItem('what-intent');}}catch(e){}}
908doUpdate('input');doUpdate('intent');};var setInput=function setInput(event){var eventKey=event.which;var value=inputMap[event.type];if(value==='pointer'){value=pointerType(event);}
909var ignoreMatch=!specificMap.length&&ignoreMap.indexOf(eventKey)===-1;var specificMatch=specificMap.length&&specificMap.indexOf(eventKey)!==-1;var shouldUpdate=value==='keyboard'&&eventKey&&(ignoreMatch||specificMatch)||value==='mouse'||value==='touch';if(validateTouch(value)){shouldUpdate=false;}
910if(shouldUpdate&&currentInput!==value){currentInput=value;persistInput('input',currentInput);doUpdate('input');}
911if(shouldUpdate&&currentIntent!==value){var activeElem=document.activeElement;var notFormInput=activeElem&&activeElem.nodeName&&(formInputs.indexOf(activeElem.nodeName.toLowerCase())===-1||activeElem.nodeName.toLowerCase()==='button'&&!checkClosest(activeElem,'form'));if(notFormInput){currentIntent=value;persistInput('intent',currentIntent);doUpdate('intent');}}};var doUpdate=function doUpdate(which){docElem.setAttribute('data-what'+which,which==='input'?currentInput:currentIntent);fireFunctions(which);};var setIntent=function setIntent(event){var value=inputMap[event.type];if(value==='pointer'){value=pointerType(event);}
912detectScrolling(event);if((!isScrolling&&!validateTouch(value)||isScrolling&&event.type==='wheel'||event.type==='mousewheel'||event.type==='DOMMouseScroll')&&currentIntent!==value){currentIntent=value;persistInput('intent',currentIntent);doUpdate('intent');}};var setElement=function setElement(event){if(!event.target.nodeName){clearElement();return;}
913currentElement=event.target.nodeName.toLowerCase();docElem.setAttribute('data-whatelement',currentElement);if(event.target.classList&&event.target.classList.length){docElem.setAttribute('data-whatclasses',event.target.classList.toString().replace(' ',','));}};var clearElement=function clearElement(){currentElement=null;docElem.removeAttribute('data-whatelement');docElem.removeAttribute('data-whatclasses');};var persistInput=function persistInput(which,value){if(shouldPersist){try{window.sessionStorage.setItem('what-'+which,value);}catch(e){}}};var pointerType=function pointerType(event){if(typeof event.pointerType==='number'){return pointerMap[event.pointerType];}else{return event.pointerType==='pen'?'touch':event.pointerType;}};var validateTouch=function validateTouch(value){var timestamp=Date.now();var touchIsValid=value==='mouse'&&currentInput==='touch'&&timestamp-currentTimestamp<200;currentTimestamp=timestamp;return touchIsValid;};var detectWheel=function detectWheel(){var wheelType=null;if('onwheel'in document.createElement('div')){wheelType='wheel';}else{wheelType=document.onmousewheel!==undefined?'mousewheel':'DOMMouseScroll';}
914return wheelType;};var fireFunctions=function fireFunctions(type){for(var i=0,len=functionList.length;i<len;i++){if(functionList[i].type===type){functionList[i].fn.call(undefined,type==='input'?currentInput:currentIntent);}}};var objPos=function objPos(match){for(var i=0,len=functionList.length;i<len;i++){if(functionList[i].fn===match){return i;}}};var detectScrolling=function detectScrolling(event){if(mousePos.x!==event.screenX||mousePos.y!==event.screenY){isScrolling=false;mousePos.x=event.screenX;mousePos.y=event.screenY;}else{isScrolling=true;}};var checkClosest=function checkClosest(elem,tag){var ElementPrototype=window.Element.prototype;if(!ElementPrototype.matches){ElementPrototype.matches=ElementPrototype.msMatchesSelector||ElementPrototype.webkitMatchesSelector;}
915if(!ElementPrototype.closest){do{if(elem.matches(tag)){return elem;}
916elem=elem.parentElement||elem.parentNode;}while(elem!==null&&elem.nodeType===1);return null;}else{return elem.closest(tag);}};if('addEventListener'in window&&Array.prototype.indexOf){setUp();}
917return{ask:function ask(opt){return opt==='intent'?currentIntent:currentInput;},element:function element(){return currentElement;},ignoreKeys:function ignoreKeys(arr){ignoreMap=arr;},specificKeys:function specificKeys(arr){specificMap=arr;},registerOnChange:function registerOnChange(fn,eventType){functionList.push({fn:fn,type:eventType||'input'});},unRegisterOnChange:function unRegisterOnChange(fn){var position=objPos(fn);if(position||position===0){functionList.splice(position,1);}},clearStorage:function clearStorage(){window.sessionStorage.clear();}};}();})
918])});;function __aboutAction(){dg.ui.about={};
918dg.ui.header.navigation.setActiveTab('about');}
919function __agentsAction(){dg.ui.agents={};dg.ui.header.navigation.setActiveTab('btl');if(dg.service.iAmPage('^\/agents$'))
920index();function index(){dg.ui.agents.homepage={};dg.ui.agents.homepage.infinite_scroll=dg.service.infiniteScroll({container:$("#infinite-scroller-container"),limiter:$(".footer-container"),button:$("#infinite-scroller-load-more"),params:{category:'agents',limit:24}});}}
921function __barsAction(){dg.ui.bars={};dg.ui.header.navigation.setActiveTab('bars');if(dg.service.iAmPage('^\/pubs-and-bars$'))
922index();else if(dg.service.iAmPage('^\/pubs-and-bars\/advanced-search'))
923search();else if(dg.service.iAmPage('^\/pubs-and-bars\/([0-9]+)\/'))
924bar();function index(){dg.ui.bars.homepage={};dg.ui.bars.homepage.infinite_scroll=dg.service.infiniteScroll({container:$("#infinite-scroller-container"),limiter:$(".footer-container"),button:$("#infinite-scroller-load-more"),params:{sub_category:'bars',limit:24}});}
925function bar(){dg.ui.bars.bar={};}
926function search(){dg.ui.bars.search={};dg.ui.bars.search.input={};dg.ui.bars.search.input.country=$("select[name=country]");dg.ui.bars.search.input.city=$("select[name=city]");dg.ui.bars.search.cities=dg.ui.bars.search.input.city.find("option");dg.ui.bars.search.input.country.on("change",function(){var country_id=$(this).val();dg.ui.bars.search.input.city.val('');dg.ui.bars.search.cities.hide();dg.ui.bars.search.cities.each(function(){if($(this).data("country-id")==country_id||$(this).data("default")){$(this).show();}});});}}
927function __baseAction(){dg.cookies=new __Cookies();dg.ui.copy_protection=new __CopyProtection();dg.ui.header=new __Header();dg.ui.content_overlay=new __ContentOverlay();dg.ui.custom_select=[];if($(".custom-select").length){$(".custom-select").each(function(){dg.ui.custom_select.push(new __CustomSelect($(this)));});}
928dg.ui.vote_block=[];if($(".vote-map").length){$(".vote-map").each(function(){dg.ui.custom_select.push(new __VoteBlock($(this)));});}
929dg.ui.buy_box=[];if($(".buy-box").length){$(".buy-box").each(function(){dg.ui.buy_box.push(new __BuyBox($(this)));});}
930if($(".form-block").length){$(".form-block").each(function(){var $block=$(this);var $items=$block.find("input, textarea, select, button, .form-block__item");$block.on("click",function(e){var match=false;$items.each(function(){match=$(this)[0]===e.target;if(match)return false;});if(!match){var $empty=null;$items.each(function(){if(!$(this).val()){$empty=$(this);return false;}});if($empty!==null){$empty.focus();}
931else{var $first=$items.first();if(!$first.val())$first.focus();}}});$items.each(function(){$(this).on({focus:function(){$block.addClass("form-block--active");},blur:function(){$block.removeClass("form-block--active");}});});});}
932if(dg.autoplay_videos&&$("video").length){$("video").each(function(){var video=this;if(!!window.Promise){var promise=video.play();if(promise!==undefined){promise.then(function(){}).catch(function(error){video.setAttribute("controls","controls");});}}
933else video.play();});}
934if($("#set-recipe-measure").length){var $container=$("#set-recipe-measure"),$form=$container.parents("form:first"),$buttons=$container.find("button"),$loader=$("#set-recipe-measure-loader");$form.on("submit",function(){$loader.removeClass("hide");});$buttons.each(function(){$(this).on("click",function(){$(this).addClass("button--active").siblings().removeClass("button--active");});});}
935dg.ui.yt_video=[];if($(".js-yt-player").length){var tag=document.createElement('script');tag.src="https://www.youtube.com/iframe_api";var firstScriptTag=document.getElementsByTagName('script')[0];firstScriptTag.parentNode.insertBefore(tag,firstScriptTag);window.onYouTubeIframeAPIReady=function(){$(".js-yt-player").each(function(i){this.id='yt-video-'+i;var player={el:this,init:false};dg.ui.yt_video.push(player);player.yt=new YT.Player(player.el.id,{videoId:player.el.dataset.ytId,events:{'onReady':function(event){if(dg.development===true){event.target.playVideo();}},'onStateChange':function(event){if(dg.development===true){if(event.data===1&&player.init===false){event.target.stopVideo();player.init=true;}}},'onError':function(event){if(dg.development===true){$("<p>YouTube Video Error</p>").insertBefore($("#"+player.el.id).parent());$("#"+player.el.id).remove();}}}});});}}
936dg.ui.product_gallery=[];if($(".product-gallery").length){$(".product-gallery").each(function(){dg.ui.product_gallery.push(new __ProductGallery($(this)));});}
937if($(".product-gallery-static").length){if(typeof window.getComputedStyle(document.body).mixBlendMode!=='undefined'){$(".product-gallery-static").each(function(){var $container=$(this),$img=$container.find("img:first");
937if($container&&$img){$(window).on("load",function(){if($container.width()<=$img.width()){$container.removeClass("enhanced");}});}});}}
938dg.ui.skews=[];if($(".skew").length){$(".skew").each(function(){dg.ui.skews.push(new __Skew($(this)));});}
939dg.ui.get_address=[];if($(".js-get-address-io").length){$.ajax({url:"https://getaddress-cdn.azureedge.net/scripts/jquery.getAddress-4.0.0.min.js",dataType:'script',async:true,success:$.proxy(function(){var dg=this;$(".js-get-address-io").each(function(){dg.ui.get_address.push(new __getAddress($(this)));});},dg),error:function(){$(".js-get-address-io").each(function(){var $container=$(this).parents(".js-get-address-io-container:first");if($container)$container.remove();else $(this).remove();});}});}
940if($(".js-slider-descriptor").length){$(".js-slider-descriptor").each(function(){var $description=$(this);var $target=$($description.data("target"));var description=$description.data("description");if($target&&description){$description.css({height:"40px"});$target.on("moved.zf.slider",function(e){var loading_icon=dg.service.generateView('icon',{graphic:'loading'});$description.empty().append(loading_icon.el);});$target.on("changed.zf.slider",function(e){var $inputs=$(this).find("input");var lower=$inputs[0].value?$inputs[0].value:null;var upper=$inputs[1]?$inputs[1].value:null;var response=[];if(lower&&description[lower]){response.push(description[lower]);}
941if(upper&&description[upper]){if(response[0]&&response[0]!==description[upper]){response.push(description[upper]);}}
942if(response.length===2){$description.html("From <span class='js-slider-descriptor__desc'>"+response[0]+"</span> to <span class='js-slider-descriptor__desc'>"+response[1]+"</span>");}
943else if(response.length===1){$description.html("<span class='js-slider-descriptor__desc'>"+response[0]+"</span>");}});}});}}
944function __booksAction(){dg.ui.books={};dg.ui.header.navigation.setActiveTab('books');if(dg.service.iAmPage('^\/books'))
945index();function index(){dg.ui.books.homepage={};dg.ui.books.homepage.infinite_scroll=dg.service.infiniteScroll({container:$("#infinite-scroller-container"),limiter:$(".footer-container"),button:$("#infinite-scroller-load-more"),params:{category:'books',limit:24}});}}
946function __btlAction(){dg.ui.btl={};dg.ui.header.navigation.setActiveTab('btl');if(dg.service.iAmPage('^\/bartenders-lounge$'))
947index();if(dg.service.iAmPage('^\/bartenders-lounge\/jobs\/advertise-here$'))
948advertiseJob();if(dg.service.iAmPage('^\/bartenders-lounge\/competitions$'))
949competitions();if(dg.service.iAmPage('^\/bartenders-lounge\/events'))
950events();function index(){dg.ui.btl.homepage={};dg.ui.btl.homepage.infinite_scroll=dg.service.infiniteScroll({container:$("#infinite-scroller-container"),limiter:$(".footer-container"),button:$("#infinite-scroller-load-more"),params:{target:'trade',limit:24}});}
951function competitions(){dg.ui.btl.competitions={};dg.ui.btl.competitions.infinite_scroll=dg.service.infiniteScroll({container:$("#infinite-scroller-container"),limiter:$(".footer-container"),button:$("#infinite-scroller-load-more"),params:{sub_category:'competitions',limit:24}});}
952function events(){dg.ui.btl.competitions={};dg.ui.btl.competitions.infinite_scroll=dg.service.infiniteScroll({container:$("#infinite-scroller-container"),limiter:$(".footer-container"),button:$("#infinite-scroller-load-more"),params:{sub_category:'events',limit:24}});}
953function advertiseJob(){dg.ui.btl.advertise_job={};dg.ui.btl.advertise_job.input={};dg.ui.btl.advertise_job.input.form_job_title=$('#form_job_title');dg.ui.btl.advertise_job.input.shop_job_title=$('#shop_job_title');dg.ui.btl.advertise_job.input.form_company=$('#form_company');dg.ui.btl.advertise_job.input.shop_company=$('#shop_company');dg.ui.btl.advertise_job.input.form_job_title.on("change",function(){dg.ui.btl.advertise_job.input.shop_job_title.val($(this).val());});dg.ui.btl.advertise_job.input.form_company.on("change",function(){dg.ui.btl.advertise_job.input.shop_company.val($(this).val());});}}
954function __bwsAction(){dg.ui.bws={};dg.ui.header.navigation.setActiveTab('bws');if(dg.service.iAmPage('^\/beer-wine-spirits$'))
955index();else if(dg.service.iAmPage('^\/beer-wine-spirits\/([0-9]+)\/'))
956product();else if(dg.service.iAmPage('^\/beer-wine-spirits\/advanced-search$'))
957advancedSearch();else if(dg.service.iAmPage('^\/beer-wine-spirits\/submit-product$'))
958submitProduct();function index(){dg.ui.bws.homepage={};dg.ui.bws.homepage.infinite_scroll=dg.service.infiniteScroll({container:$("#infinite-scroller-container"),limiter:$(".footer-container"),button:$("#infinite-scroller-load-more"),params:{sub_category:'bws',limit:24}});}
959function product(){dg.ui.bws.product={};addToCabinet();}
960function addToCabinet(){var $button=$("#js-button-add-to-cabinet");if(!$button.length)return;var $container=$("#js-container-add-to-cabinet");var $tag=$("#js-tag-in-cabinet");var $label=$button.find(".cb-button__label");var $icon=$button.find(".cb-button__icon .svg-icon");var default_label=$label.text();var settle_delay=500;dg.ui.bws.product.add_to_cabinet=$button;$button.on("click",function(){if($button.prop("disabled"))return;$button.prop("disabled",true);$label.text("Adding...");setIcon("loading");dg.api.addBrandToCabinet({id:$button.data("id")},function(response){if(response.status==="rejected"){window.location.reload();return;}
961if(response.status!=="ok"){setIcon("plus");$label.text("Failed, please try again");
961$button.prop("disabled",false);setTimeout(function(){$label.text(default_label);},3000);return;}
962setTimeout(function(){$container.addClass("hide");$tag.removeClass("hide");},settle_delay);dg.service.captureEvent("item-added");});});function setIcon(graphic){var use=$icon.find("use").get(0);if(!use)return;$icon.removeClass("svg-icon--plus svg-icon--loading")
963.addClass("svg-icon--"+graphic);use.setAttributeNS("http://www.w3.org/1999/xlink","href","#icon-"+graphic);}}
964function advancedSearch(){var params={};dg.ui.bws.advanced_search={};dg.ui.bws.advanced_search.el={};dg.ui.bws.advanced_search.el.gen1=$("[name='gen1']");dg.ui.bws.advanced_search.el.gen2=$("[name='gen2']");dg.ui.bws.advanced_search.el.gen3=$("[name='gen3']");dg.ui.bws.advanced_search.el.gen4=$("[name='gen4']");dg.ui.bws.advanced_search.el.gen2.html("<option value=''>Category 2</option>").prop("disabled",true);dg.ui.bws.advanced_search.el.gen3.html("<option value=''>Category 3</option>").prop("disabled",true);dg.ui.bws.advanced_search.el.gen4.html("<option value=''>Category 4</option>").prop("disabled",true);$(".generation-select").each(function(){var $this=$(this);$this.change(function(){params.parent_id=$(this).val();dg.api.bwsGetCategories({parent_id:params.parent_id},function(response){var prev_select_id=$this.data("gen");var next_select_id=prev_select_id+1;if(prev_select_id==1){dg.ui.bws.advanced_search.el.gen2.html("<option value=''>Category 2</option>").prop("disabled",true);dg.ui.bws.advanced_search.el.gen3.html("<option value=''>Category 3</option>").prop("disabled",true);dg.ui.bws.advanced_search.el.gen4.html("<option value=''>Category 4</option>").prop("disabled",true);}
965if(prev_select_id==2){dg.ui.bws.advanced_search.el.gen3.html("<option value=''>Category 3</option>").prop("disabled",true);dg.ui.bws.advanced_search.el.gen4.html("<option value=''>Category 4</option>").prop("disabled",true);}
966if(prev_select_id==3){dg.ui.bws.advanced_search.el.gen4.html("<option value=''>Category 4</option>").prop("disabled",true);}
967response=JSON.parse(response);if(response.length>0){dg.ui.bws.advanced_search.el['gen'+next_select_id].prop("disabled",false);dg.ui.bws.advanced_search.el['gen'+next_select_id].html("<option value=''>Category "+next_select_id+"</option>");for(var i=0;i<response.length;i++){dg.ui.bws.advanced_search.el['gen'+next_select_id].append("<option value='"+response[i].id+"'>"+response[i].name+"</option>");}}});});});}
968function submitProduct(){var step=$("#bws_step").data("step")||null;var $form=$(".submit-product-form");var go_back=false;if($("#skip_to_end").length){$("#skip_to_end").on("click",function(){if($form.valid()){$("#amend_step").val("summary").prop("disabled",false);}});}
969if($("#go_to_step").length){$("#go_to_step").on("click",function(){var prev_step=getPrevStep($(this).data("step"));if(prev_step!==-1){go_back=prev_step!=='summary';$("#amend_step").val(prev_step).prop("disabled",false);$form.submit();}});}
970$form.on("submit",function(){$("#submit-product-overlay").removeClass("hide");$("#submit-product-controls").addClass("hide");if(go_back===false){$("#submit-product-loader").removeClass("hide");}
971else{$("#submit-product-go-back").removeClass("hide");}});if(step==="step_1"){var upc={init:function(){this.el=$("div.upc");this.currentEl;this.button=$("button.upc-add");this.el.addClass("hide");this.displayIfValue();this.button.removeClass("hide");this.displayNextUpc();this.button.on("click",upc.buttonPress);},buttonPress:function(event){event.preventDefault();var selects=$(upc.currentEl).find("select"),bottle=$(selects[0]).val(),closure=$(selects[1]).val();var barcode=$(upc.currentEl).find("input:first").val();if(!bottle||!closure||!barcode){alert("Please provide a BARCODE, BOTTLE SIZE and CLOSURE before adding another UPC code");return;}
972upc.displayNextUpc();},displayIfValue:function(){if($(this.el[0]).find("input:first").val())this.displayNextUpc(1);if($(this.el[0]).find("input:first").val())this.displayIfValue();},displayNextUpc:function(int){$(upc.el[0]).removeClass("hide");upc.currentEl=upc.el[0];
972upc.el.splice($.inArray(upc.el[0],upc.el),1);if(!upc.el.length)upc.button.hide();}}
973upc.init();var $product_image_block=$(".add-product-image"),image_max_size=15e+6,image_extensions=['jpg','jpeg','png'];$product_image_block.each(function(){var $label=$(this),$input=$label.find("input[type='file']"),image_preview=$label.find(".add-product-image-preview"),image_text=$label.find(".add-product-image-text"),loading_icon=dg.service.generateView('icon',{graphic:'loading',size:'large'}).el,error_icon=dg.service.generateView('icon',{graphic:'cancel',size:'large'}).el;$input.on("change",function(){$label.removeClass("button--outline");image_preview.empty();image_preview.append(loading_icon);if(this.files&&this.files[0]){var reader=new FileReader(),file=this.files[0];reader.onload=function(e){var img=new Image();img.src=e.target.result;img.style.maxWidth="256px";img.style.maxHeight="256px";$(img).on('load',function(){if(file.size>image_max_size){imageError('The image you provided exceeds the 15MB limit');}
974else{$("#confirm_declaration").prop("required",true);$label.removeClass("button--danger").addClass("button--info");image_preview.empty();image_preview.append(img);var p=document.createElement("P");p.className="text-center margin-top no-margin-bottom alt-font alt-font--natural alt-font--light text-small";p.textContent="Image Preview";image_preview.append(p);image_text.empty();image_text.html("Image accepted!<br><span class='alt-font alt-font--natural alt-font--light'>Click here to replace this image.</span>");$(".add-product-image.hide:first").removeClass("hide");}});};var ext=$(this).val().split(".").pop().toLowerCase();if(image_extensions.indexOf(ext)!==-1){reader.readAsDataURL(this.files[0]);}
975else{imageError('You must provide your image as a .jpg or .png');}}});function imageError(messageHTML){$label.addClass("button--danger").removeClass("button--info");image_preview.empty();image_preview.append(error_icon);var error=document.createElement("div");error.className="alt-font alt-font--natural alt-font--light";error.innerHTML="<p class='no-margin'><strong>"+messageHTML+"</strong><br>Please try again.</p>";image_text.empty();image_text.append(error);$input.val("");}});}
976else if(step==="step_8"){var $producer_autocomplete=$("#autocomplete_producer_name"),$producer_autocomplete_id=$("#autocomplete_producer_id"),producer_names={url:function(){var search_query=$producer_autocomplete.val();return"/api/dev/frontend/producers/dropdowns?name="+$producer_autocomplete.val();},getValue:"name",requestDelay:300,minCharNumber:3,list:{sort:{enabled:true},match:{enabled:true},onLoadEvent:function(){$producer_autocomplete.removeClass("autocomplete--loading");},onChooseEvent:function(){var id=$producer_autocomplete.getSelectedItemData().id;$producer_autocomplete_id.val(id);}},theme:"dg-submit-product"};var $processor_autocomplete=$("#autocomplete_processor_name"),$processor_autocomplete_id=$("#autocomplete_processor_id"),processor_names={url:function(){var search_query=$processor_autocomplete.val();return"/api/dev/frontend/producers/dropdowns?name="+$processor_autocomplete.val();},getValue:"name",requestDelay:300,minCharNumber:3,list:{sort:{enabled:true},match:{enabled:true},onLoadEvent:function(){$processor_autocomplete.removeClass("autocomplete--loading");},onChooseEvent:function(){var id=$processor_autocomplete.getSelectedItemData().id;$processor_autocomplete_id.val(id);}},theme:"dg-submit-product"};$producer_autocomplete.easyAutocomplete(producer_names);$processor_autocomplete.easyAutocomplete(processor_names);$producer_autocomplete.on({change:function(){$producer_autocomplete_id.val("");},keyup:function(){if($producer_autocomplete.val().length>=3){$producer_autocomplete.addClass("autocomplete--loading");}
977else{$producer_autocomplete.removeClass("autocomplete--loading");}}});$processor_autocomplete.on({change:function(){$processor_autocomplete_id.val("");},keyup:function(){if($processor_autocomplete.val().length>=3){$processor_autocomplete.addClass("autocomplete--loading");}
978else{$processor_autocomplete.removeClass("autocomplete--loading");}}});}
979function getPrevStep(step){var steps={2:'step_1',3:'step_2',4:'step_3',5:'step_4',6:'step_5',7:'step_6',8:'step_7',9:'step_8','summary':'summary'};return steps[step]||-1;}}}
980function __cocktailsAction(){dg.ui.cocktails={};
980dg.ui.header.navigation.setActiveTab('cocktails');if(dg.service.iAmPage('^\/cocktails$'))
981index();else if(dg.service.iAmPage('^\/cocktails\/recipe\/([0-9]+)\/'))
982recipe();else if(dg.service.iAmPage('^\/cocktails\/search'))
983search();function index(){dg.ui.cocktails.homepage={};dg.ui.cocktails.homepage.infinite_scroll=dg.service.infiniteScroll({container:$("#infinite-scroller-container"),limiter:$(".footer-container"),button:$("#infinite-scroller-load-more"),params:{sub_category:'cocktails',limit:24}});}
984function recipe(){dg.ui.cocktails.recipe={};}
985function search(){dg.ui.cocktails.checkbox={};dg.ui.cocktails.checkbox.diffords_guide=$("#checkbox-diffords-guide");dg.ui.cocktails.checkbox.discerning_drinker=$("#checkbox-discerning-drinker");dg.ui.cocktails.checkbox.cocktails_17=$("#checkbox-cocktails-17");dg.ui.cocktails.checkbox.cocktails_16=$("#checkbox-cocktails-16");dg.ui.cocktails.checkbox.cocktails_15=$("#checkbox-cocktails-15");dg.ui.cocktails.checkbox.your_favourites=$("#checkbox-your-favourites");dg.ui.cocktails.checkbox.all=$("#checkbox-all");dg.ui.cocktails.checkbox.all.on("change",function(){if($(this).prop("checked")){for(var c in dg.ui.cocktails.checkbox){if(dg.ui.cocktails.checkbox[c].prop("disabled")===false){dg.ui.cocktails.checkbox[c].prop("checked",true);}}}
986else{checkCheckboxes();}});dg.ui.cocktails.checkbox.diffords_guide.on("change",checkCheckboxes);dg.ui.cocktails.checkbox.discerning_drinker.on("change",checkCheckboxes);dg.ui.cocktails.checkbox.cocktails_17.on("change",checkCheckboxes);dg.ui.cocktails.checkbox.cocktails_16.on("change",checkCheckboxes);dg.ui.cocktails.checkbox.cocktails_15.on("change",checkCheckboxes);dg.ui.cocktails.checkbox.your_favourites.on("change",checkCheckboxes);dg.ui.cocktails.creator={};dg.ui.cocktails.creator.autocomplete={};dg.ui.cocktails.creator.autocomplete.keyword="";dg.ui.cocktails.creator.autocomplete=$("#creator-autocomplete");dg.ui.cocktails.creator.autocomplete.on("input",function(){dg.ui.cocktails.creator.autocomplete.keyword=$(this).val().trim();});dg.ui.cocktails.creator.autocomplete.easyAutocomplete({url:function(){var api="/api/dev/frontend/search/cocktail-creator?name="+dg.ui.cocktails.creator.autocomplete.keyword;return api},requestDelay:300,getValue:"name",minCharNumber:3,list:{maxNumberOfElements:8,onChooseEvent:function(){var creator=dg.ui.cocktails.creator.autocomplete.getSelectedItemData();dg.ui.cocktails.creator.autocomplete.val('');if(creator.bartender!==null){$("#creator-bartender").val(creator.bartender);$("#creator-ugid").val('');}
987else{$("#creator-bartender").val('');$("#creator-ugid").val(creator.ugid);}
988$("#creator-placeholder-name").val(creator.name);inputActive($("#creator-placeholder-name"));$("#creator-placeholder").removeClass("hide");$("#creator-autocomplete-container").addClass("hide");},onKeyEnterEvent:function(){},onLoadEvent:function(){if(dg.ui.cocktails.creator.autocomplete.getItems().length<1){$("#creator-icon").empty().append(dg.service.generateView('icon',{graphic:'block'}).el);$("#creator-not-found").removeClass("hide");}
989else{$("#creator-icon").empty().append(dg.service.generateView('icon',{graphic:'arrow-right'}).el);}},onHideListEvent:function(){}},template:{type:'custom',method:function(value,item){var el=document.createElement("DIV");el.innerHTML=item.name,el.className="eac-dg-link eac-dg-link--cocktails";return el;}},theme:"dg"});dg.ui.cocktails.creator.autocomplete.on("input",function(){$("#creator-not-found").addClass("hide");if($(this).val().length>=3){$("#creator-icon").removeClass("hide");$("#creator-icon").empty().append(dg.service.generateView('icon',{graphic:'loading'}).el);}
990else if($(this).val().length<1){$("#creator-icon").addClass("hide");}});$("#creator-reset").on("click",autocompleteReset);function autocompleteReset(){$("#creator-placeholder").addClass("hide");$("#creator-placeholder-name").val('');inputInActive($("#creator-placeholder-name"));inputInActive($("#creator-autocomplete"));dg.ui.cocktails.creator.autocomplete.val('');$("#creator-ugid").val('');$("#creator-bartender").val('');$("#creator-autocomplete-container").removeClass("hide");}
991$("#show-advanced-filters").on("click",function(){$("#more-filters").removeClass("hide");$("#show-advanced-filters").addClass("hide");$('.slider').foundation('_reflow');});$("#add-more-keyword").on("click",newKeyword);$("#base-keyword").on("keyup",listNewKeyword);function listNewKeyword(event){if((event.which||event.keyCode)===188){$("#base-keyword").val($("#base-keyword").val().replace(/,/,''));newKeyword()}}
992function newKeyword(){var $base_input=$("#base-keyword");if(!$base_input.val()){$base_input.focus();return false;}
993$base_input.off("keyup");$("#add-more-keyword").prop("disabled",true);var new_input=document.createElement("INPUT");new_input.name=$base_input[0].name;new_input.type=$base_input[0].type;new_input.placeholder=$base_input[0].placeholder;new_input.autocomplete=$base_input[0].autocomplete;new_input.className=$base_input[0].className;new_input.id=$base_input[0].id;$base_input.removeAttr("id");inputActive($base_input);inputInActive($(new_input));$(new_input).on("blur",function(){evaluateOnBlur($(this));});$("#more-keyword-container").append(new_input);$(new_input).focus().on("keyup",listNewKeyword);setTimeout(function(){$("#add-more-keyword").prop("disabled",fal
993se);},250);}
994$(".ingredient-select").on("change",onChooseIngredient);function onChooseIngredient(){var $select=$(this);if(!$select.val()){inputInActive($select);return;}
995if(!$select.data("child-spawned")){$select.data("child-spawned",1);var $container=$select.parents(".ingredient-select-container:first");var new_select=document.createElement("SELECT");new_select.name=this.name;new_select.id=$select[0].id;new_select.className=this.className;new_select.innerHTML=$select.html();$select.removeAttr("id");var $first_option=$(new_select).find("option:first");if(!$first_option.html().match(/\+/)){$(new_select).find("option:first").prepend("+ ");}
996$container.append(new_select).addClass("pad-bottom");$(new_select).on("change",onChooseIngredient);}
997$select.removeClass("no-margin").blur();inputActive($select);$(new_select).focus();}
998$("#cocktail-finder-search").find("select, input[type='text'], input[type='search']")
999.not(".ignore-active-on-blur")
1000.on("blur",function(){evaluateOnBlur($(this));});function evaluateOnBlur($input){if($input.val()){inputActive($input);}
1001else{inputInActive($input);}}
1002function inputActive($input){$input.addClass("border-heavy border-warning border-radius")
1003.css('background-color','#ffedb5');}
1004function inputInActive($input){$input.removeClass("border-heavy border-warning border-radius")
1005.css('background-color','');}
1006function checkCheckboxes(){if(dg.ui.cocktails.checkbox.diffords_guide.prop("checked")==true&&dg.ui.cocktails.checkbox.discerning_drinker.prop("checked")==true&&dg.ui.cocktails.checkbox.cocktails_17.prop("checked")==true&&dg.ui.cocktails.checkbox.cocktails_16.prop("checked")==true&&dg.ui.cocktails.checkbox.cocktails_15.prop("checked")==true&&(dg.ui.cocktails.checkbox.your_favourites.prop("checked")==true||dg.ui.cocktails.checkbox.your_favourites.prop("disabled")==true)){dg.ui.cocktails.checkbox.all.prop("checked",true);}
1007else{dg.ui.cocktails.checkbox.all.prop("checked",false);}}}}
1008function __glasswareAction(){dg.ui.glassware={};dg.ui.header.navigation.setActiveTab('glassware');if(dg.service.iAmPage('^\/glassware'))
1009index();else
1010product();function index(){dg.ui.glassware.homepage={};dg.ui.glassware.homepage.infinite_scroll=dg.service.infiniteScroll({container:$("#infinite-scroller-container"),limiter:$(".footer-container"),button:$("#infinite-scroller-load-more"),params:{category:'glassware',limit:24}});}
1011function product(){dg.ui.glassware.desktop_skew=$("#desktop-skew");dg.ui.glassware.content_cell=$("#content-cell");if(dg.ui.glassware.desktop_skew&&dg.ui.glassware.content_cell&&(dg.viewport.height<dg.ui.glassware.content_cell.height())){dg.ui.glassware.desktop_skew.removeClass("show-for-large");}}}
1012function __indexAction(){dg.ui.homepage={};dg.ui.homepage.infinite_scroll=dg.service.infiniteScroll({container:$("#infinite-scroller-container"),limiter:$(".footer-container"),button:$("#infinite-scroller-load-more")});var $dashboard=$('#premium-dashboard');if($dashboard.length){var $dashboard_collapsed=$('#js-premium-dashboard-collapsed');var $button_collapse_dashboard=$('#js-button-hide-dashboard');var $button_show_dashboard=$('#js-button-show-dashboard');$button_show_dashboard.on('click',showDashboard);$button_collapse_dashboard.on('click',collapseDashboard);let api=new __cocktailbuilderApi();api.pushToQueue('ingredients',{page:'ingredients',pp:'hide'},r=>{$('#js-count-all-ingredients').html(r.AJAXresponse.response.result_count||0);});api.pushToQueue('favourite',{list:1,count_only:1,include_bws:1,include_cocktails:1,include_ingredients:1},r=>{$('#js-count-favourites').html(r.AJAXresponse.response.result_count||0);});api.pushToQueue('wish-list',{list:1,count_only:1,include_bws:1,include_cocktails:1,include_ingredients:1},r=>{$('#js-count-wish-list').html(r.AJAXresponse.response.result_count||0);});api.pushToQueue('ratings',{list:1,count_only:1,include_bws:1,include_cocktails:1,include_ingredients:1},r=>{$('#js-count-ratings').html(r.AJAXresponse.response.result_count||0);});api.pushToQueue('preferred-brands',{list:1,count_only:1},r=>{$('#js-count-preferred-brands').html(r.AJAXresponse.response.result_count||0);});api.executeQueue();dg.api.getYourComments({limit:1},function(response){$('#js-count-comments').html(response.count||0);});if(window.location.hash==='#premium-dashboard'){$dashboard.removeClass('hide');$dashboard_collapsed.addClass('hide');history.pushState("",document.title,window.location.pathname+window.location.search);}
1013function collapseDashboard(){$dashboard.addClass('hide');$dashboard_collapsed.removeClass('hide');dg.cookies.set('diffords_hide_dash',1,365);}
1014function showDashboard(){$dashboard.removeClass('hide');$dashboard_collapsed.addClass('hide');document.cookie='diffords_hide_dash=; Path=/; Expires=Thu, 01 Jan 1970 00:00:01 GMT; secure; samesite=lax; domain=.'+window.location.host+';';}}}
1015function __encyclopediaAction(){dg.ui.encyclopedia={};var term_categories=["cocktails","bars","people","products_and_services","books","bws","competitions","events","dailycocktail","simons-blog","bundle"];
1015if(dg.service.iAmPage('^\/on-this-day\/')){dg.ui.header.navigation.setActiveTab('cocktails');}
1016else{for(var x=0,l=term_categories.length;x<l;++x){if(dg.service.iAmPage('^\/encyclopedia\/([0-9]+)\/('+dg.available_languages_reg+')\/'+term_categories[x])||dg.service.iAmPage('^\/encyclopedia\/([0-9]+)\/'+term_categories[x]+'\/')){dg.ui.header.navigation.setActiveTab(term_categories[x]);break;}}}}
1017function __myaccountAction(){dg.ui.my_account={};dg.ui.my_bar={};dg.data.my_bar={};dg.myBarService=new __ServiceMyBar(dg);dg.ui.jump_to_results=0;$("#header-your-account-button").addClass("bg-shop-tone");if(dg.service.iAmPage('^\/your-account\/login'))
1018login();else if(dg.service.iAmPage('^\/your-account\/update'))
1019update();else if(dg.service.iAmPage('^\/your-account\/address-book'))
1020addressBook();else if(dg.service.iAmPage('^\/your-account\/newsletters'))
1021newsletters();else if(dg.service.iAmPage('^\/your-account\/subscribe'))
1022subscribe();else if(dg.service.iAmPage('^\/your-account\/your-comments'))
1023yourComments();else if(dg.service.iAmPage('^\/(your\/favourites|your-account\/your-favourites)'))
1024yourFavourites();else if(dg.service.iAmPage('^\/your\/ratings'))
1025yourRatings();else if(dg.service.iAmPage('^\/your\/wish-list'))
1026yourWishList();else if(dg.service.iAmPage('^\/your\/must-try-visit'))
1027yourMustTry();else if(dg.service.iAmPage('^\/your\/tried-and-liked'))
1028yourTriedAndLiked();else if(dg.service.iAmPage('^\/your\/tried-and-didnt-like'))
1029yourTriedAndDidntLike();else if(dg.service.iAmPage('^\/your\/preferred-brands'))
1030yourPreferredIngredients();function yourPreferredIngredients(){new __cocktailBuilderAction();setupPagination();dg.ui.pagination.setApiTask('preferred-brands');dg.ui.pagination.setParam('list',1);dg.ui.pagination.reloadOnBrowserBack();dg.ui.pagination.build=paginationBuild;dg.ui.pagination.callApi();}
1031function yourFavourites(){new __cocktailBuilderAction();setupPagination();dg.ui.pagination.setApiTask('favourite');dg.ui.pagination.setParam('list',1);dg.ui.pagination.reloadOnBrowserBack();dg.ui.pagination.build=paginationBuild;dg.ui.pagination.callApi();}
1032function yourRatings(){new __cocktailBuilderAction();setupPagination();dg.ui.pagination.setApiTask('ratings');dg.ui.pagination.reloadOnBrowserBack();dg.ui.pagination.build=paginationBuild;dg.ui.pagination.callApi();}
1033function yourWishList(){new __cocktailBuilderAction();setupPagination();dg.ui.pagination.setApiTask('wish-list');dg.ui.pagination.setParam('list',1);dg.ui.pagination.reloadOnBrowserBack();dg.ui.pagination.build=paginationBuild;dg.ui.pagination.callApi();}
1034function yourMustTry(){new __cocktailBuilderAction();setupPagination();dg.ui.pagination.setApiTask('must-try');dg.ui.pagination.reloadOnBrowserBack();dg.ui.pagination.build=paginationBuild;dg.ui.pagination.callApi();}
1035function yourTriedAndDidntLike(){new __cocktailBuilderAction();setupPagination();dg.ui.pagination.setApiTask('tried-and-didnt-like');dg.ui.pagination.reloadOnBrowserBack();dg.ui.pagination.build=paginationBuild;dg.ui.pagination.callApi();}
1036function yourTriedAndLiked(){new __cocktailBuilderAction();setupPagination();dg.ui.pagination.setApiTask('tried-and-liked');dg.ui.pagination.reloadOnBrowserBack();dg.ui.pagination.build=paginationBuild;dg.ui.pagination.callApi();}
1037function login(){dg.ui.my_account.login={};dg.ui.my_account.login.form={};dg.ui.my_account.login.form.login=$("#login-form");dg.ui.my_account.login.form.login_loading=$("#login-loading");dg.ui.my_account.login.form.register=$("#register-form");dg.ui.my_account.login.form.register_loading=$("#register-loading");dg.ui.my_account.login.form.amazon_loading=$("#amazon-loading");dg.ui.my_account.login.form.reset_password=$("#reset-password");dg.ui.my_account.login.form.reset_password_loading=$("#reset-password-loading");dg.ui.my_account.login.input={};dg.ui.my_account.login.input.email=$("input[name='username']");dg.ui.my_account.login.input.password=$("input[name='password']");dg.ui.my_account.login.input.register_email=$("input[name='email']");dg.ui.my_account.login.input.register_password=$("input[name='pass1']");dg.ui.my_account.login.input.register_password_confirm=$("input[name='pass2']");dg.ui.my_account.login.input.industry=$("input[name='industryYN']");dg.ui.my_account.login.input.newsletter=$("input[name='newsletter_opt_in']");dg.ui.my_account.login.input.terms=$("input[name='terms']");dg.ui.my_account.login.input.dob_day=$("select[name='dob_day']");dg.ui.my_account.login.input.dob_month=$("select[name='dob_month']");dg.ui.my_account.login.input.dob_year=$("select[name='dob_year']");dg.ui.my_account.login.button={};dg.ui.my_account.login.button.login=$("#button-login");dg.ui.my_account.login.button.show_login_form=$("#show-login-form");dg.ui.my_account.login.button.register=$("#register-button");dg.ui.my_account.login.error={};dg.ui.my_account.login.error.login=$("#login-error");dg.ui.my_account.login.error.register=$("#register-error");
1037if(dg.ui.my_account.login.error.login.length){dg.service.scrollTo(dg.ui.my_account.login.form.login.offset().top);}
1038else if(dg.ui.my_account.login.error.register.length){dg.service.scrollTo(dg.ui.my_account.login.form.register.offset().top);}
1039dg.ui.my_account.login.input.email.on("input",enableLoginButton);dg.ui.my_account.login.input.password.on("input",enableLoginButton);dg.ui.my_account.login.input.industry.on("change",industryRadio);dg.ui.my_account.login.input.newsletter.on("change",newsletterRadio);dg.ui.my_account.login.input.terms.on("change",termsCheckbox);dg.ui.my_account.login.form.register.on("change",enableRegisterButton);dg.ui.my_account.login.input.dob_day.on("change",checkDob);dg.ui.my_account.login.input.dob_month.on("change",checkDob);dg.ui.my_account.login.input.dob_year.on("change",checkDob);dg.ui.my_account.login.form.login.on("submit",function(){dg.ui.my_account.login.form.login_loading.removeClass("hide");});dg.ui.my_account.login.form.register.on("submit",function(){checkDob();dg.ui.my_account.login.form.register_loading.removeClass("hide");});dg.ui.my_account.login.form.reset_password.on("submit",function(){dg.ui.my_account.login.form.reset_password_loading.removeClass("hide");});function checkDob(){var dd=dg.ui.my_account.login.input.dob_day.val().replace(/[^0-9]/g,'');var mm=dg.ui.my_account.login.input.dob_month.val().replace(/[^0-9]/g,'');var yyyy=dg.ui.my_account.login.input.dob_year.val().replace(/[^0-9]/g,'');if(dd){if(dd>31)dd="";else if(dd<10&&dd.length>1)dd=dd.replace(/0/,'');}
1040if(mm){if(mm>12)mm="";else if(mm<10&&mm.length>1)mm=mm.replace(/0/,'');}
1041dg.ui.my_account.login.input.dob_day.val(dd);dg.ui.my_account.login.input.dob_month.val(mm);dg.ui.my_account.login.input.dob_year.val(yyyy);}
1042function enableRegisterButton(){return;}
1043function enableLoginButton(){return;}
1044function termsCheckbox(){var $container=dg.ui.my_account.login.input.terms.parents(".checkbox-container:first");if(dg.ui.my_account.login.input.terms.prop("checked"))$container.addClass("border-info");else $container.removeClass("border-info");}
1045function industryRadio(){toggleRadio(dg.ui.my_account.login.input.industry);}
1046function newsletterRadio(){toggleRadio(dg.ui.my_account.login.input.newsletter);}
1047function toggleRadio(inputs){inputs.each(function(){var $input=$(this),$label=$input.parents("label:first");if($(this).prop("checked"))$label.addClass("bg-info");else $label.removeClass("bg-info");});}
1048function industrySet(){return radioSet(dg.ui.my_account.login.input.industry);}
1049function newsletterSet(){return radioSet(dg.ui.my_account.login.input.newsletter);}
1050function radioSet(inputs){var response=false;inputs.each(function(){if($(this).prop("checked"))response=true;});return response;}}
1051function update(){dg.ui.my_account.update={};dg.ui.my_account.update.form={};dg.ui.my_account.update.form.avatar=$("#upload_avatar");dg.ui.my_account.update.form.avatar_preview=$("#upload_avatar_preview");dg.ui.my_account.update.form.avatar_loading=$("#avatar_loading");dg.ui.my_account.update.form.industryY=$("#industryY");dg.ui.my_account.update.form.industryN=$("#industryN");dg.ui.my_account.update.form.industry_details=$("#industry-details");var image={};image.min_width=440;image.min_width=440;image.max_size=15e+6;image.extensions=['jpg','jpeg','png'];image.preview_message=$("#avatar_preview_message");image.error_message=$("#avatar_error_message");if(dg.ui.my_account.update.form.industryY.is(":checked")){dg.ui.my_account.update.form.industry_details.removeClass("hide");}
1052dg.ui.my_account.update.form.industryY.on("change",function(){if(dg.ui.my_account.update.form.industryY.is(":checked")){dg.ui.my_account.update.form.industry_details.removeClass("hide");}});dg.ui.my_account.update.form.industryN.on("change",function(){if(dg.ui.my_account.update.form.industryN.is(":checked")){dg.ui.my_account.update.form.industry_details.addClass("hide");}});dg.ui.my_account.update.form.avatar.on("change",function(){dg.ui.my_account.update.form.avatar_loading.removeClass("hide");if(this.files&&this.files[0]){var reader=new FileReader(),file=this.files[0];reader.onload=function(e){var img=new Image();img.src=e.target.result;$(img).on('load',function(){if(file.size>image.max_size){imageError('The image you provided exceeds the 15MB limit');}
1053else if(img.width<image.min_width){if(img.height<image.min_height){imageError('The image you provided is too small ('+img.width+'px wide by '+img.height+'px tall)<br>It must be at least '+image.min_width+'px wide by '+image.min_height+'px tall');}
1054else{imageError('The image you provided is too narrow ('+img.width+'px wide)<br>It must be at least '+image.min_width+'px wide');}}
1055else if(img.height<image.min_height){imageError('The image you provided is not tall enough ('+img.height+'px tall)<br>It must be at least '+image.min_height+'px tall');}
1056else{if(img.height>img.width){img.style.position="relative";img.style.top="-25%";}
1057else{img.className="fill";img.style.objectFit="cover";}
1058dg.ui.my_account.update.form.avatar_preview.empty().append(img);dg.ui.my_account.update.form.avatar_loading.addClass("hide");image.preview_message.removeClass("hide");image.error_message.addClass("hide");}});};var ext=$(this).val().split(".").pop().toLowerCase();
1058if(image.extensions.indexOf(ext)!==-1){reader.readAsDataURL(this.files[0]);}
1059else{imageError('You must provide your image as a .jpg or .png');}}
1060else{imageError('An unknown error occurred when trying to upload your image.');}});function imageError(messageHTML){image.error_message.empty().html("<p class='no-margin'>"+messageHTML+"</p>").removeClass("hide");dg.ui.my_account.update.form.avatar.val("");dg.ui.my_account.update.form.avatar_loading.addClass("hide");image.preview_message.addClass("hide");}}
1061function addressBook(){dg.ui.my_account.address_book={};dg.ui.my_account.address_book.el={};dg.ui.my_account.address_book.el.forms=$(".address-book-form");dg.ui.my_account.address_book.el.address_buttons=$(".address-buttons");dg.ui.my_account.address_book.el.add_new_address_button=$("#my-account-new-address-button");dg.ui.my_account.address_book.el.add_new_address_form=$("#my-account-new-address-form");dg.ui.my_account.address_book.el.delete_address=$(".delete-address");dg.ui.my_account.address_book.el.address_buttons.each(function(){$(this).on("click",function(){dg.ui.my_account.address_book.el.address_buttons.removeClass("button--active");$(this).addClass("button--active");var address_index=$(this).data("address-index");dg.ui.my_account.address_book.el.forms.each(function(key){$(this).addClass("hide");if(address_index===key){$(this).removeClass("hide");dg.ui.my_account.address_book.el.add_new_address_button.removeClass("button--active");}})});});dg.ui.my_account.address_book.el.add_new_address_button.on("click",function(){$(this).addClass("button--active");dg.ui.my_account.address_book.el.forms.addClass("hide");dg.ui.my_account.address_book.el.add_new_address_form.removeClass("hide");dg.ui.my_account.address_book.el.address_buttons.removeClass("button--active");});dg.ui.my_account.address_book.el.delete_address.each(function(){$(this).on("click",function(){if(confirm("Are you sure you want to delete this address?")){return true;}else return false;});});}
1062function newsletters(){new __cocktailBuilderAction();dg.ui.my_account.newletters={};dg.ui.my_account.newletters.form=$("#js-newsletters-form");dg.ui.my_account.newletters.submit=$("#js-submit-subs");dg.ui.my_account.newletters.subs=$("input[data-sub]");dg.ui.my_account.newletters.unsub=$("#js-newsletter-unsub-all");dg.ui.my_account.newletters.confirm=$("#js-confirm-address-valid");dg.ui.my_account.newletters.prefs=$("input[data-pref]");dg.ui.my_account.newletters.pref_unsub=$("#js-pref-unsub-all");dg.ui.my_account.newletters.pref_submit=$("#js-submit-pref");dg.ui.my_account.newletters.confirm_submit=$("#js-submit-confirm-email");if(dg.ui.my_account.newletters.confirm.length>0){dg.ui.my_account.newletters.confirm.on("change",function(){if($(this).prop("checked")){dg.ui.my_account.newletters.confirm_submit.removeClass("cb-button--off").prop("disabled",false);}
1063else{dg.ui.my_account.newletters.confirm_submit.addClass("cb-button--off").prop("disabled",true);}});}
1064dg.ui.my_account.newletters.form.on("submit",function(){if(dg.ui.my_account.newletters.confirm.length>0){dg.ui.my_account.newletters.confirm_submit.addClass("cb-button--off").prop("disabled",true).empty()
1065.append(dg.cbView.generate('icon',{graphic:'loading'}).el);}
1066dg.ui.my_account.newletters.pref_unsub.trigger("cb.disable");dg.ui.my_account.newletters.confirm_submit.addClass("cb-button--off").prop("disabled",true).empty()
1067.append(dg.cbView.generate('icon',{graphic:'loading'}).el);dg.ui.my_account.newletters.unsub.trigger("cb.disable");dg.ui.my_account.newletters.submit.addClass("cb-button--off").prop("disabled",true).empty()
1068.append(dg.cbView.generate('icon',{graphic:'loading'}).el);});dg.ui.my_account.newletters.prefs.each(function(){$(this).on("change",function(){dg.ui.my_account.newletters.pref_submit.removeClass("cb-button--off").prop("disabled",false);if($(this).prop("checked")){dg.ui.my_account.newletters.pref_unsub.prop("checked",false).trigger("cb.evaluate");}
1069else{evaluatePreferences();}});});dg.ui.my_account.newletters.pref_unsub.on("change",function(){dg.ui.my_account.newletters.pref_submit.removeClass("cb-button--off").prop("disabled",fal
1069se);if(dg.ui.my_account.newletters.pref_unsub.prop("checked")){dg.ui.my_account.newletters.prefs.each(function(){$(this).prop("checked",false).trigger("cb.evaluate");})}
1070else{evaluatePreferences();}});dg.ui.my_account.newletters.subs.each(function(){$(this).on("change",function(){dg.ui.my_account.newletters.submit.removeClass("cb-button--off").prop("disabled",false);if($(this).prop("checked")){dg.ui.my_account.newletters.unsub.prop("checked",false).trigger("cb.evaluate");}
1071else{evaluateSubscriptions();}});});dg.ui.my_account.newletters.unsub.on("change",function(){dg.ui.my_account.newletters.submit.removeClass("cb-button--off").prop("disabled",false);if(dg.ui.my_account.newletters.unsub.prop("checked")){dg.ui.my_account.newletters.subs.each(function(){$(this).prop("checked",false).trigger("cb.evaluate");})}
1072else{evaluateSubscriptions();}});evaluateSubscriptions();evaluatePreferences();function evaluateSubscriptions(){var checked=false;dg.ui.my_account.newletters.subs.each(function(){if($(this).prop("checked")){checked=1;return false;}});if(checked===false){dg.ui.my_account.newletters.unsub.prop("checked",1);}}
1073function evaluatePreferences(){var checked=false;dg.ui.my_account.newletters.prefs.each(function(){if($(this).prop("checked")){checked=1;return false;}});if(checked===false){dg.ui.my_account.newletters.pref_unsub.prop("checked",1);}}}
1074function subscribe(){dg.ui.my_account.subscribe={};dg.ui.my_account.subscribe.form=$("#subscribe-form");dg.ui.my_account.subscribe.form_disabled=false;dg.ui.my_account.subscribe.dob_warning=$("#dob-warning");dg.ui.my_account.subscribe.input={};dg.ui.my_account.subscribe.input.dob_month=$("select[name='dob_month']");dg.ui.my_account.subscribe.input.dob_day=$("select[name='dob_day']");dg.ui.my_account.subscribe.input.dob_year=$("select[name='dob_year']");dg.ui.my_account.subscribe.minimum_age=parseInt($("check_drinking_age").data("drinking-age"))||18;var minimum_age_date=new Date();minimum_age_date.setHours(23,59,59,0);minimum_age_date.setYear(minimum_age_date.getFullYear()-dg.ui.my_account.subscribe.minimum_age);dg.ui.my_account.subscribe.minimum_age_epoch=minimum_age_date.getTime();dg.ui.my_account.subscribe.input.dob_month.on("change",checkDob);dg.ui.my_account.subscribe.input.dob_day.on("change",checkDob);dg.ui.my_account.subscribe.input.dob_year.on("change",checkDob);dg.ui.my_account.subscribe.form.on("submit",function(){return!dg.ui.my_account.subscribe.form_disabled;});function checkDob(){var dob_day=dg.ui.my_account.subscribe.input.dob_month.val();var dob_month=dg.ui.my_account.subscribe.input.dob_day.val();var dob_year=dg.ui.my_account.subscribe.input.dob_year.val();if(!dob_day||!dob_month||!dob_year)return false;var submitted_date=new Date(dob_year+"-"+dob_month+"-"+dob_day);submitted_date.setHours(0,0,0,0);var submitted_epoch=submitted_date.getTime();dg.ui.my_account.subscribe.form_disabled=submitted_epoch>dg.ui.my_account.subscribe.minimum_age_epoch;if(dg.ui.my_account.subscribe.form_disabled){dg.ui.my_account.subscribe.dob_warning.removeClass("hide");}
1075else{dg.ui.my_account.subscribe.dob_warning.addClass("hide");}}}
1076function yourComments(){dg.ui.my_bar.your_comments={};dg.myBarService.init('your-comments');}
1077function paginationBuild(self){dg.ui.pagination.update_url=true;$(".cb-js-delete-on-pagination").remove();$(dg.ui.item_list.el).empty();$(".cb-pre-fadein").removeClass("cb-pre-fadein").addClass("cb-fadein");dg.ui.item_list.presentType();if(self.data.response.result_count<1){$(dg.ui.item_list.el).append(dg.cbView.generate('item-list-message',{icon:'dislike',classNames:'cb-list-message--no-results  cb-list-message--large',title:'No results found',sub_title:"No items available matching your criteria"}).el);}
1078else{self.data.response.result.forEach(function(item){item.from_diffords_guide=1;if(dg.ui.pagination.api_task=="wish-list"){item.focus="wish-list";item.onWishList=function(r){item.refetch_on_close=1;};}
1079if(dg.ui.pagination.api_task=="favourite"){item.focus="favourite";item.onFavourite=function(r){item.refetch_on_close=1;};}
1080if(dg.ui.pagination.api_task=="ratings"){item.focus="rating";}
1081if(dg.ui.pagination.api_task=='must-try'||dg.ui.pagination.api_task=='tried-and-didnt-like'||dg.ui.pagination.api_task=='tried-and-liked'){item.focus="tried";item.onUpdateTried=function(r){item.refetch_on_close=1;};}
1082item.onModalClose=function(r){if(item.reload_on_close){location.reload();}
1083else if(item.refetch_on_close){dg.ui.pagination.callApi();}};var template=null;if(item.link_table==="cocktails"){template="item-recipe";}
1084else if(item.link_table==="spiritbrands"||item.link_table==="ingredients"){template="item";}
1085if(template!==null){$(dg.ui.item_list.el).append(dg.cbView.generate(template,item).el);}});}
1086if(self.call_trigger!=="onChangeLimit"){if(dg.ui.jump_to_results){window.scrollTo(0,$("#item-results").offset().top);}
1087dg.ui.jump_to_results=1;}}
1088function setupPagination(){dg.ui.item_list=dg.cbView.generate('item-list');var list_type=localStorage.getItem('cb-list-type');if(list_type!==null)dg.ui.item_list.setType(list_type);$("#pagination-item-list").append(dg.ui.item_list.el);$(dg.ui.item_list.el).append(dg.cbView.generate('item-list-message',{icon:'loading',classNames:'cb-list-message--no-results cb-list-message--large',title:'Fetching items',sub_title:'Please wait a moment...'}).el);dg.ui.pagination=new __cocktailbuilderPagination();dg.ui.pagination.addInput('limit',$("#pagination-limit"));setLimitOptions();$(window).on('changed.zf.mediaquery',setLimitOptions);dg.ui.pagination.addInput('offset',$("#pagination-offset"));dg.ui.pagination.addInput('keyword',$("#pagination-keyword"));dg.ui.pagination.addInput('sort',$("#pagination-sort"));dg.ui.pagination.addButton('next',$(".pagination-next"));dg.ui.pagination.addButton('prev',$(".pagination-prev"));dg.ui.pagination.addButton('first',$(".pagination-first"));dg.ui.pagination.addButton('last',$(".pagination-last"));dg.ui.pagination.addButton('submit',$("#pagination-submit"));dg.ui.pagination.setItemCountView($("#pagination-item-count"));dg.ui.pagination.setPageCountView($(".pagination-page-count"));dg.ui.pagination.setCurrentPageView($(".pagination-current-page"));dg.ui.pagination.setLoaderView($(".pagination-loader"));if($("input[name='include-cocktails']").length>0){dg.ui.pagination.addInput('include_cocktails',$("input[name='include-cocktails']"));dg.ui.pagination.inputs.include_cocktails.on("change",dg.service.debounce(dg.ui.pagination.callApi,500));}
1089if($("input[name='include-bws']").length>0){dg.ui.pagination.addInput('include_bws',$("input[name='include-bws']"));dg.ui.pagination.inputs.include_bws.on("change",dg.service.debounce(dg.ui.pagination.callApi,500));}
1090if($("input[name='include-ingredients']").length>0){dg.ui.pagination.addInput('include_ingredients',$("input[name='include-ingredients']"));dg.ui.pagination.inputs.include_ingredients.on("change",dg.service.debounce(dg.ui.pagination.callApi,500));}
1091$(".pagination-change-type").removeClass("cb-button--off")
1092.not("[data-type='"+dg.ui.item_list.type+"']")
1093.addClass("cb-button--off");$(".pagination-change-type").each(function(){var $button=$(this);var $container=$button.parent();var $siblings=$container.find(".pagination-change-type").not($button);$button.on("click",function(e){if($button.data("type")==dg.ui.item_list.type)return false;$button.removeClass("cb-button--off").prop("disabled",true);$siblings.addClass("cb-button--off").prop("disabled",true);dg.ui.item_list.setType($button.data("type"));localStorage.setItem('cb-list-type',$button.data("type"));setLimitOptions(e,true);
1093setTimeout(function(){$button.prop("disabled",false);$siblings.prop("disabled",false);},1000);});});}
1094function setLimitOptions(event,list_type_changed){var prev_limit=parseInt(dg.ui.pagination.getParam('limit'));var limits=dg.cb_grid_limits[dg.ui.item_list.type][Foundation.MediaQuery.current];var selected_index=1;dg.ui.pagination.inputs.limit.empty();for(var l=0;l<limits.length;++l){var option=document.createElement("OPTION");option.value=limits[l];option.textContent=limits[l];if(l===selected_index){option.selected=1;}
1095dg.ui.pagination.inputs.limit.append(option);}
1096if(list_type_changed||(event&&prev_limit!==parseInt(dg.ui.pagination.inputs.limit.val()))){dg.ui.pagination.inputs.limit.trigger("change");}}}
1097function __peopleAction(){dg.ui.people={};dg.ui.header.navigation.setActiveTab('people');if(dg.service.iAmPage('^\/people'))
1098index();else if(dg.service.iAmPage('^\/people\/([0-9]+)\/'))
1099people();function index(){dg.ui.people.homepage={};dg.ui.people.homepage.infinite_scroll=dg.service.infiniteScroll({container:$("#infinite-scroller-container"),limiter:$(".footer-container"),button:$("#infinite-scroller-load-more"),params:{sub_category:'people',limit:24}});}
1100function people(){dg.ui.people.person={};}}
1101function __prcompaniesAction(){dg.ui.pr_companies={};dg.ui.header.navigation.setActiveTab('btl');if(dg.service.iAmPage('^\/pr-companies'))
1102index();function index(){dg.ui.pr_companies.homepage={};dg.ui.pr_companies.homepage.infinite_scroll=dg.service.infiniteScroll({container:$("#infinite-scroller-container"),limiter:$(".footer-container"),button:$("#infinite-scroller-load-more"),params:{category:'pr_companies',limit:24}});}}
1103function __producerAction(){dg.ui.producer={};dg.ui.header.navigation.setActiveTab('producers');if(dg.service.iAmPage('^\/producers$'))
1104index();else if(dg.service.iAmPage('^\/producers\/([0-9]+)\/'))
1105producer();else if(dg.service.iAmPage('^\/producers\/advanced-search$'))
1106advancedSearch();function index(){dg.ui.producer.homepage={};dg.ui.producer.homepage.infinite_scroll=dg.service.infiniteScroll({container:$("#infinite-scroller-container"),limiter:$(".footer-container"),button:$("#infinite-scroller-load-more"),params:{category:'producers',limit:24}});}
1107function producer(){dg.ui.producer.producer={};dg.ui.producer.producer.el={};dg.ui.producer.producer.el.mobile_nav=$(".advanced-producer-nav");if(dg.ui.producer.producer.el.mobile_nav.length){var $items=dg.ui.producer.producer.el.mobile_nav.find(".list__item");$items.on("click",function(e){if(dg.touch_enabled===true){var $item=$(this),$siblings=$item.siblings();$siblings.removeClass("list__item--active");$item.addClass("list__item--active");}});}}
1108function advancedSearch(){var params={};dg.ui.producer.advanced_search={};dg.ui.producer.advanced_search.el={};dg.ui.producer.advanced_search.el.gen1=$("[name='gen1']");dg.ui.producer.advanced_search.el.gen2=$("[name='gen2']");dg.ui.producer.advanced_search.el.gen3=$("[name='gen3']");dg.ui.producer.advanced_search.el.gen4=$("[name='gen4']");dg.ui.producer.advanced_search.el.gen2.html("<option value=''>Category 2</option>").prop("disabled",true);dg.ui.producer.advanced_search.el.gen3.html("<option value=''>Category 3</option>").prop("disabled",true);dg.ui.producer.advanced_search.el.gen4.html("<option value=''>Category 4</option>").prop("disabled",true);$(".generation-select").each(function(){var $this=$(this);$this.change(function(){params.parent_id=$(this).val();console.log($(this).val(),$this.val().length);dg.api.bwsGetCategories({parent_id:params.parent_id},function(response){var prev_select_id=$this.data("gen");var next_select_id=prev_select_id+1;if(prev_select_id==1||$this.val().length==0){dg.ui.producer.advanced_search.el.gen2.html("<option value=''>Category 2</option>").prop("disabled",true);dg.ui.producer.advanced_search.el.gen3.html("<option value=''>Category 3</option>").prop("disabled",true);dg.ui.producer.advanced_search.el.gen4.html("<option value=''>Category 4</option>").prop("disabled",true);}
1109if(prev_select_id==2||$this.val().length==0){dg.ui.producer.advanced_search.el.gen3.html("<option value=''>Category 3</option>").prop("disabled",true);dg.ui.producer.advanced_search.el.gen4.html("<option value=''>Category 4</option>").prop("disabled",true);}
1110if(prev_select_id==3||$this.val().length==0){dg.ui.producer.advanced_search.el.gen4.html("<option value=''>Category 4</option>").prop("disabled",true);}
1111response=JSON.parse(response);if(response.length>0){console.log(response,response.length);dg.ui.producer.advanced_search.el['gen'+next_select_id].prop("disabled",fal
1111se);dg.ui.producer.advanced_search.el['gen'+next_select_id].html("<option value=''>Category "+next_select_id+"</option>");for(var i=0;i<response.length;i++){dg.ui.producer.advanced_search.el['gen'+next_select_id].append("<option value='"+response[i].id+"'>"+response[i].name+"</option>");}}});});});}}
1112function __shopAction(){dg.ui.shop={};if(dg.service.iAmPage('^\/shop$'))
1113shopFront();else if(dg.service.iAmPage('^\/shop\/search'))
1114search();else if(dg.service.iAmPage('^\/shop\/basket$'))
1115controls();else if(dg.service.iAmPage('^\/shop\/your-details$'))
1116yourDetails();dg.ui.copy_protection.disable();if($("#shop-filter").length){dg.ui.shop.filter={};dg.ui.shop.filter.state="closed";dg.ui.shop.filter.button=$(".shop-filter-toggle");dg.ui.shop.filter.list=$("#shop-filter");dg.ui.shop.filter.button.on("click",function(){if(dg.ui.shop.filter.state==="closed"){dg.ui.shop.filter.button.removeClass("button--outline");dg.ui.shop.filter.list.removeClass("show-for-large");dg.ui.shop.filter.state="open";}
1117else{dg.ui.shop.filter.button.addClass("button--outline");dg.ui.shop.filter.list.addClass("show-for-large");dg.ui.shop.filter.state="closed";}});}
1118function shopFront(){dg.ui.header.navigation.setActiveTab('shop');dg.ui.shop={};var $load_more=$("#infinite-scroller-load-more"),mongo_oids=$load_more.data("oids");dg.ui.shop.infinite_scroll=dg.service.infiniteScroll({container:$("#infinite-scroller-container"),limiter:$(".footer-container"),button:$("#infinite-scroller-load-more"),params:{limit:20,skip_oids:mongo_oids},cnf:{source:'/api/shop/search',template:'shop_item'}});}
1119function search(){dg.ui.header.navigation.setActiveTab('shop');}
1120function yourDetails(){dg.ui.shop.your_details={};dg.ui.shop.your_details.book_delivery=$("#d_yes");dg.ui.shop.your_details.newsletter_opt_in=$("#newsletter_opt_in");dg.ui.shop.your_details.terms=$("#global_terms_checkbox");dg.ui.shop.your_details.show_forgotten_password=$("#show-forgot-login-password-button");dg.ui.shop.your_details.hide_forgotten_password=$("#hide-forgot-login-password-button");dg.ui.shop.your_details.login_form=$("#login-form");dg.ui.shop.your_details.forgot_password_form=$("#forgot-password-form");dg.ui.shop.your_details.toggle_register_button=$("#shop_log_in_choice");dg.ui.shop.your_details.toggle_text=dg.ui.shop.your_details.toggle_register_button.text();displayVat();dg.ui.shop.your_details.book_delivery.on("change",function(){dg.ui.shop.billingAddress(this.form);})
1121dg.ui.shop.your_details.newsletter_opt_in.on("change",function(){if($(this).is(":checked")){$(this).parents(".checkbox-container").addClass("border-info");}
1122else $(this).parents(".checkbox-container").removeClass("border-info");});dg.ui.shop.your_details.terms.on("change",function(){if($(this).is(":checked")){$(this).parents(".checkbox-container").addClass("border-info");}
1123else $(this).parents(".checkbox-container").removeClass("border-info");});dg.ui.shop.your_details.show_forgotten_password.on("click",function(){hideAndShow(dg.ui.shop.your_details.forgot_password_form,dg.ui.shop.your_details.login_form)});dg.ui.shop.your_details.hide_forgotten_password.on("click",function(){hideAndShow(dg.ui.shop.your_details.forgot_password_form,dg.ui.shop.your_details.login_form)});if($(".show-register-form")){var toggle_text=dg.ui.shop.your_details.toggle_register_button.data("swap-button-text");dg.ui.shop.your_details.toggle_register_button.on("click",function(){$button=$(this);$(".show-register-form").each(function(){if($(this).hasClass("hide"))
1124$(this).removeClass("hide");else
1125$(this).addClass("hide");});var text=$button.html();$button.html(toggle_text);toggle_text=text;});}}
1126function controls(){dg.ui.shop.controls={};dg.ui.shop.controls.el={};dg.ui.shop.controls.el.incrementer=$("button.increment");dg.ui.shop.controls.el.incrementer.each(function(){$(this).on("click",function(event){dg.ui.shop.controls.el.item_id=$(this).attr("data-item-id");dg.ui.shop.controls.el.increment_type=$(this).attr("data-increment");incrementItemQty(event,dg.ui.shop.controls.el.increment_type,dg.ui.shop.controls.el.item_id)});});dg.ui.shop.controls.el.remove_item=$("button.remove");dg.ui.shop.controls.el.remove_item.each(function(){$(this).on("click",function(event){dg.ui.shop.controls.el.item_id=$(this).attr("data-item-id");shopRemoveItem(event,dg.ui.shop.controls.el.item_id);});});dg.ui.shop.controls.el.updated_item=$("li.item.updated");if(dg.service.elementExists(dg.ui.shop.controls.el.updated_item)){itemUpdated($updated_item);}}
1127function displayVat(){dg.ui.shop.display_vat={};dg.ui.shop.display_vat.el={};dg.ui.shop.display_vat.el.vat_number=$(".vat_number");dg.ui.shop.display_vat.el.billing_country=$("#billing_country");dg.ui.shop.display_vat.el.vat_number_input=$("#vat_number_input");dg.ui.shop.display_vat.el.vat_exempt=$("#vat_exempt");dg.ui.shop.display_vat.el.billing_country.on("change",function(){modifyVat($(this).val());});dg.ui.shop.display_vat.el.vat_number_input.on("keyup change",function(){checkExempt();});}
1128function incrementItemQty(event,increment_type,item_id){dg.ui.shop.increment_item_qty={};dg.ui.shop.increment_item_qty.el={};
1128dg.ui.shop.increment_item_qty.el.quantity_input=$("input#shop_quantity_update_"+item_id);dg.ui.shop.increment_item_qty.el.current_quantity=parseInt(dg.ui.shop.increment_item_qty.el.quantity_input.attr("data-current-quantity"));dg.ui.shop.increment_item_qty.el.max_quantity=parseInt(dg.ui.shop.increment_item_qty.el.quantity_input.attr("data-max"));dg.ui.shop.increment_item_qty.el.qty=(increment_type=="up")?(dg.ui.shop.increment_item_qty.el.current_quantity+1):(dg.ui.shop.increment_item_qty.el.current_quantity-1);if(dg.ui.shop.increment_item_qty.el.qty==0)shopRemoveItem(event,item_id);else if(dg.ui.shop.increment_item_qty.el.qty>dg.ui.shop.increment_item_qty.el.max_quantity)
1129{alert("This item is limited to a maximum of "+dg.ui.shop.increment_item_qty.el.max_quantity+" per order");event.preventDefault();}
1130else dg.ui.shop.increment_item_qty.el.quantity_input.val(dg.ui.shop.increment_item_qty.el.qty);}
1131function shopRemoveItem(event,item_id){var c=confirm("Remove this item from your basket?");event.preventDefault();if(c==false)return;window.location.href='/shop/basket?remove='+item_id;}
1132function itemUpdated(item){setTimeout(function(){item.addClass("resolved");},600);}
1133function checkExempt(){var $input=dg.ui.shop.display_vat.el.vat_number_input,$vat_exempt=dg.ui.shop.display_vat.el.vat_exempt,is_exempt=($.trim($input.val()))?"yes":"no";$vat_exempt.val(is_exempt);}
1134function modifyVat(country_code){var $vat_exempt=dg.ui.shop.display_vat.el.vat_exempt,$vat_number=dg.ui.shop.display_vat.el.vat_number,$vat_number_input=dg.ui.shop.display_vat.el.vat_number_input,response=is_in_eu_not_gb(country_code);if(response=="GB"){$vat_number.hide();$vat_number_input.attr("required",false);$vat_number_input.val("");$vat_exempt.val("no");}
1135else if(response=="EU"){$vat_number.show();$vat_number_input.attr("required",true);checkExempt();}
1136else{$vat_number.hide();$vat_number_input.attr("required",false);$vat_number_input.val("");$vat_exempt.val("yes");}}
1137function hideAndShow($hide_el,$show_el){if($show_el.hasClass("hide")){$show_el.removeClass("hide");$hide_el.addClass("hide");}
1138else{$show_el.addClass("hide");$hide_el.removeClass("hide");}}
1139dg.ui.shop.billingAddress=function(f){if(f.d_yes.checked==true){f.vars_central_books_street1.value=f.street.value;f.vars_central_books_street2.value=f.street2.value;f.vars_central_books_city.value=f.city.value;f.vars_central_books_state.value=f.state.value;f.vars_central_books_postcode.value=f.postCode.value;f.vars_central_books_country.value=f.country.value;var checkout_button_distance=(Math.round($("input#global_terms_checkbox").offset().top)-20);$('html, body').animate({scrollTop:checkout_button_distance},1400);}}}
1140function __Agegate(){var context=this;var private={};private.cookie_key="diffordsguide_com_age_gate";this.displaying=false;this.el={};this.el.modal=$("#age-gate");this.el.submit=$("#age-gate-submit");this.el.dob_day=this.el.modal.find("select[name='agegate_dob_day']");this.el.dob_month=this.el.modal.find("select[name='agegate_dob_month']");this.el.dob_year=this.el.modal.find("select[name='agegate_dob_year']");this.minimum_age=parseInt(this.el.modal.data("minimum-age"))||18;var minimum_age_date=new Date();minimum_age_date.setHours(23,59,59,0);minimum_age_date.setYear(minimum_age_date.getFullYear()-this.minimum_age);this.minimum_age_epoch=minimum_age_date.getTime();if(this.el.modal.length&&dg.cookies.has(private.cookie_key)===false){this.el.modal.foundation('open');this.displaying=true;this.el.submit.on("click",function(){if(isOldEnough()){dg.cookies.set(private.cookie_key,1,365);context.el.modal.foundation('close');context.displaying=false;}
1141else{}});this.el.dob_day.on("change",toggleSubmit);this.el.dob_month.on("change",toggleSubmit);this.el.dob_year.on("change",toggleSubmit);}
1142function toggleSubmit(){var disable=isOldEnough()?false:true;context.el.submit.prop("disabled",disable);}
1143function isOldEnough(){var dob_day=context.el.dob_day.val();var dob_month=context.el.dob_month.val();var dob_year=context.el.dob_year.val();if(!dob_day||!dob_month||!dob_year)return false;var submitted_date=new Date(dob_year+"-"+dob_month+"-"+dob_day);submitted_date.setHours(0,0,0,0);var submitted_epoch=submitted_date.getTime();return submitted_epoch<context.minimum_age_epoch;}
1144return this;}
1145function __Api(dg){var context=this;var private={};private.debug=null;private.max_attempts=3;private.retry_timeout=1000;this.infiniteScroll=function(options,callback){var request={};request.source=options.source||null;request.params=options.params||{};request.method="GET";if(request.params.skip_oids!==undefined)request.method="POST";request.callback=function(response){if(response.match("ERROR"))
1146retry(request,response);else
1147callback(JSON.parse(response));};execute(request);};this.vote=function(link_id,section,rating,callback){var request={};request.source="/api/dev/frontend/vote/register";
1147request.params={link_id:link_id||null,section:section||null,rating:rating||null};request.method="POST";request.callback=function(response){if(response.match("ERROR")){retry(request,response);}
1148else if(typeof callback==='function'){callback(response);}};execute(request);};this.addToBasket=function(params,callback){var request={};request.source="/api/dev/frontend/shop/add-to-basket";request.params={quantity:params.quantity||1,product_id:params.product_id||null,shopelement:params.shopelement||null,product_vars:params.product_vars||[],use_skew:params.use_skew||"no"};request.method="POST";request.callback=function(response){if(response.match("ERROR: rejected by cookie policy"))
1149callback(response);else if(response.match("ERROR: failed to add item to basket"))
1150callback(response);else if(response.match("ERROR"))
1151retry(request,response);else
1152callback(response);};execute(request);};this.bwsGetCategories=function(params,callback){var request={};request.source="/api/dev/frontend/bws/dropdowns";request.params={parent_id:params.parent_id||null}
1153request.method="GET";request.callback=function(response){if(response.match("ERROR: failed to load category"))
1154callback(response);if(response.match("ERROR"))
1155retry(request,response);else
1156callback(response);};if(request.params.parent_id!==null){execute(request);}}
1157this.listShopCategories=function(params,callback){var request={};request.source="/api/shop/listcategories";request.params=params;request.method="GET";request.callback=function(response){if(response.match("ERROR: failed to load category"))
1158callback(response);if(response.match("ERROR"))
1159retry(request,response);else
1160callback(JSON.parse(response));};if(request.params.parent_id!==null){execute(request);}}
1161this.getComments=function(params,callback){var request={};request.source="/api/comment/read/";request.source+=params.link_table+"/";request.source+=params.link_id;request.params=params;request.method="GET";request.callback=function(response){if(response.match("ERROR"))
1162retry(request,response);else
1163callback(JSON.parse(response));};execute(request);};this.postComment=function(params,callback){var request={};request.source="/api/comment/write/";request.source+=params.link_table+"/";request.source+=params.link_id;request.params=params;request.method="POST";request.callback=function(response){if(response.match("ERROR"))
1164callback("FAIL");else
1165callback(JSON.parse(response));};execute(request);};this.reportComment=function(params,callback){var request={};request.source="/api/comment/report/";request.source+=params.link_table+"/";request.source+=params.link_id;request.params=params;request.method="POST";request.callback=function(response){if(response.match("ERROR"))
1166retry(request,response);else
1167callback(response);};execute(request);};this.deleteComment=function(params,callback){var request={};request.source="/api/comment/delete/";request.source+=params.link_table+"/";request.source+=params.link_id;request.params=params;request.method="POST";request.callback=function(response){if(response.match("ERROR"))
1168retry(request,response);else
1169callback(response);};execute(request);};this.getYourComments=function(params,callback){var request={};request.source="/api/comment/your-comments";request.params=params;request.method="GET";request.callback=function(response){if(response.match("ERROR"))
1170retry(request,response);else
1171callback(JSON.parse(response));};execute(request);};this.favourite=function(params,callback){var request={};request.source="/api/dev/frontend/favourite/";request.source+=(!!params.favourite)?"add":"remove";request.params={link_table:params.link_table,link_id:params.link_id}
1172request.method="GET";request.callback=function(response){if(response.match("ERROR"))
1173retry(request,response);else
1174callback(response);};execute(request);};this.wishList=function(params,callback){var request={};request.source="/api/dev/frontend/wishlist/";request.source+=(!!params.add)?"add":"remove";request.params={link_table:params.link_table,link_id:params.link_id}
1175request.method="POST";request.callback=function(response){if(response==="FAIL"){if(typeof callback==="function"){callback({status:"error"});}}
1176else{if(response.match("ERROR")){retry(request,response);}
1177else{if(typeof callback==="function"){callback({status:response});}}}};request.onReject=function(){if(typeof callback==="function"){callback({status:"error"});}};execute(request);};this.addBrandToCabinet=function(params,callback){var request={};request.source="/api/dev/frontend/cabinet/add-brand";request.params={id:params.id||null};request.method="POST";request.callback=function(response){if(response==="FAIL"){respond({status:"error"});return;}
1178var result=(typeof response==="string"&&dg.service.isJson(response))?JSON.parse(response):response;if(!result||!result.status){retry(request,"ERROR");return;}
1179respond(result);};request.onReject=function(){respond({status:"rejected"});};function respond(result){if(typeof callback==="function"){callback(result);}}
1180execute(request);};this.updateTried=function(params,callback){var request={};request.source="/api/dev/frontend/contactengagement/tried";request.params={link_table:params.link_table,link_id:params.link_id,value:params.tried}
1181request.method="POST";request.callback=function(response){if(response==="FAIL"){if(typeof callback==="function"){callback({status:"error"});}}
1182else{if(response.match("ERROR")){retry(request,response);}
1183else{if(typeof callback==="function"){callback({status:response});}}}};request.onReject=function(){if(typeof callback==="function"){callback({status:"error"});}};execute(request);};this.loadMyBarItems=function(pagination,callback){var request={};request.source="/api/dev/frontend/mybar/load-items";request.params={pagination:pagination||{}}
1184request.method="GET";request.callback=function(response){if(response==="FAIL"){if(dg.myBarService)dg.myBarService.showFatalError();}
1185else if(response.match("ERROR")){retry(request,response);}
1186else{callback(JSON.parse(response));}};execute(request);};this.loadMyBarFavourites=function(pagination,callback){var request={};request.source="/api/dev/frontend/mybar/load-favourites";request.params=pagination||{};request.method="GET";request.callback=function(response){if(response==="FAIL"){if(dg.myBarService)dg.myBarService.showFatalError();}
1187else if(response.match("ERROR")){retry(request,response);}
1188else{callback(JSON.parse(response));}};execute(request);};this.loadMyBarWishList=function(pagination,callback){var request={};request.source="/api/dev/frontend/mybar/load-wish-list";request.params=pagination||{};request.method="GET";request.callback=function(response){if(response==="FAIL"){if(dg.myBarService)dg.myBarService.showFatalError();}
1189else if(response.match("ERROR")){retry(request,response);}
1190else{callback(JSON.parse(response));}};execute(request);};this.loadMyBarSearchResults=function(params,callback){var request={};request.source="/api/dev/frontend/mybar/search-item";request.params={};request.params.keyword=params.keyword||null;request.params.limit=params.limit||20;request.params.offset=params.offset||0;request.params.sub_type=params.sub_type||'all';request.method="GET";request.callback=function(response){if(response==="FAIL"){if(dg.myBarService)dg.myBarService.showFatalError();}
1191else if(response.match("ERROR")){retry(request,response);}
1192else{callback(JSON.parse(response));}};execute(request);};this.loadMyBarRecipes=function(params,callback){var request={};request.source="/api/dev/frontend/mybar/load-recipes";request.params={};request.params.keyword=params.keyword||null;request.params.limit=params.limit||10;request.params.sort=params.sort||null;request.params.offset=params.offset||0;request.params.allow_alt_ingredients=params.allow_alt_ingredients||null;request.params.present_hidden=params.present_hidden||null;request.params.include_non_alcoholic=params.include_non_alcoholic||null;request.params.hide_favourites=params.hide_favourites||null;
1192if(params.custom_ingredient_ids!==undefined){request.params.custom_ingredient_ids=params.custom_ingredient_ids;request.params.use_custom_ingredient_ids=1;request.params.custom_ingredients_only=params.custom_ingredients_only||null;}
1193request.method="POST";request.callback=function(response){if(response==="FAIL"){if(dg.myBarService)dg.myBarService.showFatalError();}
1194else if(response.match("ERROR")){retry(request,response);}
1195else{callback(JSON.parse(response));}};execute(request);};this.loadMyBarSubmittedRecipes=function(params,callback){var request={};request.source="/api/dev/frontend/mybar/load-user-generated-recipes";request.params={};request.params.keyword=params.keyword||null;request.params.limit=params.limit||10;request.params.offset=params.offset||0;request.method="POST";request.callback=function(response){if(response==="FAIL"){if(dg.myBarService)dg.myBarService.showFatalError();}
1196else if(response.match("ERROR")){retry(request,response);}
1197else{callback(JSON.parse(response));}};execute(request);};this.loadMyBarPantry=function(callback){var request={};request.source="/api/dev/frontend/mybar/load-pantry-items";request.params={};request.method="GET";request.callback=function(response){if(response==="FAIL"){if(dg.myBarService)dg.myBarService.showFatalError();}
1198else if(response.match("ERROR")){retry(request,response);}
1199else{callback(JSON.parse(response));}};execute(request);};this.togglePantryIngredient=function(ingredient_id,action,callback){var request={};request.source="/api/dev/frontend/mybar/toggle-pantry-ingredient";request.params={ingredient_id:ingredient_id,action:action};request.method="POST";request.callback=function(response){if(response==="FAIL"){if(dg.myBarService)dg.myBarService.showFatalError();}
1200else if(response.match("ERROR")){retry(request,response);}
1201else if(typeof callback==="function"){callback();}};execute(request);};this.addMyBarItem=function(type,sub_type,link_table,link_id,callback){var request={};request.source="/api/dev/frontend/mybar/add-item";request.params={'type':type,'sub_type':sub_type,'link_id':link_id,'link_table':link_table};request.method="GET";request.callback=function(response){if(response==="FAIL"){if(dg.myBarService)dg.myBarService.showFatalError();}
1202else if(response.match("ERROR")){if(response.match("item already exists")){console.warn("item already exists");}
1203else{retry(request,response);}}
1204else{dg.service.captureEvent("item-added");callback(JSON.parse(response));}};execute(request);};this.deleteMyBarItem=function(id,callback){var request={};request.source="/api/dev/frontend/mybar/delete-item";request.params={};request.params.id=id;request.method="GET";request.callback=function(response){if(response!=="OK"){if(response==="FAIL"){if(dg.myBarService)dg.myBarService.showFatalError();}
1205else{retry(request,response);}}
1206else{dg.service.captureEvent("item-deleted");if(typeof callback==="function"){callback();}}};execute(request);};this.phrase=function(phrase,memcache_key,callback){var request={};request.source="/api/dev/frontend/mybar/phrase";request.method="POST";request.params={};request.params.mk=memcache_key||null;request.params.p={};for(var i=0;i<phrase.length;i++){request.params.p[i]=phrase[i];}
1207request.callback=function(response){if(response==="FAIL"){if(dg.myBarService)dg.myBarService.showFatalError();}
1208else if(response.match("ERROR")){retry(request,response);}
1209else{if(dg.service.isJson(response)){callback(JSON.parse(response));}
1210else{retry(request,response);}}};execute(request);};return this;function execute(request){if(!request.source){if(private.debug){console.error("API: source must be provided");}
1211return false;}
1212request.source=dg.service.hrefLangPrefixed(request.source);request.params._a=request.params._a||0;++request.params._a;if(request.method==="GET"){var $request=$.get(request.source,request.params);}
1213else if(request.method==="POST"){var $request=$.post(request.source,request.params);}
1214else{if(private.debug){console.error("API: method must be GET or POST");}
1215return false;}
1216$request.done(function(response){if(typeof request.callback==="function"){request.callback(response);}}).fail(function(response){if(private.debug){console.error("API: failed to complete request");}
1217if(response.status==403){if(request.onReject&&typeof request.onReject==="function"){request.onReject();}}});}
1218function retry(request,response){if(private.debug){console.warn("API: reattempting "+request.source);}
1219if(request.params._a>=private.max_attempts){if(private.debug){console.error("API: failed after "+private.max_attempts+" attempts");}
1220if(typeof request.callback==="function"){request.callback("FAIL");}
1221return;}
1222setTimeout(function(){execute(request);},private.retry_timeout);}}
1223function __BuyBox($el){var context=this;var private={};private.max_quantity=99;this.el={};this.el.wrapper=$el;this.el.quantity=this.el.wrapper.find(".buy-box__input");this.el.submit=this.el.wrapper.find(".buy-box__button");this.el.messages={};this.el.messages.submitting=this.el.wrapper.find(".buy-box__submitting");this.el.messages.success=this.el.wrapper.find(".buy-box__success");this.params={};this.params.quantity=parseInt(context.el.quantity.val()||1);this.params.product_id=this.el.wrapper.data("product-id")||null;this.params.shopelement=this.el.wrapper.data("shopelement")||null;this.params.product_vars=[];this.error=false;this.submitting=false;this.submitted=false;
1223this.el.submit.on("click",submitAPI);this.el.quantity.on("change",updateQuantity);function submitAPI(){if(context.submitting===true)return;context.submitting=true;showSubmittingMessage();dg.api.addToBasket(context.params,function(response){this.submitted=true;if(response.match(/ERROR/)){error();}
1224else{var basket=JSON.parse(response);dg.ui.header.basket.updateIndicator(basket.num_items);setTimeout(showSuccessMessage,500);}});}
1225function error(){context.error=true;context.el.wrapper.addClass("text-danger text-center");context.el.wrapper.html("We're sorry - an error occured whilst trying to add this item to your basket");}
1226function updateQuantity(){var value=context.el.quantity.val()||1;if(value>private.max_quantity)value=private.max_quantity;if(value<0)value=0;context.el.quantity.val(value);context.params.quantity=value;}
1227function showSubmittingMessage(){hideSuccessMessage();context.el.messages.submitting.removeClass("hide");}
1228function hideSubmittingMessage(){context.el.messages.submitting.addClass("hide");}
1229function showSuccessMessage(){hideSubmittingMessage();context.el.messages.success.removeClass("hide");}
1230function hideSuccessMessage(){context.el.messages.success.addClass("hide");}
1231return this;}
1232function __Comments($el,link_table,link_id){var context=this;this.ready=false;this.disabled=true;this.link_table=link_table;this.link_id=link_id;this.el={};this.el.container=$el;this.el.target=this.el.container.find("[data-comments-target]");this.el.loading=this.el.container.find("[data-comments-loading]");this.el.counter=this.el.container.find("[data-comments-count]");this.el.sort=this.el.container.find("[data-comments-sort]");this.el.submit_box=this.el.container.find("[data-comments-submit]");this.el.thread=null;this.comments=[];this.submitted_comment=null;this.input={};this.input.comment=this.el.container.find(".comment__reply");this.input.submit_button=this.el.container.find(".comment__submit-button");this.input.submit_button.on("click",submitComment);loadComments();return this;function disableComment(){context.disabled=true;if(context.input.submit_button){context.input.submit_button.prop("disabled",true);}
1233if(context.input.comment){context.input.comment.prop("disabled",true);}
1234if(context.el.sort){context.el.sort.prop("disabled",true);}}
1235function enableComment(){context.disabled=false;if(context.input.submit_button){context.input.submit_button.prop("disabled",false);}
1236if(context.input.comment){context.input.comment.prop("disabled",false);}
1237if(context.el.sort){context.el.sort.prop("disabled",false);}}
1238function submitComment(){if(context.disabled===true)return;var params={};params.comment=context.input.comment.val().trim();if(params.comment==""){context.input.comment.val("").focus();return false;}
1239params.link_table=context.link_table;params.link_id=context.link_id;disableComment();dg.api.postComment(params,function(response){if(response==="FAIL"){commentSubmitError(context.el.submit_box,context.el.target);}
1240else{context.submitted_comment=response;loadComments();disableComment();context.el.submit_box.remove();}});}
1241function loadComments(){disableComment();context.el.loading.removeClass("hide");if(context.el.thread===null){context.el.thread=dg.service.generateView('comments-thread').el;context.el.target.append(context.el.thread);}
1242var params={}
1243params.link_table=context.link_table;params.link_id=context.link_id;if(context.submitted_comment!==null&&'parent_id'in context.submitted_comment&&context.submitted_comment.parent_id){params.load_thread_id=context.submitted_comment.parent_id;}
1244dg.api.getComments(params,function(response){context.el.loading.addClass("hide");var comment_count=parseInt(response.thread_count);enableComment();var min_height=context.el.container.height()+"px";context.el.container.css('min-height',min_height);$(context.el.thread).empty();context.comments=response.thread;if(response.thread.length){for(var c=0;c<response.thread.length;++c){var view=buildCommentView(response.thread[c],context.el.thread);if(view.comment.component.reply_button){var _reply=dg.service.generateView('comment-reply',response.comment_as),reply=_reply.el;reply.id="show_reply_"+response.thread[c].id;reply.className+=" hide";view.item.el.appendChild(reply);_reply.component.textarea.id="reply_textarea_"+response.thread[c].id;_reply.component.submit_button.dataset.parent_id=response.thread[c].id;_reply.component.submit_button.id="submit_reply_"+response.thread[c].id;
1244_reply.component.submit_button.addEventListener("click",submitReply);view.comment.component.reply_button.addEventListener("click",function(){this.disabled=true;var reply=document.getElementById("show_reply_"+this.dataset.id);reply.className=reply.className.replace(/hide/,'');var item=document.getElementById("comment_item_"+this.dataset.id);item.className+=" comments__item--active";});}
1245if(response.thread[c].replies&&Array.isArray(response.thread[c].replies)&&response.thread[c].replies.length){var thread=dg.service.generateView('comments-thread').el;view.item.el.appendChild(thread);for(var i=0;i<response.thread[c].replies.length;++i){var reply_view=buildCommentView(response.thread[c].replies[i],thread);reply_view.comment.el.className+=" comment--reply";}
1246if(response.thread[c].reply_count>response.thread[c].replies.length&&response.thread[c].forum_href){var item=dg.service.generateView('comments-item').el;thread.appendChild(item);var view_more=document.createElement("A");view_more.className="cb-button cb-button--link cb-button--small";view_more.href=response.thread[c].forum_href+'/'+response.thread[c].id_encoded;var label_container=document.createElement("SPAN");label_container.className='cb-button__label';label_container.textContent="See More Replies";view_more.appendChild(label_container);var icon_container=document.createElement("SPAN");icon_container.className='cb-button__icon';icon_container.appendChild(dg.service.generateView('icon',{graphic:'arrow-right'}).el);view_more.appendChild(icon_container);item.appendChild(view_more);}}}}
1247if(response.thread.length>=2){context.el.counter.html('Showing '+response.thread.length+' of '+comment_count);var link_container=document.createElement('DIV');link_container.className='margin-top-half';var link=document.createElement('A');link.href=response.thread[0].forum_href;link.className='cb-link alt-font alt-font--natural flex-container';link_container.appendChild(link);link.appendChild(dg.service.generateView('icon',{graphic:'forum'}).el);var link_label=document.createElement('SPAN');link_label.textContent='See discussion in the Forum'
1248link_label.className='margin-left-half margin-right-half';link.appendChild(link_label);link.appendChild(dg.service.generateView('icon',{graphic:'arrow-right'}).el);$(link_container).insertBefore($(context.el.submit_box));var bottom_link=link_container.cloneNode(true);bottom_link.className='margin-top pad-top';$(context.el.container).append($(bottom_link));}
1249else{context.el.counter.html('Showing '+comment_count);}
1250context.ready=true;setTimeout(function(){context.el.container.css('min-height','auto');},0);});}
1251function submitReply(){var parent_id=this.dataset.parent_id,$textarea=$("#reply_textarea_"+parent_id),$reply_box=$("#show_reply_"+parent_id),$button=$(this);if(!parent_id||!$textarea)return false;var params={};params.comment=$textarea.val().trim();if(params.comment==""){$textarea.val("").focus();return false;}
1252params.link_table=context.link_table;params.link_id=context.link_id;params.parent_id=parent_id;$textarea.prop("disabled",true);$button.prop("disabled",true);dg.api.postComment(params,function(response){if(response==="FAIL"){commentSubmitError($reply_box,$reply_box.siblings(".comments:first"));}
1253else{$reply_box.remove();context.submitted_comment=response;loadComments();}});}
1254function buildCommentView(c,target){var response={};response.item=dg.service.generateView('comments-item');response.item.el.id="comment_item_"+c.id;target.appendChild(response.item.el);response.comment=dg.service.generateView('comment',c);if(context.submitted_comment!==null&&context.submitted_comment.id===c.id){response.comment.el.className+=" comment--new";}
1255response.item.el.appendChild(response.comment.el);if(response.comment.component.delete_button){response.comment.component.delete_button.dataset.id=c.id;response.comment.component.delete_button.addEventListener("click",function(){if(confirm("Are you sure you wish to delete this comment?\nThis action can not be undone.")===false)return;var params={};params.link_table=context.link_table;params.link_id=context.link_id;params.id=this.dataset.id;dg.api.deleteComment(params,function(r){if(r==="OK"){var $comment=$("#comment_item_"+params.id).find(".comment:first");var deleted_comment=dg.service.generateView('comment',{});deleted_comment.el.className+=" comment--deleted";$(deleted_comment.el).insertBefore($comment);$comment.remove();}
1256else{console.warn("error occured during comment delete");}});});}
1257if(c.parent_id&&c.reply_count>0&&c.forum_href){var outer_container=document.createElement('LI');outer_container.classList='pad-y';target.appendChild(outer_container);var inner_container=document.createElement('OL');inner_container.classList='comments';inner_container.style.marginLeft='1rem';inner_container.style.paddingLeft='1rem';outer_container.appendChild(inner_container);var see_reply_container=document.createElement('LI');inner_container.appendChild(see_reply_container);var see_reply_link=document.createElement('A');see_reply_link.href=c.forum_href+'/'+c.id_encoded;see_reply_link.classList='cb-button cb-button--link cb-button--small';var reply_link_label=document.createElement('SPAN');reply_link_label.textContent=c.reply_count+' repl'+(c.reply_count==1?'y':'ies');see_reply_link.appendChild(reply_link_label);see_reply_link.appendChild(dg.service.generateView('icon',{graphic:'arrow-right'}).el);see_reply_container.appendChild(see_reply_link);}
1258return response;}
1259function commentSubmitError($submit_box,$target){$submit_box.remove();var message=document.createElement("DIV");message.className="bg-danger pad margin-top text-center"
1260message.className+=" alt-font alt-font--natural alt-font--light";var icon=dg.service.generateView('icon',{graphic:'cancel',label:'An error occured'}).el;message.appendChild(icon);var p=document.createElement("DIV");p.className="text-small margin-top-xlight";p.textContent="Please reload the page and try again.";message.appendChild(p);$(message).insertBefore($target);}}
1261function __ContentOverlay(){var context=this;var private={};private.devices=['mobile','tablet','desktop'];private.classNames='overlay overlay-mobile overlay-tablet overlay-desktop';this.el=$(".main-content");this.state='hidden';this.device=null;
1261this.getState=function(){return context.state;};this.getDevice=function(){return context.device;};this.show=function(device){if(private.devices.indexOf(device)===false)device=null;var className="overlay";if(device!==null)className+="-"+device;context.el.removeClass(private.classNames).addClass(className);context.state='visible';context.device=device;};this.hide=function(){context.el.removeClass(private.classNames);context.state='hidden';context.device=null;};return this;}
1262function __Cookies(){var context=this;var private={};private.cookies=document.cookie;private.cookie_policy_key="diffords_cookiepolicy";private.policies=['essential','none','all'];this.enabled=navigator.cookieEnabled;this.policy=null;this.el={};this.el.required_message=$("#cookies-required-modal");if(this.enabled!==true&&this.el.required_message.length){this.el.required_message.foundation('open');}
1263this.has=function(key){return document.cookie.indexOf(key)!==-1;};this.set=function(key,value,days){days=days||365;value=value||1;var today=new Date;today.setDate(today.getDate()+days);var expires=today.toUTCString();document.cookie=key+"="+value+"; expires="+expires+"; path=/; secure; samesite=lax; domain=."+window.location.host+";"};this.get=function(key){var match=document.cookie.match(new RegExp('(^| )'+key+'=([^;]+)'));if(match)return match[2];};if(this.has(private.cookie_policy_key)){if(private.policies.includes(this.get(private.cookie_policy_key))){this.policy=this.get(private.cookie_policy_key);}}
1264if(window.gtag){var gtag_policy=null;window.gtag('get','consent','default',function(response){if(response.ad_storage==='granted'){gtag_policy='all';}
1265else if(response.ad_storage==='denied'){gtag_policy='none';}});if(gtag_policy!==null){this.policy=gtag_policy;if(this.get(private.cookie_policy_key)!==this.policy){this.set(private.cookie_policy_key,this.policy,365);}}}
1266if($("#js-cookie-form").length>0){var checkboxes_evaluating=false;var $all=$("#js-cookie-pref-all");var $analytics=$("#js-cookie-pref-analytics");var $reject=$("#js-cookie-pref-reject");$all.on("change",function(){if($(this).prop("checked")){$reject.prop("checked",false).trigger("cb.evaluate");}
1267else{$analytics.prop("checked",false).trigger("cb.evaluate");}
1268checkPreferences();});$analytics.on("change",function(){if($(this).prop("checked")){$all.prop("checked",true).trigger("cb.evaluate");$reject.prop("checked",false).trigger("cb.evaluate");}
1269checkPreferences();});$reject.on("change",function(){if($(this).prop("checked")){$all.prop("checked",false).trigger("cb.evaluate");$analytics.prop("checked",false).trigger("cb.evaluate");}
1270checkPreferences();});}
1271function checkPreferences(){if(checkboxes_evaluating===true)return false;checkboxes_evaluating=true;setTimeout(function(){if(!$all.prop('checked')&&!$analytics.prop('checked')&&!$reject.prop('checked')){$reject.prop("checked",true).trigger("cb.evaluate");}
1272checkboxes_evaluating=false;},1);}
1273return this;}
1274function __CopyProtection(){var context=this;this.disabled=true;this.displaying=false;this.el={};this.el.warning=$("#copy-protection-modal");this.protect=[{selector:"img",event_type:"contextmenu",show_warning:true},{selector:"body",event_type:"copy",show_warning:true},{selector:function(){$("a").each(function(){var img=$(this).find("img");if(img.length>0)return $(this);});},event_type:"dragstart",show_warning:false}];this.disable=function(){context.disabled=true;check();};this.enable=function(){context.disabled=false;check();};if(this.el.warning.length)this.enable();function showWarning(){context.el.warning.foundation("open");}
1275function hideWarning(){context.el.warning.foundation("close");}
1276function check(){var l=context.protect.length;for(var x=0;x<l;++x){var event_type=context.protect[x].event_type;var show_warning=context.protect[x].show_warning;$(context.protect[x].selector).each(function(){if(context.disabled===false){if($(this).hasClass("cpy-protected"))return;apply($(this),event_type,show_warning);}
1277else{remove($(this),event_type);}});}}
1278function apply($el,event_type,show_warning){$el.addClass("cpy-protected").bind(event_type,function(e){if(show_warning)showWarning();e.preventDefault();return false;});}
1279function remove($el,event_type){$el.removeClass("cpy-protected").unbind(event_type);}
1280return this;}
1281function __CustomSelect($el){var context=this;this.el={};this.el.wrapper=$el;this.el.input=$el.find(".custom-select__input:first");this.el.dropdown=$el.find(".custom-select__dropdown:first");this.el.trigger=$el.find(".custom-select__trigger:first");this.el.title=$el.find(".custom-select__title:first");this.el.items=$el.find(".custom-select__item");this.state='closed';
1281this.value=this.el.input.val();this.display_value=this.value;this.el.trigger.on("click",function(e){if(context.state==='closed')context.open();else context.close();});this.el.wrapper.on({'disable.item':function(e,v){return context.disableItem(v);},'enable.item':function(e,v){return context.enableItem(v);},'select.item':function(e,v){return context.setValue(v);}});this.el.input.on("updatecustomselect",function(){context.value=context.el.input.val();context.setSelectedItem();});this.el.items.each(function(){var $item=$(this);$item.on("click",function(){if(!$item.hasClass("custom-select__item--disabled")){context.setValue($item.data("value"));}});});this.disableItem=function(value){this.el.items.each(function(){var $item=$(this);if($item.data("value")==value){$item.addClass("custom-select__item--disabled");}});};this.enableItem=function(value){this.el.items.each(function(){var $item=$(this);if($item.data("value")==value){$item.removeClass("custom-select__item--disabled");}});};this.setValue=function(value,trigger_change){context.value=value;context.el.input.val(value);if(trigger_change!==false){context.el.input.trigger("change");}
1282context.setSelectedItem();};this.getSelectedItem=function(){var response=null;context.el.items.each(function(){if($(this).hasClass("custom-select__item--selected")){response=$(this);return false;}});return response;};this.setSelectedItem=function(){context.el.items.each(function(){if($(this).data("value")==context.value){$(this).addClass("custom-select__item--selected");context.display_value=$(this).data("title")||$(this)[0].innerHTML;}
1283else{$(this).removeClass("custom-select__item--selected");}});setTimeout(function(){context.close(function(){context.el.title.html(context.display_value);});},200);}
1284this.open=function(callback){context.state='open';this.el.wrapper.addClass("custom-select--active");dg.service.onNextClickOfNotThis([context.el.dropdown,context.el.trigger],context.close,true);if(typeof callback==='function')callback();};this.close=function(callback){context.state='closed';context.el.wrapper.removeClass("custom-select--active");if(typeof callback==='function')callback();};var selected_item=this.getSelectedItem();if(selected_item){this.setValue(selected_item.data("value"),false);}
1285return this;}
1286function __getAddress($el){var context=this;this.error=[];this.el={};this.el.wrapper=$el;this.id="js-get-address-io-"+dg.ui.get_address.length;this.cnf={};this.cnf.api_key=this.el.wrapper.data("key")||null;this.cnf.output_fields=this.el.wrapper.data("config");this.cnf.input_id=this.id;this.cnf.input_class=this.el.wrapper.data("input-class")||"";this.cnf.button_id=this.id+"-button";this.cnf.button_class=this.el.wrapper.data("button-class")||"button button--small";this.cnf.dropdown_id=this.id+"-dropdown";this.cnf.dropdown_class=this.el.wrapper.data("dropdown-class")||"";this.cnf.error_message_class=this.el.wrapper.data("error-message-class")||"";this.cnf.input_label="Enter Postcode...";this.on_input_event=new Event('input',{bubbles:true,cancelable:true});this.cnf.onLookupSuccess=function(){gtag_builder('event','lookup','get-address-io','success');};this.cnf.onLookupError=function(){gtag_builder('event','lookup','get-address-io','error');};this.cnf.onAddressSelected=function(e,i){for(var field in context.cnf.output_fields){var input=document.querySelector(context.cnf.output_fields[field]);if(input){input.dispatchEvent(context.on_input_event);}}}
1287if(typeof this.cnf.output_fields!=="object"){this.error.push("`data-target` is not valid JSON string");}
1288if(!this.cnf.api_key){this.error.push("`data-key` is not provided");}
1289if(this.error.length){for(var e=0;e<this.error.length;++e){console.error(this.error[e]);}}
1290else{this.el.wrapper.getAddress(this.cnf);};return this;}
1291function __Header(){let self=this;this.viewport_height=window.visualViewport.height;this.view_size=Foundation.MediaQuery.current;this.view_states={small:['small','medium'],large:['large','xlarge','xxlarge']};this.el=document.querySelector('#js-header');this.container=document.querySelector('#js-header-container');this.subscribe_button=document.querySelector('#js-button-join-subscribe');this.premium_link=document.querySelector('#js-link-premium');this.modals={};this.modals.menu={el:document.querySelector('#js-modal-menu'),is_o
1291pen:false,openMethod:modalOpenMenu,closeMethod:modalCloseMenu,toggle_button:document.querySelector('#js-button-menu-toggle')};this.modals.search={el:document.querySelector('#js-modal-search'),is_open:false,openMethod:modalOpenSearch,closeMethod:modalCloseSearch,toggle_button:document.querySelector('#js-button-search-toggle'),open_button:document.querySelector('#js-button-open-search-modal'),close_button:document.querySelector('#js-button-close-search-modal'),};this.modals.account={el:document.querySelector('#js-modal-account'),is_open:false,openMethod:modalOpenAccount,closeMethod:modalCloseAccount,toggle_button:document.querySelector('#js-button-account-toggle'),open_button:document.querySelector('#js-button-open-account-modal'),close_button:document.querySelector('#js-button-close-account-modal'),};for(let i in self.modals){let modal=self.modals[i];if(modal.open_button&&typeof modal.openMethod==='function'){modal.open_button.addEventListener('click',modal.openMethod);}
1292if(modal.close_button&&typeof modal.closeMethod==='function'){modal.close_button.addEventListener('click',modal.closeMethod);}
1293if(modal.toggle_button&&typeof modal.closeMethod==='function'&&typeof modal.openMethod==='function'){modal.toggle_button.addEventListener('click',()=>{if(modal.is_open){modal.toggle_button.ariaPressed='false';modal.closeMethod();}
1294else{modal.toggle_button.ariaPressed='true';modal.openMethod();}});}}
1295this.navigation={};this.navigation.el=document.querySelector('#js-navigation');this.navigation.active_item=null;this.navigation.active_target=null;this.navigation.skip_link=document.querySelector('#js-navigation-skip-link');navigationBuild();this.search={};this.search.input=document.querySelector('#js-input-header-search');this.search.target=document.querySelector('#js-header-search-target')
1296this.search.target_container=document.querySelector('#js-header-search-target-container')
1297this.search.footer=document.querySelector('#js-header-search-footer')
1298this.search.icon=document.querySelector('#js-header-search-icon')
1299this.search.submit_button=document.querySelector('#js-button-header-search')
1300this.search.timeout;this.search.timeout_buffer=300;this.search.query;this.search.last_query;this.search.query_min_chars=3;this.search.response;searchBuild();updateView();$(window).on('changed.zf.mediaquery',updateView);window.visualViewport.addEventListener('resize',onViewPortResize);return{setActiveSection:setActiveSection,modalCloseAll:modalCloseAll,modalOpenMenu:modalOpenMenu,modalCloseMenu:modalCloseMenu,modalOpenSearch:modalOpenSearch,modalCloseSearch:modalCloseSearch,modalOpenAccount:modalOpenAccount,modalCloseAccount:modalCloseAccount,navigation:{setActiveTab:setActiveSection},basket:{updateIndicator:updateBasketCounter}};function setActiveSection(section){let item=self.navigation.el.querySelector('.navigation-item--'+section);if(!item||item==self.navigation.base_item){return;}
1301self.navigation.el.classList.remove('navigation--no-active');self.navigation.el.classList.add('navigation--'+section);if(self.navigation.base_item){let target=navigationGetLevel(self.navigation.base_item);if(target){target.classList.add('hide');target.removeAttribute('data-level-open');}
1302self.navigation.base_item.removeAttribute('data-base');self.navigation.base_item.classList.remove('navigation-item--active');}
1303item.dataset.base=1;item.classList.add('navigation-item--active');self.navigation.base_item=item;let target=navigationGetLevel(item);if(target){target.classList.remove('hide');}
1304navigationCloseAllLevels(1);}
1305function searchBuild(){self.search.input.addEventListener('input',searchOnInput);self.search.input.addEventListener('blur',searchOnBlur);self.search.input.addEventListener('focus',searchOnFocus);}
1306function searchOnInput(){clearTimeout(self.search.timeout);self.search.query=self.search.input.value.trim();if(self.search.input.value.length<self.search.query_min_chars||self.search.query==self.search.last_query){return false;}
1307self.search.timeout=setTimeout(searchCallApi,self.search.timeout_buffer);}
1308function searchOnBlur(){self.search.footer.classList.remove('search-focus');document.body.addEventListener('click',searchNextClick,true);}
1309function searchOnFocus(){self.search.footer.classList.add('search-focus');if(self.search.response){searchShowResults();}}
1310function searchNextClick(event){if(isMobileView()){document.body.removeEventListener('click',searchNextClick,true);return false;}
1311if(self.modals.search.el.contains(event.target)){event.stopPropagation();}
1312else{document.body.removeEventListener('click',searchNextClick,true);searchHideResults();}}
1313function searchCallApi(){self.search.last_query=self.search.query;let url=window.location.origin+'/api/dev/frontend/search/autocomplete?'+new URLSearchParams({k:self.search.query,a:dg.active_action,limit:isDesktopView()?4:8});searchLoadingStart();fetch(url,{method:'GET',mode:'cors'}).then(response=>response.json()).then(body=>{self.search.response=body;searchBuildResults();setTimeout(searchLoadingEnd,300);});}
1314function searchLoadingStart(){self.search.icon.classList.add('svg-icon--loading');self.search.icon.querySelector('use').setAttributeNS('http://www.w3.org/1999/xlink','href','#svg-icon-loading');}
1315function searchLoadingEnd(){self.search.icon.classList.remove('svg-icon--loading');self.search.icon.querySelector('use').setAttributeNS('http://www.w3.org/1999/xlink','href','#svg-icon-search');}
1316function searchBuildResults(){self.search.target.innerHTML='';if(!self.search.response.results||self.search.response.results.length<1){let li=document.createElement('LI');li.className='list-item list-item--message';self.search.target.appendChild(li);let content=document.createElement('DIV');content.className='list-item__content';li.appendChild(content);let title=document.createElement('DIV');title.className='list-item__title';title.textContent='No results found';content.appendChild(title);let about=document.createElement('DIV');about.className='list-item__about';about.textContent='Please try a different search query';content.appendChild(about);searchShowResults();self.modals.search.el.classList.add('header-modal--no-results');self.search.footer.classList.add('hide');self.search.footer.ariaHidden=true;return;}
1317self.search.response.results.forEach(result=>{result.href=dg.service.hrefLangPrefixed(result.href);let li=document.createElement('LI');li.className='list-item';self.search.target.appendChild(li);if(result.cutout_image||result.image){let img_container=document.createElement('A');img_container.href=result.href;img_container.className='list-item__image-container';li.appendChild(img_container);let img=document.createElement('IMG');img.alt=result.name+' image';img.src=dg.service.cdnPrefix(result.cutout_image||result.image);img.className='list-item__image';img_container.appendChild(img);}
1318let content=document.createElement('DIV');content.className='list-item__content';li.appendChild(content);let title=document.createElement('A');title.className='list-item__title';title.textContent=result.name;title.href=result.href;content.appendChild(title);let title_icon=document.createElementNS('http://www.w3.org/2000/svg','svg');title_icon.setAttribute('class','svg-icon');title.appendChild(title_icon);let title_icon_ref=document.createElementNS('http://www.w3.org/2000/svg','use');title_icon_ref.setAttributeNS('http://www.w3.org/1999/xlink','href','#svg-icon-arrow-right');title_icon.appendChild(title_icon_ref);if(result.section){let section=document.createElement('DIV');section.className='list-item__section';content.appendChild(section);let icon={'recipes':'#svg-icon-cocktails','cocktails':'#svg-icon-cocktails','spiritbrands':'#svg-icon-bws','pubsandbars':'#svg-icon-bars','btl':'#svg-icon-btl','encyclopedia':'#svg-icon-articles','bundle':'#svg-icon-articles'}[result.category]||null;if(icon){let section_icon=document.createElementNS('http://www.w3.org/2000/svg','svg');section_icon.setAttribute('class','svg-icon');section.appendChild(section_icon);let section_icon_ref=document.createElementNS('http://www.w3.org/2000/svg','use');section_icon_ref.setAttributeNS('http://www.w3.org/1999/xlink','href',icon);section_icon.appendChild(section_icon_ref);}
1319let section_title=document.createElement('DIV');section_title.innerHTML=result.section;section.appendChild(section_title);}
1320let about=document.createElement('DIV');about.className='list-item__about';about.textContent=result.content;content.appendChild(about);});self.modals.search.el.classList.remove('header-modal--no-results');self.search.footer.classList.remove('hide');self.search.footer.removeAttribute('aria-hidden');let submit_text='See all ';if(self.search.response.count>1){submit_text+=self.search.response.count+' ';}
1321submit_text+='results';self.search.submit_button.innerHTML=submit_text;searchShowResults();}
1322function searchShowResults(){self.search.target_container.classList.remove('hide');self.search.target_container.removeAttribute('aria-hidden');}
1323function searchHideResults(){self.search.target_container.classList.add('hide');self.search.target_container.ariaHidden=true;}
1324function navigationBuild(){if(!self.navigation.el){return;}
1325let items=self.navigation.el.querySelectorAll('.navigation-item[data-next-level-id]');self.navigation.items=Array.from(items).filter(item=>navigationGetLevel(item));self.navigation.base_item=null;self.navigation.items.forEach(item=>{if(item.dataset.base)self.navigation.base_item=item;if(!item.dataset.static){item.addEventListener('click',navigationButtonClick);}});self.navigation.el.querySelectorAll('.navigation-item--back-button').forEach(item=>{item.addEventListener('click',navigationCloseAllLevels);});Array.from(self.navigation.el.querySelectorAll('a.navigation-item, button.navigation-item')).forEac
1325h(item=>{item.addEventListener('touchstart',()=>{item.classList.add('navigation-item--touchstart');});item.addEventListener('touchend',()=>{item.classList.remove('navigation-item--touchstart');});if(item.tagName=='A'){item.addEventListener('click',()=>{item.classList.add('navigation-item--active')});}});if(self.navigation.skip_link){let skip_link_anchor_id=self.navigation.skip_link.href.split('#')[1];if(skip_link_anchor_id){let skip_link_anchor=document.getElementById(skip_link_anchor_id);if(skip_link_anchor){self.navigation.skip_link.addEventListener('focus',()=>{skip_link_anchor.classList.add('navigation-item--active');});self.navigation.skip_link.addEventListener('blur',()=>{skip_link_anchor.classList.remove('navigation-item--active');});}}}}
1326function navigationButtonClick(event){if(isDesktopView()&&this.dataset.level==0){return;}
1327event.preventDefault();navigationOpenNextLevel(this);}
1328function navigationCloseAllLevels(on_init){self.navigation.items.forEach(item=>navigationCloseLevel(item));if(self.navigation.base_item){let target=navigationGetLevel(self.navigation.base_item);if(self.navigation.base_item.dataset.static){if(isDesktopView()){target.removeAttribute('aria-hidden');}
1329else{target.ariaHidden=true;}}
1330else{if(on_init&&on_init instanceof Event==false){self.navigation.base_item.classList.add('navigation-item--active')
1331target.dataset.levelOpen=1;target.removeAttribute('aria-hidden');target.classList.remove('show-for-large')}
1332else if(isDesktopView()){self.navigation.base_item.classList.add('navigation-item--active')
1333target.dataset.levelOpen=1;target.removeAttribute('aria-hidden');}
1334else{target.removeAttribute('data-level-open');}}}
1335if(isMobileView()){self.modals.menu.el.scroll({top:0,behavior:'smooth'});if(self.navigation.base_item){let sub_level=navigationGetLevel(self.navigation.base_item);if(sub_level){let sub_item=sub_level.querySelector('.navigation-item--active[data-level="2"]');if(sub_item){let container=sub_item.parentNode.parentNode;if(container){let trigger_item=container.querySelector('.navigation-item[data-level="1"]');if(trigger_item){navigationOpenNextLevel(trigger_item);}}}}}}
1336self.modals.menu.el.dataset.levelOpen=navigationGetOpenLevelNumber();}
1337function navigationCloseLevel(item){let target=navigationGetOpenLevel(item);if(!target){return;}
1338item.classList.remove('navigation-item--active');target.ariaHidden=true;if(item.dataset.base){target.classList.add('show-for-large');self.modals.menu.el.dataset.levelOpen=navigationGetOpenLevelNumber();return;}
1339target.classList.add('hide');target.removeAttribute('data-level-open');if(navigationGetParentLevel(item)){if(isDesktopView()){let icon=item.querySelector('.show-for-large > .svg-icon > use');icon.setAttributeNS('http://www.w3.org/1999/xlink','href','#svg-icon-chevron-down');}
1340else{let icon=item.querySelector('.hide-for-large > .svg-icon > use');icon.setAttributeNS('http://www.w3.org/1999/xlink','href','#svg-icon-arrow-right');}
1341if(item.dataset.titleOpen){item.title=item.dataset.titleOpen;item.ariaLabel=item.dataset.titleOpen;}
1342item.ariaPressed='false';}
1343self.modals.menu.el.dataset.levelOpen=navigationGetOpenLevelNumber();}
1344function navigationOpenNextLevel(item){let target=navigationGetLevel(item);if(target.dataset.levelOpen){if(item.dataset.level>0){navigationCloseLevel(item);}
1345return;}
1346if(!navigationGetParentLevel(item)){navigationCloseAllLevels();}
1347else{let icon;if(isDesktopView()){icon=item.querySelector('.show-for-large > .svg-icon > use');}
1348else{icon=item.querySelector('.hide-for-large > .svg-icon > use');}
1349if(icon){icon.setAttributeNS('http://www.w3.org/1999/xlink','href','#svg-icon-close');}
1350if(item.dataset.titleClose){item.title=item.dataset.titleClose;item.ariaLabel=item.dataset.titleClose;}
1351item.ariaPressed='true';if(isDesktopView()){self.navigation.active_item=item;self.navigation.active_target=target;document.body.addEventListener('click',navigationCloseNextClick,true);}}
1352item.classList.add('navigation-item--active');target.classList.remove(item.dataset.base?'show-for-large':'hide');target.dataset.levelOpen=1;target.removeAttribute('aria-hidden');self.modals.menu.el.dataset.levelOpen=navigationGetOpenLevelNumber();}
1353function navigationCloseNextClick(event){if(isMobileView()){self.navigation.active_item=null;self.navigation.active_target=null;document.body.removeEventListener('click',navigationCloseNextClick,true);return false;}
1354if(event.target==self.navigation.active_target||self.navigation.active_target.contains(event.target)){return false;}
1355event.stopPropagation();document.body.removeEventListener('click',navigationCloseNextClick,true);navigationCloseLevel(self.navigation.active_item);self.navigation.active_item=null;self.navigation.active_target=null;}
1356function navigationGetOpenLevel(item){let target=navigationGetLevel(item);return(target&&target.dataset.levelOpen)?target:false;}
1357function navigationGetOpenLevelNumber(){return self.modals.menu.el.querySelectorAll('.navigation-item-sub-menu:not(.hide-for-large):not(.hide):not(.show-for-large)').length;}
1358function navigationGetLevel(item){return document.querySelector('#'+item.dataset.nextLevelId);}
1359function navigationGetParentLevel(item){let level=navigationGetLevel(item);if(!level.dataset.parentId){return false;}
1360return document.querySelector('#'+level.dataset.parentId);}
1361function modalCloseAll(){for(let i in self.modals){self.modals[i].closeMethod();}
1362searchHideResults();}
1363function modalOpen(name,callback){let modal=self.modals[name];if(modal.is_open)return;modalCloseAll();document.body.classList.add('header-modal-open');modal.is_open=true;modal.el.classList.remove('hide');modal.el.removeAttribute('aria-hidden');if(modal.open_button){toggleButtonState(modal.open_button,'hide',false);}
1364if(modal.close_button){toggleButtonState(modal.close_button,'show',false);}
1365if(modal.toggle_button){toggleButtonState(modal.toggle_button,'toggle',false);}
1366if(typeof callback==='function'){callback();}}
1367function modalClose(name,callback){let modal=self.modals[name];if(!modal.is_open)return;document.body.classList.remove('header-modal-open');modal.is_open=false;modal.el.scrollTop=0;modal.el.classList.add('hide');modal.el.ariaHidden=true;if(modal.open_button){toggleButtonState(modal.open_button,'show',true);}
1368if(modal.close_button){toggleButtonState(modal.close_button,'hide',true);}
1369if(modal.toggle_button){toggleButtonState(modal.toggle_button,'toggle',true);}
1370if(typeof callback==='function'){callback();}}
1371function toggleButtonState(button,state,modal_is_open){let container;if(button.dataset.containerId){container=document.querySelector('#'+button.dataset.containerId);}
1372if(state=='toggle'){if(modal_is_open){button.classList.remove('header__button--active');if(button.dataset.titleClose){button.title=button.dataset.titleOpen;button.ariaLabel=button.dataset.titleOpen;}
1373return;}
1374button.classList.add('header__button--active');if(button.dataset.titleOpen){button.title=button.dataset.titleClose;button.ariaLabel=button.dataset.titleClose;}
1375return;}
1376if(state=='hide'){(container||button).classList.add('hide');button.removeAttribute('aria-hidden');return;}
1377(container||button).classList.remove('hide');button.ariaHidden=true;}
1378function modalOpenMenu(){modalOpen('menu',()=>{let icon=self.modals.menu.toggle_button.querySelector('.svg-icon > use');icon.setAttributeNS('http://www.w3.org/1999/xlink','href','#svg-icon-close');});}
1379function modalCloseMenu(){modalClose('menu',()=>{self.modals.menu.toggle_button.ariaPressed='false';let icon=self.modals.menu.toggle_button.querySelector('.svg-icon > use');icon.setAttributeNS('http://www.w3.org/1999/xlink','href','#svg-icon-menu');});}
1380function modalOpenSearch(){modalOpen('search',()=>{self.modals.search.el.querySelector('.header-modal__input').focus();let icon=self.modals.search.toggle_button.querySelector('.svg-icon > use');icon.setAttributeNS('http://www.w3.org/1999/xlink','href','#svg-icon-close');});}
1381function modalCloseSearch(){modalClose('search',()=>{self.modals.search.toggle_button.ariaPressed='false';let icon=self.modals.search.toggle_button.querySelector('.svg-icon > use');icon.setAttributeNS('http://www.w3.org/1999/xlink','href','#svg-icon-search');self.modals.search.el.querySelector('.header-modal__input').blur();});}
1382function modalOpenAccount(){modalOpen('account',()=>{if(isDesktopView()){document.body.addEventListener('click',modalNextClickAccount,true);}
1383let icon=self.modals.account.toggle_button.querySelector('.header-account-item-chevron > use');icon.setAttributeNS('http://www.w3.org/1999/xlink','href','#svg-icon-chevron-up');});}
1384function modalCloseAccount(){modalClose('account',()=>{self.modals.account.toggle_button.ariaPressed='false';let icon=self.modals.account.toggle_button.querySelector('.header-account-item-chevron > use');icon.setAttributeNS('http://www.w3.org/1999/xlink','href','#svg-icon-chevron-down');});}
1385function modalNextClickAccount(event){if(isMobileView()||!self.modals.account.is_open){document.body.removeEventListener('click',modalNextClickAccount,true);return false;}
1386let button_container=document.querySelector('#'+self.modals.account.toggle_button.dataset.containerId);let button_click=event.target==button_container||button_container.contains(event.target);let modal_click=event.target==self.modals.account.el||self.modals.account.el.contains(event.target);if(button_click){event.stopPropagation();}
1387if(modal_click){return;}
1388document.body.removeEventListener('click',modalNextClickAccount,true);modalCloseAccount();}
1389function onViewPortResize(){if(!/iPhone|iPad|iPod/.test(window.navigator.userAgent)){self.viewport_height=window.visualViewport.height;}
1390let keyboard_offset=self.viewport_height-window.visualViewport.height;document.documentElement.style.setProperty('--keyboard-offset',`${keyboard_offset}px`);}
1391function updateView(event,new_size,old_size){self.view_size=new_size||Foundation.MediaQuery.current;if(isMobileView()){let vh=window.innerHeight*0.01;document.documentElement.style.setProperty('--vh',`${vh}px`);let content_offset=document.querySelector('#content-container').offsetTop;document.documentElement.style.setProperty('--content-offset',`${content_offset}px`);}
1392if(event&&event.namespace=='mediaquery.zf'){if((self.view_states.small.includes(self.view_size)&&self.view_states.small.includes(old_size))||(self.view_states.large.includes(self.view_size)&&self.view_states.large.includes(old_size))){return;}}
1393modalCloseAll();navigationCloseAllLevels(true);if(self.view_states.small.includes(self.view_size)){updateViewMobile();}
1394else{updateViewDesktop()}}
1395function updateViewDesktop(){self.modals.menu.toggle_button.ariaHidden=true;self.modals.search.toggle_button.ariaHidden=true;if(self.subscribe_button)self.subscribe_button.removeAttribute('aria-hidden');if(self.premium_link)self.premium_link.removeAttribute('aria-hidden');self.modals.search.el.removeAttribute('aria-hidden');self.navigation.items.forEach(item=>item.removeAttribute('role'));if(self.navigation.base_item){self.navigation.base_item.removeAttribute('tabindex');}
1396modalOpenMenu();}
1397function updateViewMobile(){self.modals.menu.toggle_button.removeAttribute('aria-hidden');self.modals.search.toggle_button.removeAttribute('aria-hidden');if(self.subscribe_button)self.subscribe_button.ariaHidden=true;if(self.premium_link)self.premium_link.ariaHidden=true;self.modals.search.el.ariaHidden=true;self.navigation.items.forEach(item=>{item.role='button'
1398item.tabIndex='0';});}
1399function isDesktopView(){return self.view_states.large.includes(self.view_size);}
1400function isMobileView(){return self.view_states.small.includes(self.view_size);}
1401function updateBasketCounter(count){let counter=document.querySelector('#js-link-basket');let premium=document.querySelector('#js-link-premium-mobile');if(counter){counter.dataset.notification=(parseInt(count)>9?'9+':count);if(premium){premium.classList.remove('hide-for-large');premium.classList.add('hide');counter.classList.remove('show-for-large');}}}}
1402function __ProductGallery($el){var context=this;this.generated_items={};this.building=false;this.enhanceable=typeof window.getComputedStyle(document.body).mixBlendMode!=='undefined';this.el={};this.el.wrapper=$el;this.el.display=this.el.wrapper.find(".product-gallery__display");this.el.upsell=this.el.display.find(".product-gallery__upsell");this.el.items=this.el.wrapper.find(".product-gallery__item");var index=0;this.el.items.each(function(i){var $item=$(this);if($item[0].tagName==='A'){$item.on('click',function(e){e.preventDefault();$('html,body').animate({scrollTop:$($item.attr("href")).offset().top},1000);});return true;}
1403if(index==0)displayItem($item);index++;$item.on("click",function(){displayItem($item);});});return this;function displayItem($item){context.el.items.removeClass("active");$item.addClass("active");display({id:$item.index(),type:$item.data("type")||"image",href:$item.data("href")||null,src:$item.data("src")||"",splash:$item.data("splash")||null,enhance:$item.data("enhance")||null});}
1404function display(i){if(context.building===true)return;context.building=true;if(context.generated_items[i.id]===undefined){i.type=i.type||"image";if(i.type==="video"){context.generated_items[i.id]=document.createElement("VIDEO");context.generated_items[i.id].controls=1;context.generated_items[i.id].controlsList="nodownload";if(i.splash){context.generated_items[i.id].poster=i.splash;}
1405var src=document.createElement("SOURCE");src.src=i.src;src.type=i.src_type||"video/mp4";context.generated_items[i.id].appendChild(src);}
1406else if(i.type==="youtube-video"){context.generated_items[i.id]=document.createElement("DIV");context.generated_items[i.id].className="aspect aspect--16-9 bg-box fill";var aspect_item=document.createElement("DIV");aspect_item.className="aspect__item";context.generated_items[i.id].appendChild(aspect_item);
1406var iframe=document.createElement("IFRAME");iframe.className="fill no-border";iframe.src=i.src;aspect_item.appendChild(iframe);}
1407else{context.generated_items[i.id]=document.createElement("IMG");context.generated_items[i.id].src=i.src;context.generated_items[i.id].alt=i.alt||"Product image";}
1408if(i.href){var anchor_wrap=document.createElement("A");anchor_wrap.href=i.href;anchor_wrap.appendChild(context.generated_items[i.id]);context.generated_items[i.id]=anchor_wrap;}}
1409context.el.display.empty().append(context.generated_items[i.id]);if(context.el.upsell.length>0&&context.generated_items[i.id].tagName=='IMG'){context.el.display.append(context.el.upsell)}
1410var already_enhanced=context.generated_items[i.id].dataset.enhanced||null;if(already_enhanced==1){context.el.display.addClass("enhanced");}
1411else if(already_enhanced!=-1&&i.enhance&&context.enhanceable){context.generated_items[i.id].onload=function(){if(context.el.display.width()>$(context.generated_items[i.id]).width()){context.el.display.addClass("enhanced");this.dataset.enhanced=1;}
1412else{this.dataset.enhanced=-1;}}}
1413else{context.el.display.removeClass("enhanced");}
1414context.building=false;}}
1415function __ServiceMyBar(dg){var context=this;var define=['keys','controls','container','pagination','counter','loader','items','updated_keys','APIresponse','route','pagination_base_limit','param','notification'];define.forEach(function(v){context[v]=null;});this.notification={};this.pagination={};this.param={};this.controls=['first','prev','next','last'];this.updated_keys=[];this.APIresponse={};this.items={};this.add_bottle={};this.add_bottle.el={};this.add_bottle.el.modal=$("#add-bottle-modal");this.el={};this.el.modal=$("#no-cocktails-modal");this.notification.wrapper=$(".notification");this.notification.items=[];if(this.notification.wrapper.length){this.notification.items=this.notification.wrapper.find(".notification__item");showNotifications();}
1416setBaseLimit();$(window).on("dg.resize.window",setBaseLimit);if(this.add_bottle.el.modal.length)initAddBottleModal();this.init=function(route){if(route==='index')initIndex();else if(route==='pantry')initPantry();else if(route==='recipes')initRecipes();else if(route==='favourites')initFavourites();else if(route==='wish-list')initWishList();else if(route==='search')initSearch();else if(route==='submit-cocktail')submitCocktail();else if(route==='submitted-cocktails')submittedCocktail();else if(route==='your-comments')initYourComments();};this.setRoute=function(route){context.route=route;setBaseLimit();};this.setKeys=function(){context.keys=[];for(var arg in arguments)context.keys.push(arguments[arg]);};this.getPagination=function(){context.keys.forEach(function(key){context.pagination[key]={};context.pagination[key].limit=context.pagination_base_limit;context.pagination[key].offset=0;context.pagination[key].controls={};context.controls.forEach(function(control){context.pagination[key].controls[control]=$(".my-bar-pagination[data-key='"+key+"'][data-action='"+control+"']");context.pagination[key].controls[control].on("click",paginate);});});return context.pagination;};this.getContainers=function(){context.container={};context.keys.forEach(function(key){context.container[key]=$(".my-bar-item-container[data-key='"+key+"']");});return context.container;};this.getCounters=function(){context.counter={};context.keys.forEach(function(key){context.counter[key]=$(".my-bar-item-counter[data-key='"+key+"']");});return context.counter;};this.getLoaders=function(){context.loader={};context.keys.forEach(function(key){context.loader[key]=$(".my-bar-item-loader[data-key='"+key+"']");});return context.loader;};this.showLoaders=function(updated_only){updated_only=updated_only===undefined?false:true;context[updated_only?'updated_keys':'keys'].forEach(function(key){context.showLoader(key);});};this.showLoader=function(key){context.loader[key].removeClass("hide");};this.hideLoaders=function(){context.keys.forEach(function(key){context.hideLoader(key);});};this.hideLoader=function(key){context.loader[key].addClass("hide");};this.emptyContainers=function(updated_only){updated_only=updated_only===undefined?fal
1416se:true;context[updated_only?'updated_keys':'keys'].forEach(function(key){context.emptyContainer(key);});}
1417this.emptyContainer=function(key){context.container[key].children().not(".my-bar-add-bottle").remove();}
1418this.populateContainer=function(key,items,build){if(items.length===0&&typeof context.onEmptyContainer==="function"){context.onEmptyContainer(key);}
1419items.forEach(function(item){if(build===true){item=buildItem(item,key).el;}
1420$(item).on({"item.deleted":function(){if(typeof context.onItemDelete==="function"){context.onItemDelete(key);}}});context.container[key].append(item);});context.updateCounter(key);};this.populateContainers=function(updated_only){updated_only=updated_only===undefined?false:true;context[updated_only?'updated_keys':'keys'].forEach(function(key){context.populateContainer(key,context.APIresponse.results[key].results,true);});};this.updateCounter=function(key){context.counter[key].html(context.APIresponse.results[key].total_result_count);}
1421this.enablePagination=function(key){(key===undefined?context.keys:[key]).forEach(function(key){var results=context.APIresponse.results[key],pagination=context.pagination[key];disable={};disable.first=pagination.offset==0;disable.prev=pagination.offset==0;disable.next=pagination.offset>=(results.total_result_count-pagination.limit);disable.last=pagination.offset>=(results.total_result_count-pagination.limit);for(var control in disable){pagination.controls[control].prop('disabled',disable[control]);if(typeof context.onEnablePagination==="function"){context.onEnablePagination(key);}}});};this.disablePagination=function(key){(key===undefined?context.keys:[key]).forEach(function(key){context.controls.forEach(function(control){context.pagination[key].controls[control][0].disabled=true;if(typeof context.onDisablePagination==="function"){context.onDisablePagination(key);}});});};this.setPaginationSort=function(sort){context.pagination.sort=sort;if(typeof context.onSort==="function")context.onSort();};this.setPaginationLimit=function(key,limit,paginate){var limit=parseInt(limit);limit=limit<0?0:limit;limit=isNaN(limit)?0:limit;context.pagination[key].limit=limit;if(typeof context.onPaginate==="function"&&paginate!==false)context.onPaginate();};this.setPaginationOffset=function(key,offset,paginate){var offset=parseInt(offset);offset=offset<0?0:offset;offset=isNaN(offset)?0:offset;context.pagination[key].offset=offset;if(typeof context.onPaginate==="function"&&paginate!==false)context.onPaginate();};this.setParam=function(key,name,value,callback){context.param[key]=context.param[key]||{};context.param[key][name]=value;if(typeof callback==="function")callback();};this.notify=function(params){if(params.href){var el=document.createElement("A");el.href=params.href;}
1422else{var el=document.createElement("DIV");}
1423el.className="notification__item transition-hide hide-down";if(params.type)el.className+=" notification__item--"+params.type;context.notification.wrapper.prepend(el);var grid=document.createElement("DIV");grid.className="grid-x";el.appendChild(grid);if(params.icon){var cell=document.createElement("DIV");cell.className="cell shrink pad-right-half";grid.appendChild(cell);var icon=dg.service.generateView('icon',{graphic:params.icon});cell.appendChild(icon.el);}
1424var cell=document.createElement("DIV");cell.className="cell auto align-self-middle-small";grid.appendChild(cell);if(params.title){var title=document.createElement("P");title.className="alt-font";if(params.copy)title.className+=" margin-bottom-light";else title.className+=" no-margin-bottom";title.innerHTML=params.title;cell.appendChild(title);}
1425if(params.copy){var copy=document.createElement("P");copy.className="hide-for-small-only no-margin";copy.innerHTML=params.copy;cell.appendChild(copy);}
1426setTimeout(function(){$(el).removeClass("hide-down");if(params.close){var delay=params.close;if(!Number.isInteger(delay))delay=6000;setTimeout(function(){var hide_dir=Foundation.MediaQuery.atLeast('medium')?"right":"down";$(el).addClass("hide-"+hide_dir);setTimeout(function(){$(el).remove();},300);},delay);}},1);};this.loadRecipes=function(callback,update_uri){context.APIresponse.results={};var params=getPaginationData().recipes;if(context.param.recipes){params.keyword=context.param.recipes.keyword||null;params.allow_alt_ingredients=context.param.recipes.allow_alt_ingredients?1:null;params.present_hidden=context.param.recipes.present_hidden?1:null;params.include_non_alcoholic=context.param.recipes.present_non_alcoholic?1:null;params.hide_favourites=context.param.recipes.hide_favourites?1:null;params.custom_ingredients_only=context.param.recipes.custom_ingredients_only?1:null;params.custom_ingredient_ids=context.param.recipes.custom_ingredient_ids||null;params.must_contain_ingredient=context.param.recipes.must_contain_ingredient||null;params.sort=context.param.recipes.sort||null;}
1427if(update_uri!==false){dg.service.updateURI(dg.uri,'My Cocktails',params);}
1428dg.api.loadMyBarRecipes(params,function(response){context.APIresponse.results.recipes=response;context.APIresponse.results.recipes.results=context.APIresponse.results.recipes.result;context.APIresponse.results.recipes.total_result_count=context.APIresponse.results.recipes.result_count;for(var x=0;context.APIresponse.results.recipes.results.length>x;++x){context.APIresponse.results.recipes.results[x].img=context.APIresponse.results.recipes.results[x].cocktail.image;}
1429if(typeof callback==="function")callback();if(typeof context.onRecipesLoad==="function")context.onRecipesLoad();});};this.loadSubmittedRecipes=function(callback){context.APIresponse.results={};var params=getPaginationData().submitted_recipes;dg.api.loadMyBarSubmittedRecipes(params,function(response){context.APIresponse.results.submitted_recipes=response;context.APIresponse.results.submitted_recipes.results=context.APIresponse.results.submitted_recipes.result;context.APIresponse.results.submitted_recipes.total_result_count=context.APIresponse.results.submitted_recipes.result_count;for(var x=0;context.APIresponse.results.submitted_recipes.results.length>x;++x){context.APIresponse.results.submitted_recipes.results[x].img=context.APIresponse.results.submitted_recipes.results[x].cocktail.image;context.APIresponse.results.submitted_recipes.results[x].submitted_cocktail=1;}
1430if(typeof callback==="function")callback();if(typeof context.onSubmittedRecipesLoad==="function")context.onSubmittedRecipesLoad();});};this.loadItems=function(callback){dg.api.loadMyBarItems(getPaginationData(),function(response){context.updated_keys=[];for(var key in response.results){if(!context.APIresponse.results){context.updated_keys.push(key);}
1431else if(JSON.stringify(context.APIresponse.results[key]||{})!==JSON.stringify(response.results[key])){context.updated_keys.push(key);}}
1432context.APIresponse=response;if(typeof callback==="function")callback();});};this.loadFavourites=function(callback){context.APIresponse.results={};var params={pagination:getPaginationData()};dg.api.loadMyBarFavourites(params,function(response){context.updated_keys=[];for(var key in response.results){if(!context.APIresponse.results){context.updated_keys.push(key);}
1433else if(JSON.stringify(context.APIresponse.results[key]||{})!==JSON.stringify(response.results[key])){context.updated_keys.push(key);}}
1434context.APIresponse=response;if(typeof callback==="function")callback();if(typeof context.onFavouritesLoad==="function")context.onFavouritesLoad();});};this.loadWishList=function(callback){context.APIresponse.results={};var params={pagination:getPaginationData()};dg.api.loadMyBarWishList(params,function(response){context.updated_keys=[];for(var key in response.results){if(!context.APIresponse.results){context.updated_keys.push(key);}
1435else if(JSON.stringify(context.APIresponse.results[key]||{})!==JSON.stringify(response.results[key])){context.updated_keys.push(key);}}
1436context.APIresponse=response;if(typeof callback==="function")callback();if(typeof context.onWishListLoad==="function")context.onWishListLoad();});};this.loadYourComments=function(callback){context.APIresponse.results={};var params=getPaginationData().comments;if(context.your_comments_cached_count)params.comments_only=1;dg.api.getYourComments(params,function(response){if(!context.your_comments_cached_count){context.your_comments_cached_count=response.count;$("#comment-score").html(response.votes.score||0);$("#upvote-score").html(response.votes.up_votes||0);$("#downvote-score").html(response.votes.down_votes||0);}
1437context.APIresponse.results.comments=response;context.APIresponse.results.comments.results=context.APIresponse.results.comments.comments;context.APIresponse.results.comments.total_result_count=context.your_comments_cached_count;
1437if(response.comments.length<=0){var item=dg.service.generateView('comments-item').el;item.className+=" no-margin-top";context.container.comments.append(item);var message=document.createElement("DIV");message.className="comment";item.appendChild(message);var body=document.createElement("DIV");body.className="comment__body text-center";body.style.fontStyle="italic";body.textContent="You have not made any comments yet";message.appendChild(body);}
1438else{for(var c=0;c<response.comments.length;++c){var item=dg.service.generateView('comments-item').el;context.container.comments.append(item);var _comment=response.comments[c];_comment.display_only=1;var comment=dg.service.generateView('comment',_comment);item.appendChild(comment.el);}}
1439if(typeof callback==="function")callback();if(typeof context.onYourCommentsLoad==="function")context.onYourCommentsLoad();});};this.loadSearchResults=function(callback,update_uri){context.APIresponse.results={};var pagination=getPaginationData();var params={};params.limit=pagination.search_results.limit;params.offset=pagination.search_results.offset;params.keyword=dg.service.getQuery('keyword')||null;params.sub_type=dg.service.getQuery('sub_type')||'all';if(update_uri!==false){dg.service.updateURI(dg.uri,'Search Results',params);}
1440dg.api.loadMyBarSearchResults(params,function(response){context.APIresponse.results.search_results=response;context.APIresponse.results.search_results.results=context.APIresponse.results.search_results.result;context.APIresponse.results.search_results.total_result_count=context.APIresponse.results.search_results.result_count;if(typeof callback==="function")callback();if(typeof context.onSearchResultsLoad==="function")context.onSearchResultsLoad();});};this.showFatalError=function(){$("#my-bar-fatal-error").foundation('open');};return this;function showNotifications(l){if(l===undefined)l=context.notification.items.length;if(--l>=0){$(context.notification.items[l]).removeClass("hide");setTimeout(function(){$(context.notification.items[l]).removeClass("hide-down");setTimeout(function(){showNotifications(l);},333);},333);}}
1441function setBaseLimit(){if(context.route==='index')
1442context.pagination_base_limit=Foundation.MediaQuery.atLeast('large')?9:8;else
1443context.pagination_base_limit=10;}
1444function buildItem(item,key){item.title=item.display_name;item.classNames=["cell","small-6","medium-3","box--my-bar"];item.buttons=[];if(context.route==="favourites"||context.route==="wish-list"){item.buttons=['favourite','wish_list'];}
1445else if(context.route==="search"){item.buttons=['add_item'];}
1446if(key==="pantry"){item.buttons=['pantry'];item.pantry_ingredient=1;}
1447else if(key==="recipes"){item.title=item.cocktail.name;item.link_table="cocktails";item.link_id=item.cocktail.id;item.buttons=['favourite','wish_list'];}
1448else if(['spirit','liqueur','mixer','wine'].indexOf(key)!==-1){item.buttons=['amazon','favourite','delete','wish_list'];}
1449return dg.service.generateView('my-bar-box',item);}
1450function getPaginationData(){if(context.pagination===null)return false;var response={};if(context.pagination.sort!==undefined){response.sort=context.pagination.sort;}
1451context.keys.forEach(function(key){response[key]={};response[key].limit=context.pagination[key].limit;response[key].offset=context.pagination[key].offset;});return response;}
1452function paginate(){var el=this,key=el.dataset.key,action=el.dataset.action,pagination=context.pagination[key],results=context.APIresponse.results[key];switch(action){case'first':pagination.offset=0;break;case'prev':pagination.offset=pagination.offset-pagination.limit;break;case'next':pagination.offset=pagination.offset+pagination.limit;break;case'last':pagination.offset=results.total_result_count-pagination.limit;break;}
1453if(pagination.offset<0)pagination.offset=0;if(typeof context.onPaginate==="function")context.onPaginate(key);}
1454function initAddBottleModal(){context.add_bottle.el.triggers=$("[data-open='add-bottle-modal']");context.add_bottle.el.notification=$("#add-bottle-modal-notification");context.add_bottle.el.search_submit=$("#add-bottle-button-search");context.add_bottle.el.icons=$("#add-bottle-icons");context.add_bottle.el.autocomplete=context.add_bottle.el.modal.find("input[name='keyword']");context.add_bottle.form={};context.add_bottle.form.autocomplete=document.getElementById("add-bottle-form-autocomplete");context.add_bottle.form.search=document.getElementById("add-bottle-form-search");context.add_bottle.enableSubmit=function(){context.add_bottle.el.search_submit.prop('disabled',false);};context.add_bottle.disableSubmit=function(){context.add_bottle.el.search_submit.prop('disabled',true);};context.add_bottle.el.modal.on("open.zf.reveal",function(){context.add_bottle.el.autocomplete.focus();});context.add_bottle.notification_modal_state="closed";context.add_bottle.el.notification.on({"open.zf.reveal":function(){context.add_bottle.notification_modal_state="open";},"closed.zf.reveal":function(){context.add_bottle.notification_modal_state="closed";}});context.add_bottle.autocomplete={};context.add_bottle.autocomplete.min_chars=3;context.add_bottle.autocomplete.category="all";context.add_bottle.autocomplete.keyword="";context.add_bottle.autocomplete.limit=8;context.add_bottle.autocomplete.offset=0;context.add_bottle.autocomplete.result_count=0;context.add_bottle.autocomplete.searching=false;context.add_bottle.autocomplete.response=null;context.add_bottle.autocomplete.disabled=false;context.add_bottle.autocomplete.icons={};context.add_bottle.autocomplete.icons.loading=dg.service.generateView('icon',{graphic:'loading',size:'large'}).el;context.add_bottle.autocomplete.icons.static=context.add_bottle.el.icons.html();context.add_bottle.autocomplete.icons.success=dg.service.generateView('icon',{graphic:'check-circle',size:'large'}).el;context.add_bottle.autocomplete.config={url:function(){return"/api/dev/frontend/mybar/search-item?sub_type="+context.add_bottle.autocomplete.category+"&keyword="+context.add_bottle.autocomplete.keyword+"&autocomplete=1";},requestDelay:300,getValue:"display_name",minCharNumber:context.add_bottle.autocomplete.min_chars,ajaxCallback:function(){context.add_bottle.autocomplete.response=context.add_bottle.el.autocomplete.getResponseData();
1454autocompleteAppendControls();},list:{maxNumberOfElements:context.add_bottle.autocomplete.limit,onChooseEvent:autocompleteAddItem,onKeyEnterEvent:autocompleteAddItem,onLoadEvent:autocompleteSearchingDone,onHideListEvent:function(){if(context.add_bottle.el.autocomplete.val().length<context.add_bottle.autocomplete.min_chars){context.add_bottle.el.autocomplete.val("").trigger("change");context.add_bottle.autocomplete.list.empty();autocompleteSearchingDone();}}},template:{type:'custom',method:function(value,item){var el=document.createElement("DIV");el.innerHTML=item.display_name,el.className="eac-dg-link eac-dg-link--add-bottle eac-dg-link--"+item.label;return el;}},theme:"dg"};context.add_bottle.el.autocomplete.easyAutocomplete(context.add_bottle.autocomplete.config);context.add_bottle.el.autocomplete.parent().addClass("fill-height");context.add_bottle.autocomplete.list=context.add_bottle.el.autocomplete.siblings(".easy-autocomplete-container").find("ul");context.add_bottle.autocomplete.controls=null;context.add_bottle.autocomplete.controlsHTML=null;context.add_bottle.autocomplete.displaying_controls=false;context.add_bottle.el.autocomplete.on({input:function(){context.add_bottle.autocomplete.keyword=context.add_bottle.el.autocomplete.val();context.add_bottle.autocomplete.displaying_controls=false;if($(this).val().length>=context.add_bottle.autocomplete.min_chars){context.add_bottle.enableSubmit();autocompleteSearchingStart();}
1455else{context.add_bottle.disableSubmit();autocompleteSearchingDone();}}});context.add_bottle.el.triggers.on("click",function(){context.add_bottle.autocomplete.category=$(this).data("key");});
1455function autocompleteSearchingStart(){if(context.add_bottle.autocomplete.searching===true)return;context.add_bottle.autocomplete.searching=true;context.add_bottle.el.icons.empty().append(context.add_bottle.autocomplete.icons.loading);}
1456function autocompleteSearchingDone(){context.add_bottle.autocomplete.searching=false;context.add_bottle.autocomplete.result_count=context.add_bottle.autocomplete.list.children().length;context.add_bottle.autocomplete.list.removeClass("paginating");context.add_bottle.el.icons.empty().append(context.add_bottle.autocomplete.icons.static);}
1457function autocompleteAppendControls(){if(context.add_bottle.autocomplete.displaying_controls===true)return;context.add_bottle.autocomplete.displaying_controls=true;if(context.add_bottle.autocomplete.controlsHTML!==null){context.add_bottle.autocomplete.list.append(context.add_bottle.autocomplete.controlsHTML);context.add_bottle.autocomplete.controls.search.textContent="See all results for '"+context.add_bottle.autocomplete.keyword+"'";return;}
1458context.add_bottle.autocomplete.controls={};var controls=document.createElement("LI");controls.className="eac-dg-controls--see-more";context.add_bottle.autocomplete.list.append(controls);context.add_bottle.autocomplete.controlsHTML=controls;var item=document.createElement("DIV");item.className="eac-item";controls.append(item);var link=document.createElement("DIV");link.className="eac-dg-link eac-dg-link--see-more";link.textContent="See all results for '"+context.add_bottle.autocomplete.keyword+"'";item.append(link);context.add_bottle.autocomplete.controls.search=link;context.add_bottle.autocomplete.controls.search.addEventListener("click",function(){context.add_bottle.autocomplete.list.addClass("paginating");$(context.add_bottle.autocomplete.controls.search).empty().append(context.add_bottle.autocomplete.icons.loading);context.add_bottle.form.search.submit();});}
1459function autocompleteAddItem(){if(context.add_bottle.autocomplete.disabled===true)return
1460context.add_bottle.autocomplete.disabled=true;context.add_bottle.el.modal.foundation("close");autocompleteNotification("adding_item","Adding item to your bar...");var item=context.add_bottle.el.autocomplete.getSelectedItemData();dg.api.addMyBarItem('ingredient',item.sub_type,item.link_table,item.id,function(response){if(typeof context.loadItems==="function"){context.showLoaders();context.disablePagination();context.loadItems(function(){context.emptyContainers(true);context.populateContainers(true);context.enablePagination();context.hideLoaders();setTimeout(function(){context.add_bottle.autocomplete.disabled=false;autocompleteNotification("close");resetAutocomplete();if(typeof context.onAddItem==="function"){context.onAddItem(response);}},1500);});}
1461else{setTimeout(function(){context.add_bottle.autocomplete.disabled=false;autocompleteNotification("close");resetAutocomplete();if(typeof context.onAddItem==="function"){context.onAddItem(response);}},1500);}});}}
1462function autocompleteNotification(type,message){message=message||null;if(message)context.add_bottle.el.notification.find(".notification-message").html(message);var $icon=context.add_bottle.el.notification.find(".notification-icon");if(type==="close"){if(context.add_bottle.notification_modal_state==="open"){context.add_bottle.el.notification.foundation("close");}}
1463else if(type==="adding_item"){if(context.add_bottle.notification_modal_state==="closed"){context.add_bottle.el.notification.foundation("open");}
1464$icon.empty().append(context.add_bottle.autocomplete.icons.loading).removeClass("text-success");}
1465else if(type==="success"){if(context.add_bottle.notification_modal_state==="closed"){context.add_bottle.el.notification.foundation("open");}
1466$icon.empty().append(context.add_bottle.autocomplete.icons.success).addClass("text-success");}}
1467function resetAutocomplete(){context.add_bottle.el.autocomplete.val("").trigger("change");context.add_bottle.autocomplete.list.empty();}
1468function initIndex(){context.setRoute('index');context.setKeys('spirit','liqueur','mixer','wine');context.getPagination();context.getContainers();context.getCounters();context.getLoaders();context.loadItems(function(){context.populateContainers();context.enablePagination();context.hideLoaders();});context.onPaginate=function(key){if(Foundation.MediaQuery.is('small only')){dg.service.jumpToHash(key);}
1469context.showLoader(key);context.disablePagination();context.loadItems(function(){context.emptyContainers(true);context.populateContainers(true);context.enablePagination();context.hideLoader(key);});};context.onSort=function(key){context.showLoaders();context.disablePagination();context.loadItems(function(){context.emptyContainers(true);context.populateContainers(true);context.enablePagination();context.hideLoaders();});};context.onAddItem=function(response){dg.service.jumpToHash(response.sub_type);context.notify({title:dg.service.getPhrase(31,'item_added_to_my_bar'),copy:"<strong>"+response.display_name+"</strong> has been added to your bar",type:"success",icon:"check",close:true});$("#add-ingredients-message").addClass("hide");$("#see-your-cocktails-link").removeClass("hide");};context.onEmptyContainer=function(key){var image="/assets/images/themes/default_v5/mybar/bottles_"+key+"s.jpg";if(key==="wine")image="/assets/images/themes/default_v5/mybar/bottles_wine_vermouth.jpg";var message=dg.service.generateView('my-bar-message',{'image':image,'message':dg.service.getPhrase(31,'click_add_bottle_or_ingredient')});message.component.container.className="my-bar-empty";context.container[key].append(message.el);};context.onItemDelete=function(key){context.notify({title:"Item removed from your bar",type:"danger",icon:"check",close:true});context.showLoader(key);context.disablePagination();context.loadItems(function(){context.emptyContainers(true);context.populateContainers(true);context.enablePagination();context.hideLoader(key);});};}
1470function initPantry(){context.setRoute('pantry');context.setKeys('pantry');context.getContainers();context.getLoaders();dg.api.loadMyBarPantry(function(response){context.container.pantry.empty();response.forEach(function(item){item=buildItem(item,'pantry').el;context.container.pantry.append(item);});});}
1471function initRecipes(){context.setRoute('recipes');context.setKeys('recipes');context.getPagination();context.getContainers();context.getCounters();context.getLoaders();context.onPaginate=function(){context.showLoader('recipes');context.disablePagination();context.loadRecipes(function(){context.emptyContainers();context.populateContainers();context.enablePagination();context.hideLoader('recipes');});};}
1472function initFavourites(){context.setRoute('favourites');context.setKeys('cocktails','spiritbrands','ingredients');context.getPagination();context.getContainers();context.getCounters();context.getLoaders();context.loadFavourites(function(){context.populateContainers();context.enablePagination();context.hideLoaders();});context.onPaginate=function(){context.showLoaders();context.disablePagination();context.loadFavourites(function(){context.emptyContainers();context.populateContainers();context.enablePagination();context.hideLoaders();});};context.onEmptyContainer=function(key){var phrase={cocktails:{heading:[31,'no_favourite_cocktails'],message:[31,'havent_added_cocktails_to_favourites']},spiritbrands:{heading:[31,'no_favourite_brands'],message:[31,'havent_added_brands_to_favourites']},ingredients:{heading:[31,'no_favourite_ingredients'],message:[31,'havent_added_ingredients_to_favourites']}};var title=dg.service.getPhrase(phrase[key].heading[0],phrase[key].heading[1]);title="<strong class='text-capitalise display-inline-block margin-bottom-light text-large'>"+title+"</strong>";var sub=dg.service.getPhrase(phrase[key].message[0],phrase[key].message[1]);var message=dg.service.generateView('my-bar-message',{message:title+"<br>"+sub});context.container[key].append(message.el);};}
1473function initWishList(){context.setRoute('wish-list');context.setKeys('cocktails','spiritbrands');context.getPagination();context.getContainers();context.getCounters();context.getLoaders();context.loadWishList(function(){context.populateContainers();context.enablePagination();context.hideLoaders();});context.onPaginate=function(){context.showLoaders();context.disablePagination();context.loadWishList(function(){context.emptyContainers();context.populateContainers();context.enablePagination();context.hideLoaders();});};context.onEmptyContainer=function(key){var phrase={cocktails:{heading:[31,'no_wish_list_cocktails'],message:[31,'havent_added_cocktails_to_wish_list']},spiritbrands:{heading:[31,'no_wish_list_brands'],message:[31,'havent_added_brands_to_wish_list']}};var title=dg.service.getPhrase(phrase[key].heading[0],phrase[key].heading[1]);title="<strong class='text-capitalise display-inline-block margin-bottom-light text-large'>"+title+"</strong>";var sub=dg.service.getPhrase(phrase[key].message[0],phrase[key].message[1]);var message=dg.service.generateView('my-bar-message',{message:title+"<br>"+sub});context.container[key].append(message.el);};}
1474function initSearch(){context.setRoute('search');context.setKeys('search_results');context.getPagination();context.getContainers();context.getCounters();context.getLoaders();context.onPaginate=function(){context.showLoaders();context.disablePagination();context.loadSearchResults(function(){context.emptyContainers();context.populateContainers();context.enablePagination();context.hideLoaders();});};context.onEmptyContainer=function(key){var message=dg.service.generateView('my-bar-message',{message:"<strong class='text-capitalise display-inline-block margin-bottom-light text-large'>No Results Found</strong>"});context.container[key].append(message.el);};}
1475function submitCocktail(){context.setRoute('submit-cocktail');dg.ui.copy_protection.disable();context.form={};context.form.disabled=false;context.form.el={};context.form.el.form=$("#submit-recipe-form");context.form.el.loader=$("#new-cocktail-loading");context.form_delete={};context.form_delete.disabled=false;context.form_delete.el={};context.form_delete.el.form=$("#delete-recipe-form");context.form_delete.el.loader=$("#delete-cocktail-loading");context.form_delete.el.modal=$("#delete-cocktail-modal");
1475context.image={};context.image.max_size=15e+6;context.image.min_width=440;context.image.min_height=440;context.image.extensions=['jpg','jpeg','png'];context.image.el={};context.image.el.input=$("#new_image_id");context.image.el.preview=$("#new_image_preview");context.ingredient={};context.ingredient.data={};context.ingredient.data.response=null;context.ingredient.data.selected=null;context.ingredient.data.form={};context.ingredient.data.units={};context.ingredient.data.measures={};context.ingredient.el={};context.ingredient.el.posted_ingredients=$(".js-ingredient-param");context.ingredient.el.list=$("#ingredient_list");context.ingredient.el.autocomplete=$("#ingredient_autocomplete");context.ingredient.el.new_ingredient_id=$("#new_ingredient_id");context.ingredient.el.new_spiritbrand_id=$("#new_spiritbrand_id");context.ingredient.el.new_unit_id=$("#new_unit_id");context.ingredient.el.new_measure_id=$("#new_measure_id");context.ingredient.el.new_add_button=$("#new_add_button");context.ingredient.autocomplete={};context.ingredient.autocomplete.keyword="";context.ingredient.autocomplete.min_chars=3;context.ingredient.autocomplete.limit=8;context.ingredient.autocomplete.offset=0;context.ingredient.autocomplete.result_count=0;context.ingredient.autocomplete.searching=false;context.ingredient.autocomplete.response=null;context.ingredient.autocomplete.disabled=false;context.ingredient.autocomplete.config={url:function(){var api="/api/dev/frontend/mybar/search-item?keyword="+context.ingredient.autocomplete.keyword;api+="&search-all=1";api+="&limit="+context.ingredient.autocomplete.limit;api+="&offset="+context.ingredient.autocomplete.offset;api+="&must-be-ingredient=1";return api},requestDelay:300,listLocation:"result",getValue:"display_name",minCharNumber:context.ingredient.autocomplete.min_chars,ajaxCallback:function(){context.ingredient.data.response=context.ingredient.el.autocomplete.getResponseData();autocompleteAppendControls();autocompleteRefreshControls();},list:{maxNumberOfElements:8,onChooseEvent:autocompleteSelectItem,onKeyEnterEvent:autocompleteSelectItem,onLoadEvent:autocompleteSearchingDone,onHideListEvent:function(){if(context.ingredient.el.autocomplete.val().length<context.ingredient.autocomplete.min_chars){context.ingredient.el.autocomplete.val("").trigger("change");context.ingredient.autocomplete.list.empty();autocompleteSearchingDone();}}},template:{type:'custom',method:function(value,item){var el=document.createElement("DIV");el.innerHTML=item.display_name,el.className="eac-dg-link eac-dg-link--add-bottle eac-dg-link--"+item.label;return el;}},theme:"dg"};context.ingredient.el.autocomplete.easyAutocomplete(context.ingredient.autocomplete.config);context.ingredient.autocomplete.list=context.ingredient.el.autocomplete.siblings(".easy-autocomplete-container").find("ul");context.ingredient.autocomplete.controls=null;context.ingredient.autocomplete.controlsHTML=null;context.ingredient.el.autocomplete.on({input:function(){context.ingredient.autocomplete.keyword=context.ingredient.el.autocomplete.val();context.ingredient.autocomplete.limit=8;context.ingredient.autocomplete.offset=0;context.ingredient.autocomplete.displaying_controls=false;if($(this).val().length>=context.ingredient.autocomplete.min_chars){autocompleteSearchingStart();}
1476else{autocompleteSearchingDone();}}});context.ingredient.el.new_unit_id.on("change",updateMeasureSelect);context.ingredient.el.new_add_button.on("click",addIngredient);context.form.el.form.on("submit",function(){if(context.form.disabled===false){if(context.ingredient.el.new_ingredient_id.val()){addIngredient();}
1477context.form.disabled=true;context.form.el.loader.removeClass("hide");$(".js-hide-on-submit").addClass("hide");return true;}
1478return false;});context.form.el.form.areYouSure();context.form_delete.el.form.on("submit",function(){if(context.form_delete.disabled===false){context.form_delete.el.modal.foundation('close');context.form_delete.disabled=true;context.form_delete.el.loader.removeClass("hide");$(".js-hide-on-submit").addClass("hide");return true;}
1479return false;});
1479context.ingredient.el.posted_ingredients.each(function(){addIngredient(null,$(this).data("json"),!!$(this).data("disabled"));});context.image.el.input.on("change",function(){context.image.el.preview.empty();context.image.el.preview.html("...");if(this.files&&this.files[0]){var reader=new FileReader(),file=this.files[0];reader.onload=function(e){var img=new Image();img.src=e.target.result;img.className="margin-top";$(img).on('load',function(){if(file.size>context.image.max_size){imageError('The image you provided exceeds the 15MB limit');}
1480else if(img.width<context.image.min_width){if(img.height<context.image.min_height){imageError('The image you provided is too small ('+img.width+'px wide by '+img.height+'px tall)<br>It must be at least '+context.image.min_width+'px wide by '+context.image.min_height+'px tall');}
1481else{imageError('The image you provided is too narrow ('+img.width+'px wide)<br>It must be at least '+context.image.min_width+'px wide');}}
1482else if(img.height<context.image.min_height){imageError('The image you provided is not tall enough ('+img.height+'px tall)<br>It must be at least '+context.image.min_height+'px tall');}
1483else{context.image.el.preview.empty();
1483context.image.el.preview.append(img);}});};var ext=$(this).val().split(".").pop().toLowerCase();if(context.image.extensions.indexOf(ext)!==-1){reader.readAsDataURL(this.files[0]);}
1484else{imageError('You must provide your image as a .jpg or .png');}}
1485else{imageError('An unknown error occurred when trying to upload your image.');}});function autocompleteNextResults(){if(context.ingredient.autocomplete.searching===true)return;context.ingredient.autocomplete.offset+=context.ingredient.autocomplete.limit;autocompleteRefresh();}
1486function autocompletePrevResults(){if(context.ingredient.autocomplete.searching===true)return;context.ingredient.autocomplete.offset-=context.ingredient.autocomplete.limit;if(context.ingredient.autocomplete.offset<1)context.ingredient.autocomplete.offset=0;autocompleteRefresh();}
1487function autocompleteAppendControls(){if(context.ingredient.autocomplete.displaying_controls===true)return;context.ingredient.autocomplete.displaying_controls=true;if(context.ingredient.autocomplete.controlsHTML!==null){context.ingredient.autocomplete.list.append(context.ingredient.autocomplete.controlsHTML);return;}
1488context.ingredient.autocomplete.controls={};var controls=document.createElement("LI");controls.className="eac-dg-controls no-padding-x no-padding-bottom";context.ingredient.autocomplete.list.append(controls);context.ingredient.autocomplete.controlsHTML=controls;var grid=document.createElement("SPAN");grid.className="grid-x";controls.appendChild(grid);var cell=document.createElement("SPAN");cell.className="cell shrink pad-right-half";grid.append(cell);var button=document.createElement("BUTTON");button.className="button button--info button--flat button--outline pad-x fill";button.type="button";var icon=dg.service.generateView('icon',{graphic:'arrow-left'});button.appendChild(icon.el);cell.appendChild(button);
1488context.ingredient.autocomplete.controls.prev=button;var cell=document.createElement("SPAN");cell.className="cell auto flex-container align-center-middle";grid.appendChild(cell);var content=document.createElement("SPAN");content.className="text-center";content.textContent=context.ingredient.data.response.result_count+" results - page "+context.ingredient.data.response.page_index+" of "+context.ingredient.data.response.page_count;cell.appendChild(content);context.ingredient.autocomplete.controls.display=content;var cell=document.createElement("SPAN");cell.className="cell shrink pad-left-half";grid.appendChild(cell);var button=document.createElement("BUTTON");button.className="button button--info button--flat button--outline pad-x fill";button.type="button";var icon=dg.service.generateView('icon',{graphic:'arrow-right'});button.appendChild(icon.el);cell.appendChild(button);context.ingredient.autocomplete.controls.next=button;autocompleteRefreshControls();context.ingredient.autocomplete.controls.next.addEventListener("click",autocompleteNextResults);context.ingredient.autocomplete.controls.prev.addEventListener("click",autocompletePrevResults);}
1489function autocompleteRefreshControls(){context.ingredient.autocomplete.controls.display.textContent=context.ingredient.data.response.result_count+" results - page "+context.ingredient.data.response.page_index+" of "+context.ingredient.data.response.page_count;context.ingredient.autocomplete.controls.prev.disabled=context.ingredient.data.response.offset==0;context.ingredient.autocomplete.controls.next.disabled=(context.ingredient.data.response.limit>context.ingredient.data.response.result_count||context.ingredient.data.response.limit>=(context.ingredient.data.response.result_count-context.ingredient.data.response.offset));}
1490function autocompleteRefresh(){context.ingredient.autocomplete.list.addClass("paginating");autocompleteSearchingStart();context.ingredient.autocomplete.displaying_controls=false;var evt=jQuery.Event("keyup");evt.keyCode=41;context.ingredient.el.autocomplete.trigger(evt);context.ingredient.el.autocomplete.focus();}
1491function autocompleteSearchingStart(){if(context.ingredient.autocomplete.searching===true)return;context.ingredient.autocomplete.searching=true;}
1492function autocompleteSearchingDone(){context.ingredient.autocomplete.searching=false;context.ingredient.autocomplete.list.removeClass("paginating");}
1493function imageError(messageHTML){context.image.el.preview.empty();var error=document.createElement("div");error.className="pad bg-danger margin-top";error.innerHTML="<p class='no-margin'>"+messageHTML+"<br>Please try again.</p>";context.image.el.preview.append(error);context.image.el.input.val("");}
1494function addIngredient(event,p,disabled){context.ingredient.el.list.removeClass("js-list-ready");context.ingredient.el.new_add_button.removeClass("js-add-button-ready");var ingredient={};ingredient.elements={};if(p!==undefined){ingredient.id=p.ingredientId;ingredient.spiritbrands_id=p.my_bar_spiritbrandsId||null;ingredient.unit_id=p.unitId;ingredient.measure_id=p.measureId;ingredient.display_name=p.display.name||null;ingredient.unit_name=p.display.unit||null;ingredient.measure_name=p.display.measure||null;if(ingredient.measure_name){ingredient.nice_measure=ingredient.measure_name;if(parseInt(ingredient.unit_id)!=6){ingredient.nice_measure+=" "+ingredient.unit_name;}}
1495else{ingredient.nice_measure=ingredient.unit_name;}}
1496else{ingredient.id=context.ingredient.el.new_ingredient_id.val();ingredient.spiritbrands_id=context.ingredient.el.new_spiritbrand_id.val();ingredient.unit_id=context.ingredient.el.new_unit_id.val();ingredient.measure_id=context.ingredient.el.new_measure_id.val();ingredient.display_name=context.ingredient.data.selected.display_name;ingredient.unit_name=context.ingredient.el.new_unit_id.find("option:selected").text();ingredient.measure_name=context.ingredient.el.new_measure_id.find("option:selected").text();}
1497if($.isEmptyObject(context.ingredient.data.form)){context.ingredient.el.list.empty();}
1498if(context.ingredient.data.form[ingredient.id]){for(var el in context.ingredient.data.form[ingredient.id].elements){context.ingredient.data.form[ingredient.id].elements[el].remove();}}
1499var id_el=document.createElement("INPUT");id_el.type="hidden";id_el.name="cocktail[ingredient]["+ingredient.id+"][ingredientId]";id_el.value=ingredient.id;ingredient.elements.id_el=id_el;context.form.el.form.append(id_el);var unit_id=document.createElement("INPUT");unit_id.type="hidden";unit_id.name="cocktail[ingredient]["+ingredient.id+"][unitId]";unit_id.value=ingredient.unit_id;ingredient.elements.unit_id=unit_id;context.form.el.form.append(unit_id);if(ingredient.measure_id){var measure_id=document.createElement("INPUT");measure_id.type="hidden";measure_id.name="cocktail[ingredient]["+ingredient.id+"][measureId]";measure_id.value=ingredient.measure_id;ingredient.elements.measure_id=measure_id;context.form.el.form.append(measure_id);}
1500if(ingredient.spiritbrands_id){var spiritbrand_id=document.createElement("INPUT");spiritbrand_id.type="hidden";spiritbrand_id.name="cocktail[ingredient]["+ingredient.id+"][my_bar_spiritbrandsId]";spiritbrand_id.value=ingredient.spiritbrands_id;ingredient.elements.spiritbrand_id=spiritbrand_id;context.form.el.form.append(spiritbrand_id);}
1501var container=document.createElement("DIV");container.className="cell";context.ingredient.el.list.append(container);var grid=document.createElement("DIV");grid.className="grid-x grid-margin-x justify-between align-middle";container.append(grid);var cell=document.createElement("DIV");cell.className="cell auto";grid.append(cell);var inner_grid=document.createElement("DIV");inner_grid.className="grid-x grid-margin-x align-middle";cell.append(inner_grid);var name=document.createElement("DIV");name.className="cell auto text-bold";name.innerHTML=ingredient.display_name;inner_grid.append(name);var info=document.createElement("DIV");info.className="cell shrink";if(ingredient.nice_measure){info.innerHTML=ingredient.nice_measure;}
1502else if(ingredient.measure_id){info.innerHTML=ingredient.measure_name;}
1503else{info.innerHTML=ingredient.unit_name;}
1504inner_grid.append(info);var cell=document.createElement("DIV");
1504cell.className="cell shrink";grid.append(cell);var delete_button=document.createElement("BUTTON");delete_button.className="button button--danger button--small button--outline";delete_button.type="button";delete_button.innerHTML="delete";delete_button.disabled=disabled;delete_button.addEventListener("click",function(){for(var el in context.ingredient.data.form[ingredient.id].elements){context.ingredient.data.form[ingredient.id].elements[el].remove();}
1505delete context.ingredient.data.form[ingredient.id];if($.isEmptyObject(context.ingredient.data.form))ingredientsEmpty();});cell.append(delete_button);ingredient.elements.view=container;context.ingredient.data.form[ingredient.id]=ingredient;context.ingredient.el.autocomplete.val("").trigger("change");context.ingredient.el.new_ingredient_id.val("");context.ingredient.el.new_spiritbrand_id.val("");context.ingredient.el.new_unit_id.val("").trigger("change").prop("disabled",true);context.ingredient.el.new_measure_id.val("").prop("disabled",true);if(typeof context.onAddIngredient==="function"){context.onAddIngredient(ingredient);}
1506setTimeout(function(){context.ingredient.el.list.addClass("js-list-ready");},100);}
1507function ingredientsEmpty(){context.ingredient.el.list.empty();var cell=document.createElement("DIV");cell.className="cell";context.ingredient.el.list.append(cell);var p=document.createElement("P");p.className="no-margin text-center alt-font--light";cell.appendChild(p);var em=document.createElement("EM");em.textContent="You have not added any ingredients yet";p.appendChild(em);}
1508function autocompleteSelectItem(){context.ingredient.el.new_ingredient_id.val("");context.ingredient.el.new_spiritbrand_id.val("");context.ingredient.el.new_unit_id.val("");context.ingredient.el.new_measure_id.val("");context.ingredient.el.new_add_button.prop("disabled",true).removeClass("js-add-button-ready");context.ingredient.data.selected=null;var ingredient=context.ingredient.el.autocomplete.getSelectedItemData();context.ingredient.data.selected=ingredient;if(ingredient.id||ingredient.ingredient_id){var ingredient_id=(ingredient.link_table=="ingredients"?ingredient.id:ingredient.ingredient_id);context.ingredient.el.new_ingredient_id.val(ingredient_id);if(ingredient.link_table==="spiritbrands"){context.ingredient.el.new_spiritbrand_id.val(ingredient.id);}
1509updateUnitSelect();setTimeout(function(){context.ingredient.el.new_add_button.prop("disabled",true).addClass("js-add-button-ready");},100);}}
1510function getMeasures(unit_id,callback){$.get("/api/dev/frontend/cocktails/unit-measures",{unit:unit_id}
1510).done(function(response){context.ingredient.data.measures=response;callback(JSON.parse(response));}).fail(function(){context.showFatalError();});}
1511function getUnits(ingredient_id,callback){$.get("/api/dev/frontend/cocktails/unit-measures",{ingredient:ingredient_id}).done(function(response){context.ingredient.data.units=response;callback(JSON.parse(response));}).fail(function(){context.showFatalError();});}
1512function updateUnitSelect(callback){context.ingredient.el.new_add_button.prop("disabled",true);var ingredient_id=context.ingredient.el.new_ingredient_id.val();context.ingredient.el.new_unit_id.empty().prop("disabled",true);var option=document.createElement("option");option.value="";option.textContent="...";context.ingredient.el.new_unit_id.append(option);getUnits(ingredient_id,function(response){context.ingredient.el.new_unit_id.empty().prop("disabled",true);if(response!==null){for(var r in response)if(response[r].id){var option=document.createElement("option");option.value=response[r].id;option.textContent=response[r].name;context.ingredient.el.new_unit_id.append(option).prop("disabled",false);}
1513updateMeasureSelect(function(){context.ingredient.el.new_add_button.prop("disabled",false);if(typeof callback==="function"){callback();}});}});};function updateMeasureSelect(callback){context.ingredient.el.new_add_button.prop("disabled",true);var unit_id=context.ingredient.el.new_unit_id.val();var unit_name=context.ingredient.el.new_unit_id.find("option:selected").text();if(!unit_id||unit_id==="...")return;context.ingredient.el.new_measure_id.empty().prop("disabled",true);var option=document.createElement("option");option.value="";option.textContent="...";context.ingredient.el.new_measure_id.append(option);
1513getMeasures(unit_id,function(response){context.ingredient.el.new_measure_id.empty().prop("disabled",true);if(response.measure!==null){for(var r in response.measure)if(response.measure[r].id){var option=document.createElement("option");option.value=response.measure[r].id;if(unit_name==="millilitre (ml)"){option.innerHTML=response.measure[r].display_ml;}
1514else if(unit_name==="fluid ounce (fl. oz)"){option.innerHTML=response.measure[r].display_oz;}
1515else if(unit_name==="shot"){option.innerHTML=response.measure[r].display_shot;}
1516else{option.innerHTML=response.measure[r].displayQty;option.innerHTML+=" "+(response.measure[r].qty>1?response.unit.pluralName.toLowerCase():response.unit.name.toLowerCase());}
1517context.ingredient.el.new_measure_id.append(option).prop("disabled",false);}
1518context.ingredient.el.new_measure_id.val(6);}
1519if(typeof callback==="function"){callback();}
1520context.ingredient.el.new_add_button.prop("disabled",false);});};}
1521function submittedCocktail(){context.setRoute('submitted_recipes');context.setKeys('submitted_recipes');context.getPagination();context.getContainers();context.getCounters();context.getLoaders();context.loadSubmittedRecipes(function(){context.populateContainers();context.enablePagination();context.hideLoader('submitted_recipes');});context.onPaginate=function(){context.showLoader('submitted_recipes');context.disablePagination();context.loadSubmittedRecipes(function(){context.emptyContainers();context.populateContainers();context.enablePagination();context.hideLoader('submitted_recipes');});};context.onEmptyContainer=function(key){if(context.el.modal.length){context.el.modal.foundation('open');setTimeout(function(){window.location.replace("/your-account/add-cocktail");},12000);}};}
1522function initYourComments(){context.setRoute('your_comments');context.setKeys('comments');context.getPagination();context.getContainers();context.getCounters();context.getLoaders();context.loadYourComments(function(){context.updateCounter('comments');context.enablePagination();context.hideLoader('comments');});context.onPaginate=function(){context.showLoader('comments');context.disablePagination();context.emptyContainers();context.loadYourComments(function(){context.enablePagination();context.hideLoader('comments');});};}}
1523function __Service(dg){this.iAmPage=function(regex_uri){if(dg.hreflang.length){if(regex_uri.slice(0,1)==="^")
1524regex_uri="^\/"+dg.hreflang+regex_uri.substr(1);else
1525regex_uri="\/"+dg.hreflang+regex_uri;}
1526var r=new RegExp(regex_uri);return!!r.test(dg.uri);};this.getHrefLang=function(uri){var h=uri.match(/^\/[a-z]{2}-[a-z]{2}\//)||uri.match(/^\/[a-z]{2}-[a-z]{2}$/);if(h===null)return"";return h[0].replace(/\//g,"");};this.hrefLangPrefixed=function(uri){if(dg.hreflang==="")return uri;var r=new RegExp("^\/"+dg.hreflang);
1526if(!r.test(uri))uri="/"+dg.hreflang+uri;return uri;};this.hasTouch=function(){return'ontouchstart'in document.documentElement||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0;};this.onNextClickOfNotThis=function(elements,callback,include_children){if(!elements||!callback||typeof callback!=="function")return;if(!Array.isArray(elements))elements=[elements];elements=elements.map(function(el){return(el instanceof jQuery)?el[0]:el;});listen(elements,callback);function listen(elements,callback){$(document).one("click",function(e){var clicked_this=elements.filter(function(el){return e.target===el||include_children===true&&el.contains(e.target);}).length;if(clicked_this)listen(elements,callback);else callback();});}};this.animationEnd=function($el,callback){if($el instanceof jQuery===false)$el=$($el);$el.one("webkitAnimationEnd oanimationend msAnimationEnd animationend",callback);};this.transitionEnd=function($el,callback){if($el instanceof jQuery===false)$el=$($el);$el.one("webkitTransitionEnd otransitionend oTransitionEnd msTransitionEnd transitionend",callback);};this.onVerticalScroll=function(callback){var raf=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame;var $window=$(window);var last_scroll_top=$window.scrollTop();loop();function loop(){var scroll_top=$window.scrollTop();if(last_scroll_top===scroll_top){raf(loop);return;}
1527last_scroll_top=scroll_top;callback();raf(loop);}};this.debounce=function(func,wait,immediate){var timeout;return function(){var context=this;var args=arguments;var later=function(){timeout=null;if(!immediate)func.apply(context,args);};var callNow=immediate&&!timeout;clearTimeout(timeout);timeout=setTimeout(later,wait);if(callNow)func.apply(context,args);};};this.infiniteScroll=function(options){var context=this;this.el={};this.el.container=options.container||null;this.el.limiter=options.limiter||null;this.el.button=options.button||null;this.params={};options.params=options.params||{};this.params.limit=options.params.limit||24;this.params.target=options.params.target||'consumer';this.params.lang=options.params.lang||'gb';if(options.params.category!==undefined)this.params.category=options.params.category;if(options.params.sub_category!==undefined)this.params.sub_category=options.params.sub_category;if(options.params.skip_oids!==undefined)this.params.skip_oids=options.params.skip_oids;this.cascade=options.cascade===undefined?true:options.cascade;this.waiting=false;if(this.el.container===null||this.el.limiter===null){console.error("`container` and `limiter` must be passed");return;}
1528if(this.el.container instanceof jQuery===false)this.el.container=$(this.el.container);if(this.el.limiter instanceof jQuery===false)this.el.limiter=$(this.el.limiter);if(this.el.button instanceof jQuery===false)this.el.button=$(this.el.button);if(this.el.button===null){dg.service.onVerticalScroll(checkScrollDistance);}
1529else{this.el.button.one("click",function(){context.el.button.addClass("transition-hide");context.el.button.find(".load-more__text").hide();context.el.button.find(".load-more__spinner").removeClass("hide");loadBoxes(function(response){context.el.button.addClass("hide-up");dg.service.transitionEnd(context.el.button,function(){context.el.button.remove();insertBoxes(response.boxes,response.oldest,function(){dg.service.onVerticalScroll(checkScrollDistance);context.waiting=false;});});});});}
1530return this;function checkScrollDistance(){if(context.waiting===true)return;if($(window).scrollTop()>(context.el.limiter.offset().top-dg.viewport.height)){loadBoxes(function(response){if(response.boxes.length){insertBoxes(response.boxes,response.oldest,function(){context.waiting=false;});}});}}
1531function insertBoxes(boxes,oldest,callback){context.el.container.data('oldest',oldest);buildBoxes(boxes,function(b){if(context.cascade===false){callback();return;}
1532showNext(b);var complete=[];function showNext(boxes){if(!boxes.length){complete.forEach(function(box){$(box).removeClass("transition-hide");});callback();return;}
1533var box=boxes.shift();
1533setTimeout(function(){$(box).removeClass("hide-down");complete.push(box);showNext(boxes);},30);}});}
1534function loadBoxes(callback){context.waiting=true;var source="/api/dev/frontend/box/infinite-scroll";if(options.cnf&&options.cnf.source){source=options.cnf.source;}
1535var params=context.params;params.oldest=context.el.container.data('oldest');dg.api.infiniteScroll({source:source,params:params},function(response){callback(response);});}
1536function buildBoxes(boxes,callback){var b=[];var template="default";if(options.cnf&&options.cnf.template)template=options.cnf.template;if(template==="shop_item"){var box_classes=" cell small-6 medium-3";if(context.cascade===true)box_classes+=" transition-hide hide-down";for(var x=0,l=boxes.length;x<l;++x){var box=dg.service.generateView('shop-item',boxes[x]);if(box.el!==null){box.el.className+=box_classes;context.el.container.append(box.el);b.push(box.el);}}}
1537else{var box_classes=" cell small-6 medium-3 large-2";if(context.cascade===true)box_classes+=" transition-hide hide-down";for(var x=0,l=boxes.length;x<l;++x){var box=dg.service.generateView('box',boxes[x]);if(box.el!==null){box.el.className+=box_classes;context.el.container.append(box.el);b.push(box.el);}}}
1538callback(b);}};this.elementExists=function(selector){return $(selector).length>0;}
1539this.scrollTo=function(offset,callback){var callback_sent=false;setTimeout(function(){$("html, body").animate({scrollTop:offset,},600,"swing",function(){if(typeof callback==="function"&&!callback_sent){callback_sent=true;callback();}});$(window).one("wheel touchmove",function(){$("html, body").stop(true);});},600);}
1540this.cdnPrefix=function(image_path){var cdn=dg.development?"":"https://cdn.diffords.com";if(image_path.match(/^\/(images|contrib|media)/))image_path=cdn+image_path;return image_path;};this.isMobile={Android:function(){return navigator.userAgent.match(/Android/i);},BlackBerry:function(){return navigator.userAgent.match(/BlackBerry/i);},iOS:function(){return navigator.userAgent.match(/iPhone|iPad|iPod/i);},Opera:function(){return navigator.userAgent.match(/Opera Mini/i);},Windows:function(){return navigator.userAgent.match(/IEMobile/i);},any:function(){return this.Android()||this.BlackBerry()||this.iOS()||this.Opera()||this.Windows();}};this.generateView=function(key,params){return new __View(key,params);};this.captureEvent=function(label){if(label)window.gtag_builder('event','my-bar',label);};this.jumpToHash=function(hash){var url=location.href;location.href="#"+hash;history.replaceState(null,null,url);};this.niceNumber=function(x){return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g,",");};this.getQuery=function(variable){var response=null;var query=decodeURI(window.location.search.substring(1)),query=query.replace(/%2C/g,",");var vars=query.split("#")[0].split("&");for(var i=0;i<vars.length;++i){var pair=vars[i].split("=");if(pair[0]==variable){response=pair[1];}
1541else if(pair[0]==variable+"[]"){if(response===null)response=[];if(response instanceof Array)response.push(pair[1]);}}
1542return response;};this.buildQueryString=function(params,uri){var response="",queries=[];for(var p in params){if(params[p])queries.push(p+"="+params[p]);}
1543var query_string=queries.join("&");if(query_string)response+="?"+query_string;if(uri)response=uri+response;return response;};this.updateURI=function(uri,title,queries){var new_uri=dg.service.buildQueryString(queries,uri);window.history.pushState(queries,title,new_uri);};this.isJson=function(json){try{JSON.parse(json);}
1544catch(e){return false;}
1545return true;};this.setPhrases=function(phrases,memcache_key,callback){dg.phrase=dg.phrase||{};memcache_key=memcache_key||null;dg.api.phrase(phrases,memcache_key,function(phrases){for(var p_c_id in phrases){dg.phrase[parseInt(p_c_id)]=dg.phrase[p_c_id]||{};for(var p_key in phrases[p_c_id]){dg.phrase[parseInt(p_c_id)][p_key]=phrases[p_c_id][p_key];}}
1546if(typeof callback==="function"){callback();}});};this.getPhrase=function(category_id,key,default_response){category_id=parseInt(category_id);
1546if(!dg.phrase[category_id]||!dg.phrase[category_id][key]){if(default_response){return default_response;}
1547return'SITE WARNING: Phrase not found';}
1548return dg.phrase[category_id][key];};this.attachDeliveryWarning=function($button){$button.on("click",function(){var $form=$button.parents("form:first");if($form){var form_data=$form.serializeArray();var $modal=$('#gb-delivery-warning');var $modal_form=$modal.find("form:first");var $submit_button=$modal_form.find("button[type='submit']");$submit_button.prop("disabled",true);$modal.foundation('open');$modal_form.empty();$modal_form.append($submit_button);for(var x=0;x<form_data.length;++x){var input=document.createElement("INPUT");input.type="hidden";input.name=form_data[x].name;input.value=form_data[x].value;$modal_form.append(input);}
1549$submit_button.prop("disabled",false);}});};this.currencyToChar=function(currency){currency=currency.toUpperCase();if(currency==="GBP")return"£";if(currency==="USD")return"$";if(currency==="AUD")return"$";if(currency==="EUR")return"€";return currency;}
1550this.validateDate=function(date_string){if(!/^\d{1,2}\/\d{1,2}\/\d{4}$/.test(date_string)){return false;}
1551var parts=date_string.split("/");var day=parseInt(parts[1],10);var month=parseInt(parts[0],10);var year=parseInt(parts[2],10);if(year<1000||year>3000||month==0||month>12){return false;}
1552var month_length=[31,28,31,30,31,30,31,31,30,31,30,31];if(year%400==0||(year%100!=0&&year%4==0)){month_length[1]=29;}
1553return day>0&&day<=month_length[month-1];}
1554this.inViewport=function(el,strict){var is_visible=!!(el.offsetWidth||el.offsetHeight||el.getClientRects().length);if(!is_visible)return false;var rect=el.getBoundingClientRect();var height=window.innerHeight||document.documentElement.clientHeight;var width=window.innerWidth||document.documentElement.clientWidth;if(strict){return(rect.top>=0&&rect.left>=0&&rect.bottom<=height&&rect.right<=width);}
1555return(rect.right>=0&&rect.bottom>=0&&rect.left<=width&&rect.top<=height);};return this;}
1556function __Skew($el){var context=this;this.building=false;this.el={};this.el.wrapper=$el;this.el.items=this.el.wrapper.find(".skew__item").not(".disabled");this.el.price_gross=this.el.wrapper.find(".skew__gross");this.el.price_net=this.el.wrapper.find(".skew__net");this.el.cocktail_yield=this.el.wrapper.find(".skew__cocktail-yield");this.el.cost_per_cocktail=this.el.wrapper.find(".skew__cost-per-cocktail");this.el.submit_button=this.el.wrapper.find(".skew__submit-button");this.el.gratis=this.el.wrapper.find(".skew__gratis");this.el.ajax_form=this.el.wrapper.find(".skew__ajax-form");this.el.show_more_mobile_container=this.el.wrapper.find(".skew__show-more-mobile-container");this.el.show_more_mobile_item=this.el.wrapper.find(".skew__show-more-mobile-item");this.is_checked={};this.el.items.each(function(i){context.is_checked[i]=$(this).find("input:first").prop("checked");});this.el.items.each(function(i){var $item=$(this);var $input=$item.find("input:first");var input_type=$input.prop("type");if(input_type=="radio"){if(context.is_checked[i])pickItemRadio($item);}
1557else if(input_type=="checkbox"){if(context.is_checked[i])pickItemCheckbox($item);}
1558$item.on("click",function(e){if(input_type=="radio"){pickItemRadio($item);}
1559else if(input_type=="checkbox"){pickItemCheckbox($item);}
1560e.stopPropagation();$input.trigger("change");submitButtonCheck();gratisCheck();});});submitButtonCheck();gratisCheck();if(this.el.show_more_mobile_container.length>0){this.el.show_more_mobile_container.on("click",function(){context.el.show_more_mobile_container.addClass("hide");context.el.show_more_mobile_item.removeClass("skew__show-more-mobile-item");});}
1561if(this.el.ajax_form.length){this.el.ajax_form.each(function(){var form=$(this)[0];var $message_target=$(this).find(".skew__ajax-message");if(!$message_target.length)$message_target=$form;var loading_message=document.createElement("DIV");loading_message.className="grid-x align-middle hide";var loading_message_cell=document.createElement("DIV");loading_message_cell.className="cell shrink";var loading_message_icon=dg.service.generateView('icon',{graphic:'loading'}).el;loading_message_cell.appendChild(loading_message_icon);loading_message.appendChild(loading_message_cell);
1561var loading_message_cell=document.createElement("DIV");loading_message_cell.className="cell auto margin-left-xlight";loading_message_cell.textContent="Adding to basket...";loading_message.appendChild(loading_message_cell);$message_target.append(loading_message);var error_message=document.createElement("DIV");error_message.className="grid-x align-middle text-danger hide";var error_message_cell=document.createElement("DIV");error_message_cell.className="cell shrink";var error_message_icon=dg.service.generateView('icon',{graphic:'cart-error'}).el;error_message_cell.appendChild(error_message_icon);error_message.appendChild(error_message_cell);var error_message_cell=document.createElement("DIV");error_message_cell.className="cell auto margin-left-xlight";error_message_cell.textContent="We were unable to add this item to your basket";error_message.appendChild(error_message_cell);$message_target.append(error_message);var success_message=document.createElement("DIV");success_message.className="grid-x align-middle hide";var success_message_cell=document.createElement("DIV");success_message_cell.className="cell shrink text-success";var success_message_icon=dg.service.generateView('icon',{graphic:'check-circle'}).el;success_message_cell.appendChild(success_message_icon);success_message.appendChild(success_message_cell);var success_message_cell=document.createElement("DIV");success_message_cell.className="cell auto margin-left-xlight";if($message_target.hasClass("bg-overlay-dark")){success_message_cell.innerHTML="Added to <a href='/shop/basket' class='text-underline'>your basket</a>";}
1562else{success_message_cell.innerHTML="Added to <a href='/shop/basket'><strong>your basket</strong></a>";}
1563success_message.appendChild(success_message_cell);$message_target.append(success_message);form.disabled=false;$(this).on("submit",function(e){e.preventDefault();if(form.disabled===true)return false;form.disabled=true;if(form.ajax_submit){form.ajax_submit.disabled=1;if($(form.ajax_submit).hasClass("hide-on-submit")){$(form.ajax_submit).addClass("hide");}}
1564success_message.classList.add("hide");$message_target.removeClass("hide");loading_message.classList.remove("hide");dg.api.addToBasket({quantity:parseInt(form.quantity.value||1),product_id:form.add.value||null,shopelement:form.shopelement.value||null,use_skew:form.use_skew.value||"no",product_vars:[]},function(response){if(response.match(/ERROR/)){setTimeout(function(){if(response=="ERROR: rejected by cookie policy"){$message_target.removeClass("bg-overlay-dark").addClass("bg-danger");$(error_message).removeClass("text-danger");error_message_cell.innerHTML="Enable essential cookies to add items to your basket. <a href='/g/1097/diffords-guide/cookie-policy' class='text-underline'>Update your cookie settings here.</a>";}
1565loading_message.classList.add("hide");error_message.classList.remove("hide");},600);}
1566else{var basket=JSON.parse(response);dg.ui.header.basket.updateIndicator(basket.num_items);setTimeout(function(){loading_message.classList.add("hide");success_message.classList.remove("hide");setTimeout(function(){form.disabled=false;if(form.ajax_submit){form.ajax_submit.disabled=false;if($(form.ajax_submit).hasClass("show-on-success")){$(form.ajax_submit).reomveClass("hide");}}},900);},600);}});});})}
1567return this;function pickItemRadio($item){context.el.items.removeClass("active");$item.addClass("active");$item.find("input").prop("checked",true);if(!!$item.data("gross")&&context.el.price_gross){context.el.price_gross.html($item.data("gross"));}
1568if(!!$item.data("net")&&context.el.price_net){context.el.price_net.html($item.data("net"));}
1569if($item.data('id')&&event&&dg.service.getQuery('sku')!=$item.data('id')){dg.service.updateURI(dg.uri,null,{sku:$item.data('id')});}}
1570function pickItemCheckbox($item){var $input=$item.find("input");if($input.prop("checked")){$item.addClass("active");}
1571else{$item.removeClass("active");}
1572var price=0,cocktail_yield=0,cost_per_cocktail=0;context.el.items.each(function(){var _$item=$(this),_$input=_$item.find("input:first");if(_$input.prop("checked")){if(!!_$item.data("gross")){price+=parseFloat(_$item.data("gross"));}
1573if(!!_$item.data("cocktail-yield")){var unit_yield=parseFloat(_$item.data("cocktail-yield"));if(cocktail_yield===0||unit_yield<cocktail_yield){cocktail_yield=unit_yield;}}
1574if(!!_$item.data("cost-per-cocktail")){cost_per_cocktail+=parseFloat(_$item.data("cost-per-cocktail"));}}});if(context.el.price_gross){price=price<=0?"-.--":price.toFixed(2);context.el.price_gross.html(price);}
1575if(context.el.cocktail_yield){cocktail_yield=cocktail_yield<=0?"-":cocktail_yield.toFixed(1);if(cocktail_yield.match(/\.0$/))cocktail_yield=cocktail_yield.slice(0,-2);context.el.cocktail_yield.html(cocktail_yield);}
1576if(context.el.cost_per_cocktail){cost_per_cocktail=cost_per_cocktail<=0?"-.--":cost_per_cocktail.toFixed(2);context.el.cost_per_cocktail.html(cost_per_cocktail);}}
1577function submitButtonCheck(){if(context.el.submit_button.length){var disabled=true;context.el.items.each(function(){if($(this).find("input:first").prop("checked")){disabled=false;return false;}});context.el.submit_button.prop("disabled",disabled);}}
1578function gratisCheck(){if(context.el.gratis.length){var inactive=false;context.el.items.each(function(){if(!$(this).find("input:first").prop("checked")){inactive=true;return false;}});if(inactive){context.el.gratis.addClass("inactive");}
1579else{context.el.gratis.removeClass("inactive");}}}}
1580function __View(template,params){var context=this;this.el=null;this.component={};
1580if(template==="box")
1581box(params);else if(template==="my-bar-box")
1582myBarBox(params);else if(template==="shop-item")
1583shopItemBox(params);else if(template==="my-bar-message")
1584myBarMessage(params);else if(template==="icon")
1585icon(params);else if(template==="link")
1586link(params);else if(template==="comments-thread")
1587commentsThread(params);else if(template==="comments-item")
1588commentsItem(params);else if(template==="comment")
1589comment(params);else if(template==="comment-reply")
1590commentReply(params);function link(params){context.el=document.createElement("A");if(params.href)context.el.href=dg.service.hrefLangPrefixed(params.href);if(params.className)context.el.className=params.className;if(params.innerHTML)context.el.innerHTML=params.innerHTML;}
1591function icon(params){context.el=document.createElement("SPAN");context.el.className=["svg-icon","svg-icon--"+(params.size?params.size:"inherit"),"svg-icon--"+params.graphic,"grid-x","align-center-middle"].join(" ");var svgNS=document.createElementNS("http://www.w3.org/2000/svg","svg");var svg=pushComponent('svg',svgNS);svg.setAttribute("class","cell shrink svg-icon__"+params.graphic);svg.style.fill="currentColor";svg.style.height="1em";svg.style.width="1em";context.el.appendChild(svg);var useNS=document.createElementNS("http://www.w3.org/2000/svg","use");var use=pushComponent('use',useNS);use.setAttributeNS("http://www.w3.org/1999/xlink","href","#icon-"+params.graphic);svg.appendChild(use);if(params.label){var label=newComponent('label',"SPAN");label.className="cell shrink svg-icon__label margin-left-xlight";label.innerHTML=params.label;context.el.appendChild(label);}}
1592function box(params){var _image=params.img||params.image||"",_title=params.heading||params.title||params.name||"",_copy=params.copy||params.content||"";if(params.href&&!params.buttons){context.el=document.createElement("A");context.el.href=params.href;}
1593else{context.el=document.createElement("DIV");}
1594context.el.className=["box"].concat(params.classNames||[]).join(" ");if(_image.length){var aspect=newComponent('aspect',"DIV");aspect.className="box__image-aspect";context.el.appendChild(aspect);var container=document.createElement("div");container.className="box__image-container";aspect.appendChild(container);var image=newComponent('image',"IMG");image.className="box__image";image.src=dg.service.cdnPrefix(_image);image.alt=_title;container.appendChild(image);}
1595if(_title.length){var title=newComponent('title',"H3");title.className="box__title";title.innerHTML=_title;context.el.appendChild(title);}
1596if(_copy.length){var copy=newComponent('copy',"P");copy.className="box__copy";copy.innerHTML=_copy;context.el.appendChild(copy);}}
1597function shopItemBox(params){context.el=document.createElement("DIV");context.el.className=["shop-item","relative"].concat(params.classNames||[]).join(" ");var preview_container=newComponent('preview_container',"A");preview_container.href=params.href;preview_container.className="shop-item__preview-container";context.el.appendChild(preview_container);var preview=newComponent('preview_container',"SPAN");preview.className="shop-item__preview";if(params.image_is_cutout==true){preview.className+=" cutout";}
1598preview_container.appendChild(preview);var preview_circle=newComponent('preview_circle',"SPAN");preview_circle.className="shop-item__preview-circle";preview.appendChild(preview_circle);var image=newComponent('image',"IMG");image.className="shop-item__preview-image";image.src=dg.service.cdnPrefix(params.image);image.alt=params.name;preview_circle.appendChild(image);var details=newComponent('details',"DIV");details.className="shop-item__details";context.el.appendChild(details);var title=newComponent('title',"A");title.textContent=params.name;title.href=params.href;title.className="shop-item__title";details.appendChild(title);if(params.skews.length==1&&params.skews[0]["present_params"]){for(var x=0;x<params.skews[0]["present_params"].length;++x){var detail=document.createElement("DIV");detail.className="shop-item__detail";detail.textContent=params.skews[0]["present_params"][x];details.appendChild(detail);}}
1599var skew=newComponent('skew',"DIV");skew.className="skew skew--no-style";details.appendChild(skew);var price=newComponent('price',"DIV");price.className="shop-item__price";skew.appendChild(price);var form=newComponent('form',"FORM");form.method="POST";form.action="/shop/basket";form.className="skew__ajax-form";form.style.position="static";price.appendChild(form);var shopelement=newComponent('shopelement',"INPUT");shopelement.type="hidden";shopelement.name="shopelement";shopelement.value="braintree";form.appendChild(shopelement);var use_skew=newComponent('use_skew',"INPUT");use_skew.type="hidden";use_skew.name="use_skew";use_skew.value="yes";form.appendChild(use_skew);var quantity=newComponent('quantity',"INPUT");quantity.type="hidden";quantity.name="quantity";quantity.value=1;form.appendChild(quantity);var add=newComponent('add',"INPUT");add.type="hidden";add.name="add";add.value=params.skews[0].id;form.appendChild(add);var grid=document.createElement("DIV");grid.className="grid-x grid-margin-x grid-margin-y align-justify align-bottom";form.appendChild(grid);
1599var cell=document.createElement("DIV");cell.className="cell shrink";cell.innerHTML="";if(params.skews.length>1){cell.innerHTML+="<div class='text-xsmall alt-font--light margin-bottom-light'>From</div>";}
1600cell.innerHTML+=params.price.currency?dg.service.currencyToChar(params.price.currency):"£";cell.innerHTML+=params.price.lower;grid.appendChild(cell);if(params.add_to_basket===false){var cell=document.createElement("A");cell.href=params.href;cell.className="cell shrink button button--small button--outline button--link";cell.textContent="View options";grid.appendChild(cell);}
1601else{var cell=document.createElement("DIV");cell.className="cell shrink";grid.appendChild(cell);var add_to_basket=newComponent('add_to_basket',"BUTTON");if(1===2){add_to_basket.type="button";add_to_basket.className="button button--small button--shop";add_to_basket.className+=" js-gb-delivery-warning-button";add_to_basket.textContent="Add to basket";dg.service.attachDeliveryWarning($(add_to_basket));}
1602else{add_to_basket.type="submit";add_to_basket.name="ajax_submit";add_to_basket.className="button button--small button--shop";add_to_basket.className+=" add-to-basket--"+params.skews[0].id;add_to_basket.textContent="Add to basket";}
1603cell.appendChild(add_to_basket);}
1604var message=document.createElement("DIV");message.className="top-left top-right text-small alt-font--light pad flex-container align-center-middle skew__ajax-message bg-overlay-dark hide";form.appendChild(message);dg.ui.skews.push(new __Skew($(skew)));}
1605function myBarMessage(params){context.el=document.createElement("DIV");context.el.className="cell auto bg-white text-center flex-container align-center-middle";if(params.hide){if(params.hide.small)context.el.className+=" hide-for-small-only";if(params.hide.medium)context.el.className+=" hide-for-medium";if(params.hide.large)context.el.className+=" hide-for-large";}
1606var container=newComponent('container',"DIV");context.el.appendChild(container);if(params.image){var image=newComponent('image',"IMG");image.src=params.image||'';image.alt=params.message||'';container.appendChild(image);}
1607var message=newComponent('text',"P");message.className="alt-font alt-font--natural no-margin";message.innerHTML=params.message||'';container.appendChild(message);}
1608function myBarBox(params){box(params);if(context.component.title){context.component.title.className+=" alt-font alt-font--natural";if(params.link_table==="spiritbrands"&&params.spiritbrand&&params.spiritbrand.href){var bws_link=newComponent('bws_link',"A");bws_link.href=params.spiritbrand.href;context.el.appendChild(bws_link);bws_link.appendChild(context.component.title);}
1609if(params.cocktail&&params.cocktail.href&&!params.submitted_cocktail){var cocktails_link=newComponent('cocktails_link',"A");cocktails_link.href=params.cocktail.href;context.el.appendChild(cocktails_link);cocktails_link.appendChild(context.component.aspect);cocktails_link.appendChild(context.component.title);}
1610else if((params.favourite||params.contact_engagement)&&params.href){var link=newComponent('favourite_link',"A");link.href=params.href;context.el.appendChild(link);link.appendChild(context.component.aspect);link.appendChild(context.component.title);}}
1611if(params.new){context.component.title.className+=" box__title--new";}
1612if(params.type==="ingredient"&&params.link_table!="ingredients"&&params.ingredient&&params.ingredient.name){var icon=dg.service.generateView('icon',{graphic:'ingredient',label:params.ingredient.displayName||params.ingredient.name});var category=newComponent('category',"P");category.className="box__copy alt-font alt-font--natural text-info";category.dataset.noClamp=1;category.appendChild(icon.el);context.el.appendChild(category);}
1613if((params.type==="ingredient"||params.pantry_ingredient===1)&&params.cocktail_count&&params.cocktail_count>0){var icon=dg.service.generateView('icon',{graphic:'glass',label:params.cocktail_count+' '+dg.
1613service.getPhrase(6,'cocktails').toLowerCase()});if(params.ingredient&&params.ingredient.cocktail_count_with_alt&&params.ingredient.cocktail_count_with_alt>params.cocktail_count){var difference=parseInt(params.ingredient.cocktail_count_with_alt)-parseInt(params.cocktail_count);var sub_label=document.createElement("SPAN");sub_label.className="text-producers pad-left-light";sub_label.textContent=" (+"+difference+")";icon.component.label.appendChild(sub_label);}
1614var count=newComponent('count',params.recipes_href?"A":"P");count.className="box__copy alt-font alt-font--natural";count.dataset.noClamp=1;count.appendChild(icon.el);if(params.recipes_href)count.href=dg.service.hrefLangPrefixed(params.recipes_href);context.el.appendChild(count);}
1615if(params.cocktail&&params.cocktail.score&&params.cocktail.score>1){var rating=newComponent('rating',"DIV");rating.className="bottom-left margin-bottom-half margin-left-half";rating.className+=" pad-bottom-light grid-x";context.el.appendChild(rating);for(var x=0;x<=(params.cocktail.score-1);++x){var icon=dg.service.generateView('icon',{graphic:'star'});rating.appendChild(icon.el);}
1616var show_half=!!params.cocktail.score.match(/\.5$/);while(x++<5){if(show_half){var icon=dg.service.generateView('icon',{graphic:'star-half'});show_half=false;}
1617else{var icon=dg.service.generateView('icon',{graphic:'star-empty'});}
1618rating.appendChild(icon.el);}
1619if(params.cocktail.score==5.5){var icon=dg.service.generateView('icon',{graphic:'plus'});rating.appendChild(icon.el);}}
1620if(params.cocktail&&params.cocktail.cocktail_group==="user-generated"){var status=newComponent('status',"P");status.className="box__copy alt-font alt-font--natural";status.style.marginBottom="1rem";context.el.appendChild(status);if(params.cocktail.is_public==="yes"){status.className+=" text-info";status.innerHTML="Public";}
1621else{status.innerHTML="Private";}
1622var cache_length=25*60;if(params.cocktail.last_updated_seconds_ago<cache_length){var cache_ttl=cache_length-params.cocktail.last_updated_seconds_ago;cache_ttl=Math.ceil(cache_ttl/60);var update_warning=document.createElement("P");update_warning.className="text-warning text-small alt-font alt-font--natural border border-warning";update_warning.style.padding="0.5rem";update_warning.style.marginLeft="-0.5rem";update_warning.style.marginRight="-0.5rem";update_warning.style.marginBottom="0.5rem";update_warning.style.marginTop="0.75rem";update_warning.textContent="Please allow up to "+cache_ttl;update_warning.textContent+=" minute"+(cache_ttl>1?"s":"");update_warning.textContent+=" for your changes to display on the recipe page";context.el.appendChild(update_warning);}}
1623params.buttons=params.buttons||[];if(params.pantry_ingredient&&params.buttons.indexOf('pantry')!==-1){var icon=dg.service.generateView('icon',{graphic:params.disabled?'cancel':'check',label:params.disabled?'Not included':'Included'});var pantry_indicator=newComponent('toggle_pantry_button',"BUTTON");pantry_indicator.className="button button--small button--outline margin-top-half";pantry_indicator.className+=" button--"+(params.disabled?"danger":"success");pantry_indicator.dataset.noClamp=1;pantry_indicator.appendChild(icon.el);context.el.appendChild(pantry_indicator);pantry_indicator.addEventListener("click",function(){context.component.toggle_pantry_button.disabled=true;var action=params.disabled?"make_available":"make_unavailable";params.disabled=!params.disabled;dg.api.togglePantryIngredient(params.link_id,action,function(){var icon=dg.service.generateView('icon',{graphic:params.disabled?'cancel':'check',label:params.disabled?'Not included':'Included'});setTimeout(function(){$(context.component.toggle_pantry_button).empty().append(icon.el).removeClass(action==="make_unavailable"?"button--success":"button--danger").addClass(action==="make_unavailable"?"button--danger":"button--success").prop("disabled",false);},500);if(dg.myBarService){if(action==="make_unavailable"){dg.myBarService.notify({title:"Pantry item removed",type:"danger",icon:"cancel",close:true});}
1624else{dg.myBarService.notify({title:"Pantry item included",type:"success",icon:"check",close:true});}}});});}
1625if(params.buttons.indexOf('add_item')!==-1){var icon=dg.service.generateView('icon',{graphic:params.in_bar?'cancel':'plus',label:params.in_bar?'Remove item':dg.service.getPhrase(31,'add_to_your_bar')});var add_item_button=newComponent('add_item_button',"BUTTON");add_item_button.className="button button--small button--outline margin-top-half ";add_item_button.className+="button--"+(params.in_bar?"danger":"success");add_item_button.dataset.noClamp=1;add_item_button.appendChild(icon.el);context.el.appendChild(add_item_button);params.added=params.in_bar;add_item_button.addEventListener("click",function(){context.component.add_item_button.disabled=true;var action=params.added?"remove":"add";params.added=!params.added;var icon=dg.service.generateView('icon',{graphic:'loading'});$(context.component.add_item_button).empty().append(icon.el).removeClass("button--success");if(action==="add"){var form=document.createElement("FORM");form.action="/your-account/your-ingredients";form.method="POST";document.body.appendChild(form);var item_id=document.createElement("INPUT");item_id.type="hidden";item_id.name="item_id";item_id.value=params.id;form.appendChild(item_id);var item_link_table=document.createElement("INPUT");item_link_table.type="hidden";item_link_table.name="item_link_table";item_link_table.value=params.link_table;form.appendChild(item_link_table);var item_sub_type=document.createElement("INPUT");item_sub_type.type="hidden";item_sub_type.name="item_sub_type";item_sub_type.value=params.sub_type;form.appendChild(item_sub_type);form.submit();}
1626else if(action==="remove"&&(params.in_bar||params.my_bar_item_id)){var item_id=params.in_bar?params.in_bar.id:params.my_bar_item_id;dg.api.deleteMyBarItem(item_id,function(){if(params.my_bar_item_id)delete params.my_bar_item_id;var icon=dg.service.generateView('icon',{graphic:'check',label:'Item removed'});$(context.component.add_item_button).empty().append(icon.el).removeClass("button--success").addClass("button--success");if(dg.myBarService&&typeof dg.myBarService.onDeleteItem==="function"){dg.myBarService.onDeleteItem();}
1627setTimeout(function(){context.component.add_item_button.disabled=false;var icon=dg.service.generateView('icon',{graphic:'plus',label:dg.service.getPhrase(31,'add_to_your_bar')});$(context.component.add_item_button).empty().append(icon.el);},3000);});}
1628else{$(context.component.add_item_button).remove();}});}
1629if(params.amazon_product&&params.amazon_product.url&&params.buttons.indexOf('amazon')!==-1){var icon=dg.service.generateView('icon',{graphic:'amazon-a'});var link=newComponent('link',"A");link.className="button button--small button--hover button--outline button--flat button--amazon bottom-left margin-bottom-half margin-left-half";link.appendChild(icon.el);link.href=params.amazon_product.url;link.target="_blank";link.rel="nofollow";context.el.appendChild(link);link.addEventListener('click',function(){dg.service.captureEvent('link-to-amazon');});}
1630if(params.buttons.indexOf('wish_list')!==-1){var icon=dg.service.generateView('icon',{graphic:'wish-list-check'});var button=newComponent('wish_list_button',"BUTTON");button.className="button button--small button--btl button--hover button--outline button--flat top-left margin-top-half margin-left-half";button.appendChild(icon.el);context.el.appendChild(button);params.in_wish_list=(params.contact_engagement&&params.contact_engagement.wish_list=='yes');if(params.in_wish_list)button.className+=" button--active";context.component.wish_list_button.addEventListener('click',function(){context.component.wish_list_button.disabled=true;params.in_wish_list=!params.in_wish_list;if(params.in_wish_list)context.component.wish_list_button.classList.add("button--active");else context.component.wish_list_button.classList.remove("button--active");var link_table=params.link_table,link_id=params.link_id;if(params.contact_engagement){link_table=params.contact_engagement.link_table,link_id=params.contact_engagement.link_id;}
1631dg.api.wishList({link_table:link_table,link_id:link_id,add:params.in_wish_list},function(){if(dg.myBarService){if(params.in_wish_list){dg.myBarService.n
1631otify({title:dg.service.getPhrase(31,'added_to_wish_list'),type:"success",icon:"wish-list-check",close:true});if(typeof dg.myBarService.onAddWishList==="function"){dg.myBarService.onAddWishList();}}
1632else{dg.myBarService.notify({title:"Item removed from your wish list",type:"danger",icon:"cancel",close:true});if(typeof dg.myBarService.onRemoveWishList==="function"){dg.myBarService.onRemoveWishList();}}}
1633dg.service.captureEvent((params.in_wish_list?'add':'remove')+'-wish-list');setTimeout(function(){context.component.wish_list_button.disabled=false;},1000);});});}
1634if(params.buttons.indexOf('favourite')!==-1&&params.is_guest!==true){var icon=dg.service.generateView('icon',{graphic:'heart'});var button=newComponent('favourite_button',"BUTTON");button.className="button button--small button--hover button--outline button--flat button--favourite bottom-right margin-bottom-half margin-right-half";button.appendChild(icon.el);context.el.appendChild(button);if(params.favourite)button.className+=" button--active";params.is_favourite=!!params.favourite;context.component.favourite_button.addEventListener('click',function(){context.component.favourite_button.disabled=true;params.is_favourite=!params.is_favourite;if(params.is_favourite)context.component.favourite_button.classList.add("button--active");else context.component.favourite_button.classList.remove("button--active");var link_table=params.link_table,link_id=params.link_id;if(params.favourite){link_table=params.favourite.link_table,link_id=params.favourite.link_id;}
1635dg.api.favourite({link_table:link_table,link_id:link_id,favourite:params.is_favourite},function(){if(dg.myBarService){if(params.is_favourite){dg.myBarService.notify({title:dg.service.getPhrase(31,'added_to_favourites'),type:"favourite",icon:"heart",close:true});if(typeof dg.myBarService.onAddFavourite==="function"){dg.myBarService.onAddFavourite();}}
1636else{dg.myBarService.notify({title:"Item removed from your favourites",type:"danger",icon:"cancel",close:true});if(typeof dg.myBarService.onRemoveFavourite==="function"){dg.myBarService.onRemoveFavourite();}}}
1637dg.service.captureEvent((params.is_favourite?'add':'remove')+'-favourite');setTimeout(function(){context.component.favourite_button.disabled=false;},1000);});});}
1638if(params.buttons.indexOf('delete')!==-1){var icon=dg.service.generateView('icon',{graphic:'cancel'});var button=newComponent('delete_button',"BUTTON");button.className="button button--small button--outline button--flat button--danger no-border top-right margin-top-half margin-right-half";button.appendChild(icon.el);context.el.appendChild(button);button.addEventListener('click',function(){var message=params.display_name+":\n"+dg.service.getPhrase(31,'remove_from_your_bar');if(confirm(message)===true){dg.api.deleteMyBarItem(params.id,function(){$(context.el).trigger("item.deleted");});}});}
1639if(params.cocktail&&params.cocktail.cocktail_group==="user-generated"&&params.submitted_cocktail){var icon=dg.service.generateView('icon',{graphic:'edit',label:'edit'});var link=newComponent('edit_link',"A");link.className="button button--small button--outline button--cocktail-builder text-white bottom-left margin-bottom-half margin-left-half";link.appendChild(icon.el);link.href="/your-account/edit-cocktail/"+params.cocktail.id;context.el.appendChild(link);var icon=dg.service.generateView('icon',{graphic:'cocktails',label:'view'});var link=newComponent('view_link',"A");link.className="button button--small button--outline button--link text-white bottom-right margin-bottom-half margin-right-half";link.appendChild(icon.el);link.href=params.cocktail.href;context.el.appendChild(link);}
1640if(params.cocktail&&params.ingredients){var recipe_container=newComponent('recipe_container',"DIV");recipe_container.className="box__min-height";context.el.prepend(recipe_container);recipe_container.appendChild(context.component.cocktails_link);var list=newComponent('ingredients_list',"UL");list.className="box__list text-left alt-font alt-font--light alt-font--natural";context.el.appendChild(list);for(var x=0;x<params.ingredients.length;++x){var item=newComponent('ingredients_item',"LI");if(params.ingredients[x].in_my_bar==="false")item.className="text-danger";else if(params.ingredients[x].category==="Pantry")item.className="text-grey";else if(params.ingredients[x].alternative_ingredient)item.className="text-producers";else item.className="text-info";list.appendChild(item);var grid=newComponent('ingredients_item_grid',"DIV");grid.className="grid-x";item.appendChild(grid);var name=newComponent('ingredients_item_name',"DIV");
1640name.className="cell auto";name.innerHTML=params.ingredients[x].name;grid.appendChild(name);var icon_cell=newComponent('ingredients_item_icon',"DIV");icon_cell.className="cell shrink";grid.appendChild(icon_cell);var _graphic='check';if(params.ingredients[x].in_my_bar==="false")_graphic="cancel";else if(params.ingredients[x].alternative_ingredient)_graphic="alternative";var icon=dg.service.generateView('icon',{graphic:_graphic});icon_cell.appendChild(icon.el);}}
1641if(params.contact_engagement){if(params.contact_engagement.tried!=='not_tried'){var tried=newComponent('tried',"P");tried.className="box__copy alt-font alt-font--natural";tried.dataset.noClamp=1;tried.textContent=dg.service.getPhrase(31,params.contact_engagement.tried);if(context.component.recipe_container){context.component.recipe_container.appendChild(tried);}
1642else{context.el.appendChild(tried);}}
1643if(params.contact_engagement.notes_safe_present_tooltip&&params.contact_engagement.notes_safe_present_tooltip.length){var _href=null;if(params.href)_href=params.href;else if(params.spiritbrand&&params.spiritbrand.href)_href=params.spiritbrand.href;else if(params.cocktail&&params.cocktail.href)_href=params.cocktail.href;if(_href!==null){var notes=newComponent('notes',"A");notes.href=_href+"#user-notes";notes.className="box__copy alt-font alt-font--natural text-link pointer";notes.textContent="Your notes";}
1644else{var notes=newComponent('notes',"P");notes.className="box__copy alt-font alt-font--natural";notes.textContent="Your notes";}
1645var tt=new Foundation.Tooltip($(notes),{tipText:params.contact_engagement.notes_safe_present_tooltip,showOn:'medium',allowHtml:true});if(context.component.recipe_container){context.component.recipe_container.appendChild(notes);}
1646else{context.el.appendChild(notes);}}}
1647if(params.user_rating){var rating=newComponent('rating',"DIV");rating.className="grid-x align-center pad-bottom-half";if(context.component.recipe_container){context.component.recipe_container.appendChild(rating);}
1648else{context.el.appendChild(rating);}
1649var text=newComponent('rating_text',"P");text.textContent="Your rating";text.className="cell box__copy alt-font alt-font--natural alt-font--light pad-top-half";rating.appendChild(text);for(var x=0;x<=(params.user_rating-1);++x){var icon=dg.service.generateView('icon',{graphic:'star'});rating.appendChild(icon.el);}
1650var show_half=!!params.user_rating.match(/\.5$/);while(x++<5){if(show_half){var icon=dg.service.generateView('icon',{graphic:'star-half'});show_half=false;}
1651else{var icon=dg.service.generateView('icon',{graphic:'star-empty'});}
1652rating.appendChild(icon.el);}
1653if(params.user_rating==5.5){var icon=dg.service.generateView('icon',{graphic:'plus'});rating.appendChild(icon.el);}}}
1654function commentsThread(params){context.el=document.createElement("OL");context.el.className="comments";}
1655function commentsItem(params){context.el=document.createElement("LI");context.el.className="comments__item";}
1656function comment(params){context.el=document.createElement("DIV");context.el.className="comment";if(params.removed||params.status==='deleted'||!params.id){var body=newComponent('body',"DIV");body.className="comment__body";body.style.fontStyle="italic";body.textContent="User has removed this comment";context.el.appendChild(body);return;}
1657var header=newComponent('header',"DIV");header.className="comment__header";context.el.appendChild(header);var userCard=newComponent('user-card',"DIV");userCard.className="comment__user-card";header.appendChild(userCard);if(params.posted_anonymously==='yes'){var user=newComponent('user',"span");}
1658else{var user=newComponent('user',"A");user.href=params.profile_url;}
1659user.className="comment__user";user.textContent=params.display_name;var avatar=newComponent('avatar',"img");avatar.src=params.avatar;avatar.alt=params.display_name+"\'s Avatar"
1660avatar.className="comment__avatar";userCard.appendChild(avatar);userCard.appendChild(user);var badgeContainer=newComponent('badgeContainer',"DIV");badgeContainer.className="comment__badges-container";userCard.appendChild(badgeContainer);if(params.badges.length>
16600){params.badges.forEach(function(badge){if(badge.icon_HTML){var badgeComponent=newComponent('badge','span');badgeComponent.innerHTML=badge.icon_HTML;badgeComponent.className="comment__badge";badgeContainer.appendChild(badgeComponent);}});}
1661var timestamp=newComponent('timestamp',"span");timestamp.className="comment__timestamp";timestamp.textContent=params.created_nice;header.appendChild(timestamp);var body=newComponent('body',"DIV");body.className="comment__body";body.textContent=params.comment;context.el.appendChild(body);var footer=newComponent('footer',"DIV");footer.className="comment__footer";context.el.appendChild(footer);if(params.pending_message){var div=document.createElement("DIV");div.className="flex-container margin-bottom margin-top-half text-warning";div.appendChild(dg.service.generateView('icon',{graphic:'warning',label:params.pending_message}).el);footer.appendChild(div);context.el.className+=" border-warning";}
1662var grid=document.createElement("DIV");grid.className="grid-x align-justify-between";footer.appendChild(grid);if(params.status==='link-deleted'){var div=document.createElement("DIV");div.className="flex-container margin-top margin-bottom-half text-warning";div.appendChild(dg.service.generateView('icon',{graphic:'warning',label:'This comment was made on a page that no longer exists'}).el);footer.appendChild(div);context.el.className+=" border-warning";}
1663var cell=document.createElement("DIV");cell.className="cell auto";grid.appendChild(cell);var up_vote_button=newComponent('up_vote_button',"BUTTON");up_vote_button.type="button";up_vote_button.className="comment__vote-button";up_vote_button.appendChild(dg.service.generateView('icon',{graphic:'like'}).el);cell.appendChild(up_vote_button);var rating=newComponent('rating',"SPAN");rating.className="comment__rating";if(params.score<0)rating.className+=" text-hazard";rating.dataset.score=params.score;rating.textContent=params.score;cell.appendChild(rating);$(rating).on("score.update",function(){context.component.rating.textContent=context.component.rating.dataset.score;});var down_vote_button=newComponent('down_vote_button',"BUTTON");down_vote_button.type="button";down_vote_button.className="comment__vote-button";down_vote_button.appendChild(dg.service.generateView('icon',{graphic:'dislike'}).el);cell.appendChild(down_vote_button);if(params.display_only){up_vote_button.disabled=true;down_vote_button.disabled=true;}
1664else{if(!dg.logged_in){var reply_button=newComponent('reply_button',"a");reply_button.href='/login?redir='+window.location.pathname;reply_button.className="comment__reply-button display-inline-flex";reply_button.appendChild(dg.service.generateView('icon',{graphic:'reply',label:'Reply'}).el);cell.appendChild(reply_button);}
1665else if(params.allow_reply!=false){var reply_button
1666if(!params.parent_id||params.parent_id===null){var reply_button=newComponent('reply_button',"BUTTON");reply_button.type="button";reply_button.dataset.id=params.id;reply_button.className="comment__reply-button";}
1667else{var reply_button=newComponent('reply_button',"a");reply_button.href=params.forum_href+'/'+params.id_encoded+'?r=1';reply_button.className="comment__reply-button display-inline-flex";}
1668reply_button.appendChild(dg.service.generateView('icon',{graphic:'reply',label:'Reply'}).el);cell.appendChild(reply_button);}
1669if(dg.logged_in){up_vote_button.addEventListener("click",function(){++context.component.rating.dataset.score;context.component.rating.className+=" text-success";$(context.component.rating).trigger("score.update");context.component.up_vote_button.disabled=true;context.component.down_vote_button.disabled=true;dg.api.vote(params.id,'comment','5');});down_vote_button.addEventListener("click",function(){--context.component.rating.dataset.score;context.component.rating.className+=" text-hazard";$(context.component.rating).trigger("score.update");context.component.up_vote_button.disabled=true;context.component.down_vote_button.disabled=true;dg.api.vote(params.id,'comment','0');});}
1670else{up_vote_button.addEventListener("click",function(){$("#js-comment-login").foundation("open");});down_vote_button.addEventListener("click",function(){$("#js-comment-login").foundation("open");});}
1671var cell=document.createElement("DIV");cell.className="cell shrink";grid.appendChild(cell);if(params.owner==="yes"){var delete_button=newComponent('delete_button',"BUTTON");delete_button.className="comment__delete-button";delete_button.appendChild(dg.service.generateView('icon',{graphic:'delete',label:'delete'}).el);cell.appendChild(delete_button);}
1672else{var report_button=newComponent('report_button',"A");report_button.className="comment__report-button";report_button.textContent="! Report";report_button.href="mailto:[email protected]";report_button.href+="?subject=User%20Submitted%20Comment%20Report";report_button.href+="&body="+encodeURIComponent("Original comment:\n\n\t");report_button.href+=encodeURIComponent(params.comment+"\n\n");report_button.href+=encodeURIComponent("Posted on the following URL:\n\n\t");report_button.href+=encodeURIComponent(window.location.href+"\n\n---\n\n");report_button.href+=encodeURIComponent("Reason(s) for reporting this comment:\n\n\n");cell.appendChild(report_button);}}}
1673function commentReply(commenting_as){context.el=document.createElement("DIV");context.el.className="comment comment--make comment--make-reply";var header=newComponent('header',"DIV");header.className="comment__header";context.el.appendChild(header);var comment_as=document.createElement("DIV");comment_as.className="comment__as";header.appendChild(comment_as);var label=document.createElement("LABEL");label.textContent=commenting_as+" says:";label.className="no-margin";comment_as.appendChild(label);var body=newComponent('body',"DIV");body.className="comment__body";context.el.appendChild(body);var textarea=newComponent('textarea',"TEXTAREA");textarea.className="comment__reply";textarea.placeholder="Your reply here...";textarea.rows="3";textarea.maxlength="500";body.appendChild(textarea);var footer=newComponent('footer',"DIV");footer.className="comment__footer";context.el.appendChild(footer);var grid=document.createElement("DIV");grid.className="grid-x grid-margin align-middle";footer.appendChild(grid);var cell=document.createElement("DIV");cell.className="cell auto alt-font alt-font--natural alt-font--light";
1673cell.innerHTML="Please review our <a href='/encyclopedia/2096/bundle/user-comments' rel='nofollow' class='cell shrink'>Commenting Guidelines</a> before submitting your comment.";grid.appendChild(cell);var cell=document.createElement("DIV");cell.className="cell shrink";grid.appendChild(cell);var submit_button=newComponent('submit_button',"BUTTON");submit_button.className="comment__submit-button";submit_button.textContent="Reply";cell.appendChild(submit_button);}
1674return this;function newComponent(key,tag){var el=document.createElement(tag);return pushComponent(key,el);}
1675function pushComponent(key,el){if(key in context.component){if(!Array.isArray(context.component[key])){context.component[key]=[context.component[key]];}
1676context.component[key].push(el);return context.component[key].slice(-1)[0];}
1677context.component[key]=el;return context.component[key];}}
1678function __VoteBlock($el){var context=this;this.disabled=false;this.clicked_value=null;this.hover_value="0.0";this.el={};this.el.wrapper=$el;this.el.cells=this.el.wrapper.find(".vote-map__cell");this.el.areas=this.el.wrapper.find(".vote-map__area");this.el.icons=this.el.wrapper.find(".vote-map__icon");this.el.submit_button=$(".vote-modal-submit[data-target="+this.el.wrapper[0].id+"]");this.el.close_button_wrapper=$(".vote-modal-close[data-target="+this.el.wrapper[0].id+"]");this.el.modal=$("#"+this.el.submit_button.data("modal"));this.el.message_cell=this.el.submit_button.parents(".cell:first");this.el.trigger_button=$("[data-open='"+this.el.submit_button.data("modal")+"']");if(document.referrer.indexOf("?redir="+dg.uri+"?open-vote-modal=1")!==-1){openModal();}
1679this.api={};this.api.submitted=false;this.api.link_id=$el.data("link-id");this.api.section=$el.data("section");if(this.el.wrapper.data("value")){setValue(this.el.wrapper.data("value"));}
1680this.el.areas.each(function(){$(this).on({"mouseover":function(){if(context.disabled)return;context.hover_value=$(this).data('value')+"";context.el.wrapper[0].dataset.value=context.hover_value;},"mouseout":function(){if(context.disabled)return;context.hover_value="0.0";context.el.wrapper[0].dataset.value=context.clicked_value||"0.0";},"click":function(){if(context.disabled)return;context.clicked_value=$(this).data('value')+"";enableSubmit();}});});function setValue(value){context.clicked_value=value+"";context.el.wrapper[0].dataset.value=context.clicked_value||"0.0";};if(this.el.submit_button.length){disableSubmit();this.el.submit_button.on("click",apiSubmit);}
1681function disable(){context.disabled=true;}
1682function enable(){context.disabled=false;}
1683function apiSubmit(){if(context.api_submitted===true){setTimeout(closeModal,1200);return;}
1684if(window.grecaptcha!==undefined){if(!window.grecaptcha.getResponse()){if(context.captcha_error_presented===undefined){context.el.message_cell.prepend("<p class='text-danger'><strong>Please complete the CAPTCHA</strong></p>");context.captcha_error_presented=1;}
1685return;}}
1686context.api_submitted=true;context.el.message_cell.html("<p class='text-grey'>Submitting...</p>");disable();dg.api.vote(context.api.link_id||null,context.api.section||null,context.clicked_value,function(response){context.el.message_cell.empty();context.el.close_button_wrapper.removeClass("hide").addClass("hide-for-large");if(response==="OK"){context.el.message_cell.empty().html("<p class='text-info'><strong>Rating submitted!</strong></p>");setTimeout(closeModal,1200);var icon=dg.service.generateView('icon',{'graphic':'check','label':'Vote submitted'});context.el.trigger_button.empty().append(icon.el)}
1687else{context.el.message_cell.empty().html("<p class='text-danger'>"+response+"</p>");setTimeout(closeModal,12000);}})}
1688function disableSubmit(){if(!context.el.submit_button.length)return;context.el.submit_button.prop("disabled",true).removeClass("button--info");}
1689function enableSubmit(){if(!context.el.submit_button.length)return;context.el.submit_button.prop("disabled",false).addClass("button--info");}
1690function openModal(){if(!context.el.modal.length)return;context.el.modal.foundation("open");}
1691function closeModal(){if(!context.el.modal.length)return;context.el.modal.foundation("close");}
1692return this;}
1693function __cocktailBuilderAction(){dg.ui.cb={};dg.data.cb={};dg.data.cb.ga_events_enabled=true;dg.cbApi=new __cocktailbuilderApi(dg);dg.cbView=new __cocktailBuilderView();
1693dg.cbFatalError=function(params){return new __cocktailbuilderFatalError(params)};dg.cb_grid_limits={'list':{'small':[10,20,40,80],'medium':[10,20,40,80],'large':[10,20,40,80],'xlarge':[12,24,48,96],'xxlarge':[12,24,48,96]},'grid':{'small':[6,12,24],'medium':[8,16,32],'large':[10,20,40,80],'xlarge':[12,24,48,96],'xxlarge':[12,24,48,96]},'gallery':{'small':[6,12,24],'medium':[8,16,32],'large':[10,20,40,80],'xlarge':[12,24,48,96],'xxlarge':[12,24,48,96]}};var __routes=[{route:'^\/builder\/home$',action:'Index'},{route:'^\/builder\/(login|forgot-password)$',action:'Login'},{route:'^\/builder\/register$',action:'Register'},{route:'^\/builder\/get-started$',action:'GetStarted'},{route:'^\/builder\/ingredients(\/(base-spirits|liqueurs|wine-vermouth|beer-cider|bitters|syrup|fruit-veg-juice|fridge-pantry|mixer-packaged-juice))?$',action:'Ingredients'},{route:'^\/builder\/ingredients\/add$',action:'IngredientsAdd'},{route:'^\/builder\/ingredients\/(new$|edit\/)',action:'IngredientSubmit'},{route:'^\/builder\/recipes$',action:'Recipes'},{route:'^\/builder\/recipes\/search$',action:'RecipeSearch'},{route:'^\/builder\/recipes\/searches$',action:'RecipeSearches'},{route:'^\/builder\/recipes\/add$',action:'RecipeAdd'},{route:'^\/builder\/recipes\/your-recipes',action:'YourRecipes'},{route:'^\/builder\/your-recipe',action:'RecipeEdit'},{route:'^\/builder\/collections$',action:'Collections'},{route:'^\/builder\/collections\/[^/]+\/add-item$',action:'CollectionEditAddItem'},{route:'^\/builder\/collections\/',action:'CollectionEdit'}];for(var r=0;r<__routes.length;++r){if($("#cb-js-error-page").length>0){break;}
1694if(dg.service.iAmPage(__routes[r].route)){dg.active_action=__routes[r].action;dg.action=window["__cocktailBuilder"+__routes[r].action+"Action"];if(typeof this.action!=="function"){console.warn("unable to execute  `__cocktailBuilder"+__routes[r].action+"Action`");}
1695else{dg.action();}
1696break;}}
1697if(dg.service.iAmPage('^\/builder\/')){dg.ui.header.navigation.setActiveTab('cocktail-builder');$("#header-your-cocktail-builder-button").addClass("bg-shop-tone");}
1698dg.cbTestHook=function(className){if(!dg.development)return;$("body").addClass(className);}}
1699function __cocktailbuilderApi(){var context=this;var private={};private.debug=null;private.max_attempts=3;private.retry_attempts=0;private.retry_timeout=500;private.base_url='/builder/api';private.href_lang_prefix=dg.hreflang?"/"+dg.hreflang.replace(/\/$/,""):"";private.queue=[];private.queue_flush_at=50;private.auto_queue=null;private.auto_queue_interval=1000;private.awaiting_response=false;private.retry_queue=null;private.retry_queue_interval=100;private.retry_queue_attempts=0;private.retry_queue_max_attempts=10;this.setBaseURL=function(base_url){private.base_url=base_url;}
1700this.autoQueue=function(task,params,callback,interval){clearTimeout(private.auto_queue);buildQueueItem(task,params,callback);if(interval&&!isNaN(interval)){private.auto_queue_interval=interval;}
1701private.auto_queue=setTimeout(context.executeQueue,private.auto_queue_interval);};this.resetAutoQueueTimer=function(){clearTimeout(private.auto_queue);};this.terminateAutoQueue=function(){clearTimeout(private.auto_queue);private.auto_queue=null;}
1702this.pushToQueue=function(task,params,callback,interval){if(interval!==undefined){context.autoQueue(task,params,callback,interval)}
1703else{buildQueueItem(task,params,callback);}};this.executeQueue=function(callback){if(private.awaiting_response===true){++private.retry_queue_attempts;clearTimeout(private.retry_queue);if(private.retry_queue_attempts<=private.retry_queue_max_attempts){private.retry_queue=setTimeout(context.executeQueue,private.retry_queue_interval);}
1704else{dg.cbFatalError({_trigger:"api executeQueue() request failed after "+private.retry_queue_attempts+" attempts",_gtag:{name:'api',label:'js-queue-expired'}});}
1705return false;}
1706private.retry_queue_attempts=0;private.awaiting_response=true;var queue=[].concat(private.queue);private.queue=[];var $request=$.post(private.href_lang_prefix+private.base_url+"/multiplex",getMultiplex(queue));++private.retry_attempts;$request.done(function(r){if(!r||!dg.service.isJson(r)){if(private.retry_attempts>
1706=private.max_attempts){dg.cbFatalError({_trigger:"api executeQueue() request response invalid JSON",_attempts:private.retry_attempts,_gtag:{name:'api',label:'invalid-json-response'}});}
1707else{private.queue=queue;setTimeout(context.executeQueue,private.retry_timeout);}}
1708else{private.retry_attempts=0;r=JSON.parse(r);Object.keys(r.response).forEach(function(index){var queued_callback=queue[index].callback;if(typeof queued_callback==="function"){queued_callback({AJAXstatus:'ok',AJAXresponse:r.response[index]});}});if(r.gtag){captureEvent(r.gtag);}
1709if(typeof callback==="function"){callback();}}
1710private.awaiting_response=false;}).fail(function(r){if(private.retry_attempts>=private.max_attempts){dg.cbFatalError({_trigger:"api executeQueue() request fail",_attempts:private.retry_attempts,_gtag:{name:'api',label:'ajax-fail-multiplex-'+r.status}});}
1711else{private.queue=queue;setTimeout(context.executeQueue,private.retry_timeout);}
1712private.awaiting_response=false;});};this.hasQueue=function(){return private.queue.length>0;};this.get=function(task,params,callback){execute('get',task,params,callback);};this.post=function(task,params,callback){execute('post',task,params,callback);};return this;function buildUrl(task,params){return private.href_lang_prefix+private.base_url+"/"+task;}
1713function buildQueueItem(task,params,callback){private.queue.push({task:task,params:params||{},callback:callback||null})
1714if(private.queue.length>=private.queue_flush_at&&private.awaiting_response===false){clearTimeout(private.auto_queue);context.executeQueue();}}
1715function getMultiplex(queue){return{queue:(queue||private.queue).map(function(q){return{task:q.task,params:q.params};})};};function execute(method,task,params,callback){++private.retry_attempts;var $request;if(method.toLowerCase()=="get"){$request=$.post(buildUrl(task,params),params);}
1716else{$request=$.get(buildUrl(task,params),params);}
1717$request.done(function(r){if(!r||!dg.service.isJson(r)){if(private.retry_attempts>=private.max_attempts){dg.cbFatalError({_trigger:"api execute() request response invalid JSON",_attempts:private.retry_attempts,_gtag:{name:'api',label:'invalid-json-response'}});}
1718else{setTimeout(function(){execute(method,task,params,callback);},private.retry_timeout);}}
1719else{if(r.gtag){captureEvent(r.gtag);}
1720if(typeof callback==="function"){private.retry_attempts=0;callback({AJAXstatus:'ok',AJAXresponse:JSON.parse(r)});}}}).fail(function(r){if(!r||!dg.service.isJson(r)){if(private.retry_attempts>=private.max_attempts){dg.cbFatalError({_trigger:"api execute() request fail",_attempts:private.retry_attempts,_gtag:{name:'api',label:'ajax-fail-'+r.status}});}
1721else{setTimeout(function(){execute(method,task,params,callback);},private.retry_timeout);}}
1722else if(typeof callback==="function"){callback({AJAXstatus:'error',AJAXresponse:JSON.parse(r)});}});}
1723function captureEvent(gtag_array){if(!dg.data.cb||dg.data.cb.ga_events_enabled!==true||!gtag_array instanceof Array||gtag_array.length<1){return false;}
1724gtag_array.forEach(function(gtag){window.gtag_builder('event',gtag.name,'cocktail-builder-api',gtag.label);});};}
1725function __cocktailBuilderView(){this.templates={'logo':'__cocktailBuilderViewLogo','logo-with-dg':'__cocktailBuilderViewLogoWithDg','icon':'__cocktailBuilderViewIcon','tag':'__cocktailBuilderViewTag','button':'__cocktailBuilderViewButton','rating':'__cocktailBuilderViewRating','item-list':'__cocktailBuilderViewItemList','item-list-message':'__cocktailBuilderViewItemListMessage','item':'__cocktailBuilderViewItem','item-recipe':'__cocktailBuilderViewItemRecipe','item-search':'__cocktailBuilderViewItemSearch','item-user-recipe':'__cocktailBuilderViewItemUserRecipe','item-recipe-search-ingredient':'__cocktailBuilderViewRecipeSearchIngredient','item-collection':'__cocktailBuilderViewItemCollection','textarea':'__cocktailBuilderViewTextarea','select':'__cocktailBuilderViewSelect','checkbox':'__cocktailBuilderViewCheckbox','form-control-message':'__cocktailBuilderViewFormControlMessage','item-manage-modal':'__cocktailBuilderViewItemManageModal'};this.generate=function(template,params){return new window[this.templates[template]]({el:null,params:params||{},component:{},newComponent:newComponent,pushComponent:pushComponent,get:get});};var private={};private.ingredient_types={'1':{icon:'spirits',title:'Base Spirit'},'2':{icon:'liqueurs',title:'Liqueur'},'3':{icon:'wines',title:'Wine/Vermouth'},'4':{icon:'beer',title:'Beer/Cider'},'5':{icon:'style',title:'Bitter'},'6':{icon:'syrup',title:'Syrup'},'7':{icon:'ingredient',title:'Fruit/Veg Juice'},'8':{icon:'juice',title:'Mixer/Packaged Juice'},'9':{icon:'pantry',title:'Fridge/Pantry'},'default':{icon:'all-ingredients',title:"Misc ingredient"}};private.unknown_ingredient_id=1664;return this;function newComponent(key,tag){var el=document.createElement(tag);return pushComponent(key,el,this.component);}
1726function pushComponent(key,el,component){if(key in component){if(!Array.isArray(component[key])){component[key]=[component[key]];}
1727component[key].push(el);return component[key].slice(-1)[0];}
1728component[key]=el;return component[key];}
1729function get(key){return private[key]||null;}}
1730function __cocktailBuilderCollectionEditAddItemAction(){var jump_to_results=dg.service.getQuery("h");var collection_id=window.location.pathname.split("/").splice(-2).shift();if(dg.service.getQuery("keyword")||dg.service.getQuery("source")){dg.ui.item_list=dg.cbView.generate('item-list',{classNames:'cb-list--add-item'});var list_type=localStorage.getItem('cb-list-type');if(list_type!==null)dg.ui.item_list.setType(list_type);$("#pagination-item-list").append(dg.ui.item_list.el);$(dg.ui.item_list.el).append(dg.cbView.generate('item-list-message',{'icon':'loading','classNames':'cb-list-message--no-results cb-list-message--large','title':'Fetching items','sub_title':'Please wait a moment...'}).el);dg.ui.pagination=new __cocktailbuilderPagination();dg.ui.pagination.setApiTask('collection-item-search');dg.ui.pagination.addInput('limit',$("#pagination-limit"));setLimitOptions();$(window).on('changed.zf.mediaquery',setLimitOptions);if($("#pagination-category").length>0){dg.ui.pagination.addInput('category',$("#pagination-category"));}
1731dg.ui.pagination.addInput('source',$("#cb-js-existing-source"));dg.ui.pagination.addInput('offset',$("#pagination-offset"));dg.ui.pagination.addInput('keyword',$("#pagination-keyword"));dg.ui.pagination.addButton('next',$(".pagination-next"));dg.ui.pagination.addButton('prev',$(".pagination-prev"));dg.ui.pagination.addButton('first',$(".pagination-first"));dg.ui.pagination.addButton('last',$(".pagination-last"));dg.ui.pagination.addButton('submit',$("#pagination-submit"));dg.ui.pagination.setParam('collection_id',collection_id);dg.ui.pagination.setItemCountView($("#pagination-item-count"));dg.ui.pagination.setPageCountView($(".pagination-page-count"));dg.ui.pagination.setCurrentPageView($(".pagination-current-page"));dg.ui.pagination.setLoaderView($(".pagination-loader"));
1731dg.ui.pagination.reloadOnBrowserBack();dg.ui.pagination.build=function(self){dg.ui.pagination.update_url=true;$(".cb-pre-fadein").removeClass("cb-pre-fadein").addClass("cb-fadein");$(".cb-js-delete-on-pagination").remove();$(dg.ui.item_list.el).empty();dg.ui.item_list.presentType();if(self.data.response.result_count<1){$(dg.ui.item_list.el).append(dg.cbView.generate('item-list-message',{'icon':'dislike','classNames':'cb-list-message--no-results cb-list-message--large','title':'No items found'}).el);}
1732else{self.data.response.result.forEach(function(item,i){item.add_to_collection_id=collection_id;if(!dg.service.getQuery("source")){item.afterAdd=function(){window.location.href='/builder/collections/'+collection_id;};}
1733var template=null;if(item.user_generated_recipe){template="item-user-recipe";}
1734else if(item.link_table==="cocktails"){template="item-recipe";}
1735else if(item.link_table==="spiritbrands"||item.link_table==="ingredients"){template="item";}
1736if(template!==null){$(dg.ui.item_list.el).append(dg.cbView.generate(template,item).el);}});}
1737if(self.call_trigger!=="onChangeLimit"){if(jump_to_results){window.scrollTo(0,$("#cb-js-results").offset().top);}
1738jump_to_results=1;}};dg.ui.pagination.callApi();dg.ui.pagination.inputs.source.on("change",function(){dg.ui.pagination.inputs.offset.val(0);dg.ui.pagination.callApi('onChangeSource');});$(".pagination-change-type").removeClass("cb-button--off")
1739.not("[data-type='"+dg.ui.item_list.type+"']")
1740.addClass("cb-button--off");$(".pagination-change-type").each(function(){var $button=$(this);var $container=$button.parent();var $siblings=$container.find(".pagination-change-type").not($button);$button.on("click",function(e){if($button.data("type")==dg.ui.item_list.type)return false;$button.removeClass("cb-button--off").prop("disabled",true);$siblings.addClass("cb-button--off").prop("disabled",true);dg.ui.item_list.setType($button.data("type"));localStorage.setItem('cb-list-type',$button.data("type"));setLimitOptions(e,true);setTimeout(function(){$button.prop("disabled",false);$siblings.prop("disabled",false);},1000);});});}
1741function setLimitOptions(event,list_type_changed){var prev_limit=parseInt(dg.ui.pagination.getParam('limit'));var limits=dg.cb_grid_limits[dg.ui.item_list.type][Foundation.MediaQuery.current];var selected_index=1;dg.ui.pagination.inputs.limit.empty();for(var l=0;l<limits.length;++l){var option=document.createElement("OPTION");option.value=limits[l];option.textContent=limits[l];if(l===selected_index){option.selected=1;}
1742dg.ui.pagination.inputs.limit.append(option);}
1743if(list_type_changed||(event&&prev_limit!==parseInt(dg.ui.pagination.inputs.limit.val()))){dg.ui.pagination.inputs.limit.trigger("change");}}}
1744function __cocktailBuilderCollectionEditAction(){var jump_to_results=dg.service.getQuery("h");dg.ui.item_list=dg.cbView.generate('item-list');var list_type=localStorage.getItem('cb-list-type');if(list_type!==null)dg.ui.item_list.setType(list_type);$("#pagination-item-list").append(dg.ui.item_list.el);var allow_delete=$("#pagination-item-list[data-no-delete]").length==0;$(dg.ui.item_list.el).append(dg.cbView.generate('item-list-message',{'icon':'loading','classNames':'cb-list-message--no-results cb-list-message--large','title':'Fetching items','sub_title':'Please wait a moment...'}).el);dg.ui.pagination=new __cocktailbuilderPagination();dg.ui.pagination.setApiTask('collection');var collection_id=window.location.pathname.split("/").pop();dg.ui.pagination.setParam('id',collection_id);dg.ui.pagination.setParam('list_items',1);dg.ui.pagination.addInput('limit',$("#pagination-limit"));setLimitOptions();$(window).on('changed.zf.mediaquery',setLimitOptions);dg.ui.pagination.addInput('offset',$("#pagination-offset"));dg.ui.pagination.addInput('keyword',$("#pagination-keyword"));dg.ui.pagination.addInput('sort',$("#pagination-sort"));dg.ui.pagination.addButton('next',$(".pagination-next"));dg.ui.pagination.addButton('prev',$(".pagination-prev"));dg.ui.pagination.addButton('first',$(".pagination-first"));dg.ui.pagination.addButton('last',$(".pagination-last"));dg.ui.pagination.addButton('submit',$("#pagination-submit"));dg.ui.pagination.addButton('clear_filters',$("#pagination-clear-filters"));dg.ui.pagination.setItemCountView($("#pagination-item-count"));dg.ui.pagination.setPageCountView($(".pagination-page-count"));dg.ui.pagination.setCurrentPageView($(".pagination-current-page"));dg.ui.pagination.setLoaderView($(".pagination-loader"));
1744dg.ui.pagination.reloadOnBrowserBack();dg.ui.pagination.build=function(self){dg.ui.pagination.update_url=true;$(".cb-pre-fadein").removeClass("cb-pre-fadein").addClass("cb-fadein");$(".cb-js-delete-on-pagination").remove();$(dg.ui.item_list.el).empty();$("#pagination-result-params").empty();$("#pagination-result-params-container").addClass("hide");$("#pagination-clear-filters-container").addClass("hide");if(self.getParam('keyword')){$("#pagination-result-params").append(dg.cbView.generate('tag',{'text':self.data.response.result_count+' items'}).el);$("#pagination-result-params-container").removeClass("hide");if(self.getParam('keyword')){$("#pagination-clear-filters-container").removeClass("hide");}}
1745if(self.getParam('keyword')){$("#pagination-result-params").append(dg.cbView.generate('tag',{'icon':'search','text':"&lsquo; "+self.getParam('keyword')+" &rsquo;",'classNames':"alt-font--natural"}).el);}
1746dg.ui.item_list.presentType();if(self.data.response.result_count<1){$(dg.ui.item_list.el).append(dg.cbView.generate('item-list-message',{'icon':'dislike','classNames':'cb-list-message--no-results  cb-list-message--large','title':'No items found','sub_title':self.getParam('keyword')?"You don't have any items that match your search.":"You haven't added any items here yet.",}).el);}
1747else{self.data.response.result.forEach(function(item,i){item.collection_item.edit=1;item.collection_item.no_delete=!allow_delete;item.onBeforeDelete=function(){$("#cb-js-on-delete").foundation("open");}
1748item.onDelete=function(){dg.ui.pagination.queue_api=1;dg.ui.pagination.callApi();dg.cbApi.executeQueue(function(){setTimeout(function(){$("#cb-js-on-delete").foundation("close");},300);});dg.ui.pagination.queue_api=null;};if(item.collection_item.link_table=="ingredients"||item.collection_item.link_table=="spiritbrands"){$(dg.ui.item_list.el).append(dg.cbView.generate('item',item).el);}
1749else if(item.collection_item.link_table=="cocktails"){$(dg.ui.item_list.el).append(dg.cbView.generate('item-recipe',item).el);}});}
1750if(self.call_trigger!=="onChangeLimit"){if(jump_to_results){window.scrollTo(0,$("#cb-js-results").offset().top);}
1751jump_to_results=1;}};dg.ui.pagination.callApi();$(".pagination-change-type").removeClass("cb-button--off")
1752.not("[data-type='"+dg.ui.item_list.type+"']")
1753.addClass("cb-button--off");$(".pagination-change-type").each(function(){var $button=$(this);var $container=$button.parent();var $siblings=$container.find(".pagination-change-type").not($button);$button.on("click",function(e){if($button.data("type")==dg.ui.item_list.type)return false;$button.removeClass("cb-button--off").prop("disabled",true);$siblings.addClass("cb-button--off").prop("disabled",true);dg.ui.item_list.setType($button.data("type"));localStorage.setItem('cb-list-type',$button.data("type"));setLimitOptions(e,true);setTimeout(function(){$button.prop("disabled",false);$siblings.prop("disabled",false);},1000);});});$("#cb-js-scrollto-edit-details").on("click",function(){$("#cb-js-edit-details").get(0).scrollIntoView();});var image={};image.preview=null;image.uploaded=false;image.max_preview_size=15e+6;if($("#js-cb-image-preview").length){image.preview=$("#js-cb-image-preview")[0];}
1754image.extensions=['jpg','jpeg','png','webp','gif'];var image_input=$("#cb-js-new-image-id");var image_preview=$("#cb-js-new-preview");var image_container=$("#cb-js-new-image-container");image_input.on("change",function(){image_preview.empty().removeClass("hide");image_preview.html("...");if(this.files&&this.files[0]){var reader=new FileReader();file=this.files[0];reader.onload=function(e){var img=new Image();img.src=e.target.result;$(img).on('load',function(){if(file.size>image.max_preview_size){imageError('The image you provided is too large to show a preview but it may still upload on save','warning');}
1755else{image_container.removeClass("cb-form-card--with-error").addClass("cb-form-card--valid");image_preview.empty();image_preview.append(img);image.preview=img;image.uploaded=true;}});};var ext=$(this).val().split(".").pop().toLowerCase();
1755if(image.extensions.indexOf(ext)!==-1){reader.readAsDataURL(this.files[0]);}
1756else{imageError('Please provide your image in one of the following formats: .'+image.extensions.join(", ."));}}
1757else{imageError('An unknown error occurred when trying to upload your image.');}});function imageError(messageHTML,message_type){image_preview.empty();var error_container=document.createElement("div");error_container.className="cb-form-control__message";image_preview.append(error_container);var error=document.createElement("div");error.innerHTML="<strong>"+messageHTML+"</strong>";error_container.append(error);if(message_type=='warning'){error_container.className+=" cb-form-control-message--with-message";error.className="cb-form-control-message__info";image_container.addClass("cb-form-card--with-message").removeClass("cb-form-card--valid cb-form-card--with-error")}
1758else{error_container.className+=" cb-form-control-message--with-error";error.className="cb-form-control-message__error";error.innerHTML+="<br><br>Please try again.";image_container.addClass("cb-form-card--with-error").removeClass("cb-form-card--valid")}
1759image_input.val("");}
1760function setLimitOptions(event,list_type_changed){var prev_limit=parseInt(dg.ui.pagination.getParam('limit'));var limits=dg.cb_grid_limits[dg.ui.item_list.type][Foundation.MediaQuery.current];var selected_index=1;dg.ui.pagination.inputs.limit.empty();for(var l=0;l<limits.length;++l){var option=document.createElement("OPTION");option.value=limits[l];option.textContent=limits[l];if(l===selected_index){option.selected=1;}
1761dg.ui.pagination.inputs.limit.append(option);}
1762if(list_type_changed||(event&&prev_limit!==parseInt(dg.ui.pagination.inputs.limit.val()))){dg.ui.pagination.inputs.limit.trigger("change");}}}
1763function __cocktailBuilderCollectionsAction(){dg.ui.item_list=dg.cbView.generate('item-list');var list_type=localStorage.getItem('cb-list-type');if(list_type!==null)dg.ui.item_list.setType(list_type);$("#pagination-item-list").append(dg.ui.item_list.el);$(dg.ui.item_list.el).append(dg.cbView.generate('item-list-message',{'icon':'loading','classNames':'cb-list-message--no-results cb-list-message--large','title':'Fetching your collections','sub_title':'Please wait a moment...'}).el);dg.ui.pagination=new __cocktailbuilderPagination();dg.ui.pagination.setApiTask('collection');dg.ui.pagination.update_url=true;dg.ui.pagination.addInput('limit',$("#pagination-limit"));setLimitOptions();$(window).on('changed.zf.mediaquery',setLimitOptions);dg.ui.pagination.addInput('offset',$("#pagination-offset"));dg.ui.pagination.addInput('keyword',$("#pagination-keyword"));dg.ui.pagination.addInput('sort',$("#pagination-sort"));dg.ui.pagination.addButton('next',$(".pagination-next"));dg.ui.pagination.addButton('prev',$(".pagination-prev"));dg.ui.pagination.addButton('first',$(".pagination-first"));dg.ui.pagination.addButton('last',$(".pagination-last"));dg.ui.pagination.addButton('submit',$("#pagination-submit"));dg.ui.pagination.addButton('clear_filters',$("#pagination-clear-filters"));dg.ui.pagination.setItemCountView($("#pagination-item-count"));dg.ui.pagination.setPageCountView($(".pagination-page-count"));dg.ui.pagination.setCurrentPageView($(".pagination-current-page"));dg.ui.pagination.setLoaderView($(".pagination-loader"));dg.ui.pagination.reloadOnBrowserBack();dg.ui.pagination.callApi();dg.ui.pagination.build=function(self){$("#pagination-button-block").removeClass("cb-block-button--highlight");if(self.call_trigger==="onChangeOffset"&&dg.viewport.media_query==="small"){window.scrollTo(0,$("#section-container").offset().top);}
1764else if(self.call_trigger==="onClearFilters"){$("#pagination-button-block").trigger("cb.call.close");}
1765$(".cb-pre-fadein").removeClass("cb-pre-fadein").addClass("cb-fadein");$(".cb-js-delete-on-pagination").remove();$(dg.ui.item_list.el).empty();$("#pagination-result-params").empty();$("#pagination-result-params-container").addClass("hide");$("#pagination-clear-filters-container").addClass("hide");if(self.getParam('keyword')){$("#pagination-button-block").addClass("cb-block-button--highlight");$("#pagination-result-params").append(dg.cbView.generate('tag',{'text':self.data.response.result_count+' recipes'}).el);$("#pagination-result-params-container").removeClass("hide");$("#pagination-clear-filters-container").removeClass("hide");$("#pagination-result-params").append(dg.cbView.generate('tag',{'icon':'search','text':"&lsquo; "+self.getParam('keyword')+" &rsquo;",'classNames':"cb-tag--highlight alt-font--natural"}).el);}
1766dg.ui.item_list.presentType();if(self.data.response.result_count<1){var sub_title="You haven't created any collections yet";if(self.getParam('keyword')){sub_title="Your search returned no results";}
1767$(dg.ui.item_list.el).append(dg.cbView.generate('item-list-message',{'icon':'dislike','classNames':'cb-list-message--no-results cb-list-message--large','title':'No collections foun
1767d','sub_title':sub_title}).el);}
1768else{self.data.response.result.forEach(function(item,i){$(dg.ui.item_list.el).append(dg.cbView.generate('item-collection',item).el);});}};$("#pagination-button-block").on("cb.open",function(){$("#pagination-keyword").focus();});$(".pagination-change-type").removeClass("cb-button--off")
1769.not("[data-type='"+dg.ui.item_list.type+"']")
1770.addClass("cb-button--off");$(".pagination-change-type").each(function(){var $button=$(this);var $container=$button.parent();var $siblings=$container.find(".pagination-change-type").not($button);$button.on("click",function(e){if($button.data("type")==dg.ui.item_list.type)return false;$button.removeClass("cb-button--off").prop("disabled",true);$siblings.addClass("cb-button--off").prop("disabled",true);dg.ui.item_list.setType($button.data("type"));localStorage.setItem('cb-list-type',$button.data("type"));setLimitOptions(e,true);setTimeout(function(){$button.prop("disabled",false);$siblings.prop("disabled",false);},1000);});});function setLimitOptions(event,list_type_changed){var prev_limit=parseInt(dg.ui.pagination.getParam('limit'));var limits=dg.cb_grid_limits[dg.ui.item_list.type][Foundation.MediaQuery.current];var selected_index=1;dg.ui.pagination.inputs.limit.empty();for(var l=0;l<limits.length;++l){var option=document.createElement("OPTION");option.value=limits[l];option.textContent=limits[l];if(l===selected_index){option.selected=1;}
1771dg.ui.pagination.inputs.limit.append(option);}
1772if(list_type_changed||(event&&prev_limit!==parseInt(dg.ui.pagination.inputs.limit.val()))){dg.ui.pagination.inputs.limit.trigger("change");}}}
1773function __cocktailbuilderFatalError(params){var modal=document.createElement("DIV");modal.dataset.closeOnClick=false;modal.className="reveal cb-modal cb-modal--error cb-fadein";var $modal=new Foundation.Reveal($(modal));$modal.$overlay.addClass("cb-modal-overlay cb-modal-overlay--error");var container=document.createElement('DIV');container.className="grid-x grid-margin-x grid-margin-y";modal.appendChild(container);var cell=document.createElement("DIV");cell.className="cell divide-bottom-medium divide-bottom-large no-border";container.appendChild(cell);var grid=document.createElement("DIV");grid.className="grid-x grid-margin-x grid-margin-y";cell.appendChild(grid);var cell=document.createElement("DIV");cell.className="cell auto";cell.appendChild(dg.cbView.generate('logo',{classNames:'cb-modal__logo'}).el);grid.appendChild(cell);var cell=document.createElement("DIV");cell.className="cell pad-top";var title=document.createElement("H1");title.className="cb-modal__title";title.textContent=params.title||"An error occured";cell.appendChild(title);if(params.bodyHTML){var body=document.createElement("DIV");body.innerHTML=params.bodyHTML;}
1774else{var body=document.createElement("DIV");var p=document.createElement("P");if(params.body){p.textContent=params.body;}
1775else{p.innerHTML="We&rsquo;re really sorry, this doesn&rsquo;t normally happen...";}
1776body.appendChild(p);var reload=document.createElement("BUTTON");reload.className="cb-link margin-top";reload.textContent="Click here to reload this page"
1777reload.addEventListener('click',function(){location.reload();return false;});body.appendChild(reload);var homepage_url=dg.service.hrefLangPrefixed('/builder/home');var p=document.createElement("P");p.className="margin-top";p.innerHTML="or <a href='"+homepage_url+"' class='cb-link'>return to the Cocktail Builder homepage</a>";body.appendChild(p);}
1778cell.appendChild(body);grid.appendChild(cell);if(dg.data.cb.ga_events_enabled===true){if(params._gtag){window.gtag_builder('event',params._gtag.name,'cocktail-builder-fatal-error',params._gtag.label);}
1779else{window.gtag_builder('event','generic','cocktail-builder-fatal-error');}}
1780$(modal).foundation("open");}
1781function __cocktailBuilderFavouriteButton($button){if(!dg.ui.cb){new __cocktailBuilderAction();}
1782var link_id=$button.data('link-id');var link_table=$button.data('link-table');if(!link_id||!link_table){return false;}
1783var $button_icon=$button.find(".cb-button__icon:first");if(!$button_icon.length){var button_icon=document.createElement('SPAN');button_icon.className='cb-button__icon';$button.append(button_icon);$button_icon=$(button_icon);}
1784var favourite=!!$button.data("favourite");var hover_timeout=null;var submitting=false;var icons={'add':'heart-full','remove':'heart-broken','in':'heart-full','not_in':'heart'};if(favourite)presentFavourite();else presentNotFavourite();$button.on({click:toggleFavourite,mouseover:onMouseOver,mouseout:onMouseOut});function toggleFavourite(){if(submitting)return false;submitting=1;$button.prop("disabled",true);isLoading();dg.cbApi.post('favourite',{'link_table':link_table,'link_id':link_id,'add':(favourite?'no':'yes')}
1784,function(r){if(r.AJAXstatus!=="ok"){dg.cbFatalError({'_trigger':"__cocktailBuilderFavouriteButton `favourite` AJAX error",});}
1785else if(r.AJAXresponse.status!=="ok"){dg.cbFatalError({'_trigger':"__cocktailBuilderFavouriteButton `favourite` API response error",});}
1786else{favourite=r.AJAXresponse.response.favourite=="yes";setTimeout(function(){if(favourite)presentFavourite();else presentNotFavourite();setTimeout(function(){submitting=false;$button.prop("disabled",false);},2500);},1250);}});}
1787function onMouseOver(){clearTimeout(hover_timeout);if(submitting)return;hover_timeout=setTimeout(function(){if(favourite){$button_icon.empty()
1788.append(dg.cbView.generate('icon',{graphic:icons.remove}).el)
1789$button.removeClass("cb-button--favourite")
1790.addClass("cb-button--danger");}
1791else{$button_icon.empty()
1792.append(dg.cbView.generate('icon',{graphic:icons.add}).el)
1793$button.removeClass("cb-button--off")
1794.addClass("cb-button--favourite");}},250);}
1795function onMouseOut(){clearTimeout(hover_timeout);hover_timeout=setTimeout(function(){if(favourite)presentFavourite();else presentNotFavourite();},250);}
1796function isLoading(){clearTimeout(hover_timeout);$button.removeClass("cb-button--off cb-button--danger cb-button--favourite");if(favourite){$button.addClass("cb-button--danger");}
1797else{$button.addClass("cb-button--favourite");}
1798$button_icon.empty()
1799.append(dg.cbView.generate('icon',{graphic:'loading'}).el);}
1800function presentFavourite(){$button_icon.empty()
1801.append(dg.cbView.generate('icon',{graphic:icons['in']}).el);$button.addClass("cb-button--favourite")
1802.removeClass("cb-button--off cb-button--danger")
1803.data("favourite",1);}
1804function presentNotFavourite(){$button_icon.empty()
1805.append(dg.cbView.generate('icon',{graphic:icons.not_in}).el);$button.addClass("cb-button--off")
1806.removeClass("cb-button--favourite cb-button--danger")
1807.data("favourite",null);}}
1808function __cocktailbuilderFormCheckbox($container){var $input=$container.find(".cb-form-checkbox__input");var is_radio=$container.hasClass("cb-form-checkbox--radio");if(is_radio){var $siblings=$("input[name='"+$input.attr("name")+"']").not($input);}
1809var $link=$container.find("a");if($link.length>0){$link.on("click",function(e){e.stopPropagation();});}
1810evaluate();$input.on("change",evaluate);$input.on("cb.evaluate",evaluate);$container.on("click",function(e){if($input.prop("disabled"))return false;e.stopPropagation();if(is_radio){$input.prop("checked",true).change().trigger("active.radio");$siblings.each(function(){$(this).change();});}
1811else{$input.prop("checked",!$input.prop("checked")).change();}});$input.on("cb.disable",function(){$input.prop("disabled",true);$container.addClass("cb-form-checkbox--disabled");});$input.on("cb.enable",function(){$input.prop("disabled",false);$container.removeClass("cb-form-checkbox--disabled");});function evaluate(){if($input.prop("checked")){$container.addClass("cb-form-checkbox--active");}
1812else{$container.removeClass("cb-form-checkbox--active");}}}
1813function __cocktailbuilderFormControl($container){var $input=$container.find(".cb-form-control__input");if($input.val()){activate();}
1814if($input[0].nodeName=="TEXTAREA"){setTimeout(function(){$input[0].style.minHeight=$input[0].scrollHeight+'px'},1);}
1815if($input.attr("maxlength")&&$input.data("show-counter")){var $message_container=$container.next(".cb-form-control-message");var counter_container=document.createElement("DIV");counter_container.className="cb-form-control-message__info";counter_container.innerHTML="<span class='cb-form-control-message__counter'>"+$input.attr("maxlength")+"</span> characters remaining";$message_container.prepend(counter_container);var $counter=$message_container.find(".cb-form-control-message__counter");$input.on("input",maxLengthCount);maxLengthCount();}
1816if($input.val()&&!$container.hasClass("cb-form-control--with-error")){checkValidity();}
1817if($container.hasClass("cb-form-control--password-toggle")){var $password_button=$container.find(".cb-form-control__password-toggle-button");$password_button.on("click",togglePassword);}
1818var $mask;if($container.hasClass("cb-form-control--with-mask")){$mask=$container.find(".cb-form-control__mask");if($mask){$mask[0].dataset.init=$mask[0].textContent.trim();}}
1819$input.on({"input":function(){if($input.val()){activate();}
1820if($input.attr("maxlength")&&$input.data("auto-tab")){if($input.attr("maxlength")==$input.val().length){$input.trigger("checkvalidity");if(!$input.data("invalid")){var next=$(".cb-form-control").get((i+1));if(next){$(next).find(".cb-form-control__input").focus();}}}}
1821if($mask){let ltrim=$input.val().length;let mask=$mask[0].dataset.init;let post_mask=mask.substring(ltrim);let pre_mask=Array.apply(null,Array(ltrim)).map(String.prototype.valueOf,'&nbsp;');$mask[0].innerHTML=(pre_mask.join('')+post_mask);}},"focus":function(){$container.addClass("cb-form-control--focus");activate();},"blur":function(){$container.removeClass("cb-form-control--focus");if(!$input.val()){deactivate();}},"change":function(){$input.val($input.val().trim());checkValidity();},"checkvalidity":function(){activate();checkValidity();},"presentvalid":function(){setTimeout(function(){$container.addClass("cb-form-control--valid")
1822.removeClass("cb-form-control--with-error");},0);},"presentinvalid":function(){setTimeout(function(){$container.removeClass("cb-form-control--valid")
1823.addClass("cb-form-control--with-error");},0);},"pusherror":function(e,message){var $error_container=$container.next(".cb-form-control-message");if(!$error_container.length){var error_container=document.createElement("DIV");error_container.className='cb-form-control-message';$error_container=$(error_container);$error_container.insertAfter($container);}
1824var $error_message=$error_container.find(".cb-form-control-message__error");
1824if(!$error_message.length){var error_message=document.createElement("DIV");error_message.className='cb-form-control-message__error';$error_message=$(error_message);$error_container.append($error_message);}
1825$error_message.html(message);$error_container.addClass("cb-form-control-message--with-error");$container.addClass("cb-form-control--with-error cb-form-control--with-message");},"hideerror":function(){var $error_container=$container.next(".cb-form-control-message");var $error_message=$error_container.find(".cb-form-control-message__error");if($error_message.length>0){$error_message.remove();}
1826$error_container.removeClass("cb-form-control-message--with-error");$container.removeClass("cb-form-control--with-error");if($error_container.children().length<1){$container.removeClass("cb-form-control--with-message");}}});function activate(){$container.addClass("cb-form-control--active");}
1827function deactivate(){$container.removeClass("cb-form-control--active");}
1828function checkValidity(){if($container.hasClass("cb-form-control--no-validation"))return;if(!$input[0].checkValidity()){$container.removeClass("cb-form-control--valid").addClass("cb-form-control--with-error");$input.data("invalid",1);reportError();}
1829else{$container.addClass("cb-form-control--valid").removeClass("cb-form-control--with-error");$input.data("invalid",null);hideError();}}
1830function reportError(){var $error_container=$container.next(".cb-form-control-message");if($input.data("custom-error-target")){var $error_container=$($input.data("custom-error-target"));}
1831if($error_container.length>0){var $error_message=$error_container.find(".cb-form-control-message__error");
1831if(!$error_message.length>0){var error_message=document.createElement("DIV");error_message.className="cb-form-control-message__error";$error_container.append(error_message);$error_message=$(error_message);}
1832$error_message.html($input.data("custom-error")||$input[0].validationMessage);$error_container.addClass("cb-form-control-message--with-error");$container.addClass("cb-form-control--with-error cb-form-control--with-message");}}
1833function hideError(){var $error_container=$container.next(".cb-form-control-message");if($input.data("custom-error-target")){var $error_container=$($input.data("custom-error-target"));}
1834if($error_container.length>0){var $error_message=$error_container.find(".cb-form-control-message__error");if($error_message.length>0){$error_message.remove();$error_container.removeClass("cb-form-control-message--with-error");$container.removeClass("cb-form-control--with-error");if($error_container.find(".cb-form-control-message__info").length<1){$container.removeClass("cb-form-control--with-message");}}}}
1835function maxLengthCount(){var char_remaining=parseInt($input.attr("maxlength"))-parseInt($input.val().length);$counter.html(char_remaining);if(char_remaining<=10){$counter.addClass("low");}
1836else{$counter.removeClass("low");}}
1837function togglePassword(){var password_toggle_graphic=$password_button.find("use");var type=$input.attr("type")==="password"?"text":"password";$input.attr("type",type);password_toggle_graphic.attr("href","#icon-"+(type==='text'?'private':'public'));}}
1838function __cocktailBuilderGetStartedAction(){var api_interval_pause=2000;var loading_icon=dg.cbView.generate('icon',{graphic:'loading'});dg.ui.item_list=dg.cbView.generate('item-list',{classNames:'cb-list--add-item'});var list_type=localStorage.getItem('cb-list-type');if(list_type!==null)dg.ui.item_list.setType(list_type);$("#pagination-item-list").append(dg.ui.item_list.el);$(dg.ui.item_list.el).append(dg.cbView.generate('item-list-message',{'icon':'loading','classNames':'cb-list-message--no-results cb-list-message--large','title':'Fetching ingredients','sub_title':'Please wait a moment...'}).el);dg.ui.pagination=new __cocktailbuilderPagination();dg.ui.pagination.setApiTask('ingredient-list');dg.ui.pagination.setItemCountView($("#pagination-item-count"));dg.ui.pagination.setPageCountView($(".pagination-page-count"));dg.ui.pagination.setLoaderView($(".pagination-loader"));dg.ui.pagination.setParam('category','install');dg.ui.pagination.build=function(self){$(".cb-pre-fadein").removeClass("cb-pre-fadein").addClass("cb-fadein");$(".cb-js-delete-on-pagination").remove();$(dg.ui.item_list.el).empty();dg.ui.item_list.presentType();if(self.data.response.result_count<1){$(dg.ui.item_list.el).append(dg.cbView.generate('item-list-message',{'icon':'dislike','classNames':'cb-list-message--no-results cb-list-message--large','title':'No results found'}).el);}
1839else{self.data.response.result.forEach(function(item,i){item.add_item=1;item.push_to_queue_interval=api_interval_pause;item.beforeAdd=function(){$(".cb-js-recipe-counter").html(loading_icon.el);};item.afterAdd=function(){onAddIngredient(item);};$(dg.ui.item_list.el).append(dg.cbView.generate('item',item).el);});}};dg.ui.pagination.queue_api=1;dg.ui.pagination.callApi();updateRecipeCount();dg.cbApi.executeQueue();$(".pagination-change-type").removeClass("cb-button--off")
1840.not("[data-type='"+dg.ui.item_list.type+"']")
1841.addClass("cb-button--off");$(".pagination-change-type").each(function(){var $button=$(this);var $container=$button.parent();var $siblings=$container.find(".pagination-change-type").not($button);$button.on("click",function(e){if($button.data("type")==dg.ui.item_list.type)return false;$button.removeClass("cb-button--off").prop("disabled",true);$siblings.addClass("cb-button--off").prop("disabled",true);dg.ui.item_list.setType($button.data("type"));localStorage.setItem('cb-list-type',$button.data("type"));dg.ui.pagination.callApi();setTimeout(function(){$button.prop("disabled",false);$siblings.prop("disabled",false);},1000);});});var add_ingredient_interval;function onAddIngredient(item){clearTimeout(add_ingredient_interval);add_ingredient_interval=setTimeout(function(){updateRecipeCount();dg.cbApi.executeQueue();},api_interval_pause);}
1842function updateRecipeCount(){dg.cbApi.pushToQueue('search-recipe',{limit:1}
1842,function(r){if(r.AJAXstatus!=="ok"){dg.cbFatalError({'_trigger':"get-started `search-recipe` AJAX error",});}
1843else{if(r.AJAXresponse.status!=="ok"){dg.cbFatalError({'_trigger':"get-started `search-recipe` API response error",});}
1844else{if(r.AJAXresponse.response.result_count<=0){$(".cb-js-results-button").addClass("hide");$(".cb-js-no-results").removeClass("hide");}
1845else{$(".cb-js-results-button").removeClass("hide");$(".cb-js-no-results").addClass("hide");}
1846$(".cb-js-recipe-counter").html(r.AJAXresponse.response.result_count.toLocaleString());dg.cbTestHook("cb-js-counter-updated");}}});}}
1847function __cocktailBuilderIndexAction(){}
1848function __cocktailBuilderIngredientSubmitAction(){var $submit_form=$("#cb-js-ingredient-submit-form");$submit_form.on("submit",function(){$("#cb-js-modal-on-save").foundation('open');});dg.ui.search_ingredient_item_list=dg.cbView.generate('item-list',{type:'list'});$("#search-ingredient-list").append(dg.ui.search_ingredient_item_list.el);dg.ui.search_ingredient=new __cocktailbuilderPagination();dg.ui.search_ingredient.setApiTask('add-ingrededient-category-search');dg.ui.search_ingredient.addInput('keyword',$("#search-ingredient"));dg.ui.search_ingredient.enable_autocomplete=1;dg.ui.search_ingredient.min_keyword_chars=3;dg.ui.search_ingredient.addInput('limit',$("#search-ingredient-limit"));dg.ui.search_ingredient.addInput('offset',$("#search-ingredient-offset"));dg.ui.search_ingredient.addButton('next',$("#search-ingredient-next"));dg.ui.search_ingredient.addButton('prev',$("#search-ingredient-prev"));dg.ui.search_ingredient.addButton('submit',$("#search-ingredient-submit"));dg.ui.search_ingredient.setPageCountView($(".search-ingredient-page-count"));dg.ui.search_ingredient.setCurrentPageView($(".search-ingredient-current-page"));dg.ui.search_ingredient.setLoaderView($(".search-ingredient-loader"));dg.ui.search_ingredient.build=function(self){$(dg.ui.search_ingredient_item_list.el).empty();$("#search-ingredient-result-count").html(self.data.response.result_count+" results found");$("#search-ingredient-page-controls").removeClass("hide");if(self.data.response.result_count<1){if(self.getParam('keyword')){$(dg.ui.search_ingredient_item_list.el).append(dg.cbView.generate('item-list-message',{'icon':'dislike','classNames':'cb-list-message--no-results cb-list-message--small','title':'No ingredients found'}).el);}
1849else{$("#search-ingredient-page-controls").addClass("hide");}}
1850else{self.data.response.result.forEach(function(item){item.add_ingredient=1;var ingredient=dg.cbView.generate('item',item);$(dg.ui.search_ingredient_item_list.el).append(ingredient.el);$(ingredient.component.add_ingredient_button.el).on("click",function(){chooseIngredient(item);});});}};if($('#search-ingredient-id').val()){dg.cbApi.pushToQueue('add-ingrededient-category-search',{ingredient_id:$('#search-ingredient-id').val()},r=>{if(r.AJAXresponse.response.result_count<1)return;let item=r.AJAXresponse.response.result[0]||null;if(!item)return;chooseIngredient(item);});dg.cbApi.executeQueue();}
1851function chooseIngredient(item){item.add_ingredient=1;var view=dg.cbView.generate('item',item);$(view.component.add_ingredient_button.el).addClass('cb-button--danger');$(view.component.add_ingredient_button.el).html('unlink');$(view.component.add_ingredient_button.el).on('click',cancelIngredientChoice);$('#search-ingredient-id').val(item.id);$('#search-ingredient-item').empty().append(view.el);$('#search-ingredient-result-container').removeClass('hide');$('#search-ingredient-search-container').addClass('hide');}
1852function cancelIngredientChoice(){$('#search-ingredient-id').val('');$('#search-ingredient-item').empty();$('#search-ingredient-result-container').addClass('hide');$('#search-ingredient-search-container').removeClass('hide');}
1853var image={};image.preview=null;image.uploaded=false;image.max_preview_size=15e+6;if($("#js-cb-image-preview").length){image.preview=$("#js-cb-image-preview")[0];}
1854image.extensions=['jpg','jpeg','png','webp','gif'];var image_input=$("#cb-js-new-image-id");var image_preview=$("#cb-js-new-preview");var image_container=$("#cb-js-new-image-container");image_input.on("change",function(){image_preview.empty().removeClass("hide");image_preview.html("...");if(this.files&&this.files[0]){var reader=new FileReader();file=this.files[0];reader.onload=function(e){var img=new Image();img.src=e.target.result;$(img).on('load',function(){if(file.size>image.max_preview_size){imageError('The image you provided is too large to show a preview but it may still upload on 
1854save','warning');}
1855else{image_container.removeClass("cb-form-card--with-error").addClass("cb-form-card--valid");image_preview.empty();image_preview.append(img);image.preview=img;image.uploaded=true;}});};var ext=$(this).val().split(".").pop().toLowerCase();if(image.extensions.indexOf(ext)!==-1){reader.readAsDataURL(this.files[0]);}
1856else{imageError('Please provide your image in one of the following formats: .'+image.extensions.join(", ."));}}
1857else{imageError('An unknown error occurred when trying to upload your image.');}});function imageError(messageHTML,message_type){image_preview.empty();var error_container=document.createElement("div");error_container.className="cb-form-control__message";image_preview.append(error_container);var error=document.createElement("div");error.innerHTML="<strong>"+messageHTML+"</strong>";error_container.append(error);if(message_type=='warning'){error_container.className+=" cb-form-control-message--with-message";error.className="cb-form-control-message__info";image_container.addClass("cb-form-card--with-message").removeClass("cb-form-card--valid cb-form-card--with-error")}
1858else{error_container.className+=" cb-form-control-message--with-error";error.className="cb-form-control-message__error";error.innerHTML+="<br><br>Please try again.";image_container.addClass("cb-form-card--with-error").removeClass("cb-form-card--valid")}
1859image_input.val("");}}
1860function __cocktailBuilderIngredientsAddAction(){var jump_to_results=dg.service.getQuery("h");var go_back_on_add=dg.service.getQuery("return-on-add");var api_interval_pause=2000;if(dg.service.getQuery("keyword")||dg.service.getQuery("category")||dg.service.getQuery("iid")){dg.ui.item_list=dg.cbView.generate('item-list',{classNames:'cb-list--add-item'});var list_type=localStorage.getItem('cb-list-type');if(list_type!==null)dg.ui.item_list.setType(list_type);$("#pagination-item-list").append(dg.ui.item_list.el);$(dg.ui.item_list.el).append(dg.cbView.generate('item-list-message',{'icon':'loading','classNames':'cb-list-message--no-results cb-list-message--large','title':'Fetching ingredients','sub_title':'Please wait a moment...'}).el);dg.ui.pagination=new __cocktailbuilderPagination();dg.ui.pagination.setApiTask('ingredient-list');dg.ui.pagination.addInput('limit',$("#pagination-limit"));setLimitOptions();$(window).on('changed.zf.mediaquery',setLimitOptions);if($("#pagination-category").length>0){dg.ui.pagination.addInput('category',$("#pagination-category"));}
1861dg.ui.pagination.addInput('offset',$("#pagination-offset"));dg.ui.pagination.addInput('keyword',$("#pagination-keyword"));dg.ui.pagination.addButton('next',$(".pagination-next"));dg.ui.pagination.addButton('prev',$(".pagination-prev"));dg.ui.pagination.addButton('first',$(".pagination-first"));dg.ui.pagination.addButton('last',$(".pagination-last"));dg.ui.pagination.addButton('submit',$("#pagination-submit"));dg.ui.pagination.setItemCountView($("#pagination-item-count"));dg.ui.pagination.setPageCountView($(".pagination-page-count"));dg.ui.pagination.setCurrentPageView($(".pagination-current-page"));dg.ui.pagination.setLoaderView($(".pagination-loader"));dg.ui.pagination.reloadOnBrowserBack();if(dg.service.getQuery("iid")){dg.ui.pagination.setParam('iid',dg.service.getQuery("iid"))}
1862dg.ui.pagination.build=function(self){dg.ui.pagination.update_url=true;$(".cb-pre-fadein").removeClass("cb-pre-fadein").addClass("cb-fadein");$(".cb-js-delete-on-pagination").remove();$(dg.ui.item_list.el).empty();dg.ui.item_list.presentType();if(self.data.response.result_count<1){$(dg.ui.item_list.el).append(dg.cbView.generate('item-list-message',{'icon':'dislike','classNames':'cb-list-message--no-results cb-list-message--large','title':'No results found'}).el);}
1863else{self.data.response.result.forEach(function(item,i){item.add_item=1;item.push_to_queue_interval=api_interval_pause;item.afterAdd=function(){if(go_back_on_add){history.back();}
1864else{onAddIngredient(item);}};$(dg.ui.item_list.el).append(dg.cbView.generate('item',item).el);});}
1865if(self.call_trigger!=="onChangeLimit"){if(jump_to_results){window.scrollTo(0,$("#ingredient-results").offset().top);}
1866jump_to_results=1;}};dg.ui.pagination.callApi();$(".pagination-change-type").removeClass("cb-button--off")
1867.not("[data-type='"+dg.ui.item_list.type+"']")
1868.addClass("cb-button--off");$(".pagination-change-type").each(function(){var $button=$(this);var $container=$button.parent();var $siblings=$container.find(".pagination-change-type").not($button);$button.on("click",function(e){if($button.data("type")==dg.ui.item_list.type)return false;$button.removeClass("cb-button--off").prop("disabled",true);$siblings.addClass("cb-button--off").prop("disabled",true);dg.ui.item_list.setType($button.data("type"));localStorage.setItem('cb-list-type',$button.data("type"));setLimitOptions(e,true);
1868setTimeout(function(){$button.prop("disabled",false);$siblings.prop("disabled",false);},1000);});});}
1869function setLimitOptions(event,list_type_changed){var prev_limit=parseInt(dg.ui.pagination.getParam('limit'));var limits=dg.cb_grid_limits[dg.ui.item_list.type][Foundation.MediaQuery.current];var selected_index=1;dg.ui.pagination.inputs.limit.empty();for(var l=0;l<limits.length;++l){var option=document.createElement("OPTION");option.value=limits[l];option.textContent=limits[l];if(l===selected_index){option.selected=1;}
1870dg.ui.pagination.inputs.limit.append(option);}
1871if(list_type_changed||(event&&prev_limit!==parseInt(dg.ui.pagination.inputs.limit.val()))){dg.ui.pagination.inputs.limit.trigger("change");}}
1872var add_ingredient_interval;function onAddIngredient(item){clearTimeout(add_ingredient_interval);add_ingredient_interval=setTimeout(function(){dg.cbApi.executeQueue();},api_interval_pause);}}
1873function __cocktailBuilderIngredientsAction(){var page=window.location.pathname.split("/").pop();var jump_to_results=dg.service.getQuery("h");dg.ui.item_list=dg.cbView.generate('item-list');var list_type=localStorage.getItem('cb-list-type');if(list_type!==null)dg.ui.item_list.setType(list_type);$("#pagination-item-list").append(dg.ui.item_list.el);$(dg.ui.item_list.el).append(dg.cbView.generate('item-list-message',{'icon':'loading','classNames':'cb-list-message--no-results cb-list-message--large','title':'Fetching ingredients','sub_title':'Please wait a moment...'}).el);dg.ui.pagination=new __cocktailbuilderPagination();dg.ui.pagination.setApiTask('ingredients');dg.ui.pagination.setParam('page',page);dg.ui.pagination.addInput('limit',$("#pagination-limit"));setLimitOptions();$(window).on('changed.zf.mediaquery',setLimitOptions);dg.ui.pagination.addInput('offset',$("#pagination-offset"));dg.ui.pagination.addInput('keyword',$("#pagination-keyword"));dg.ui.pagination.addInput('sort',$("#pagination-sort"));dg.ui.pagination.addButton('next',$(".pagination-next"));dg.ui.pagination.addButton('prev',$(".pagination-prev"));dg.ui.pagination.addButton('first',$(".pagination-first"));dg.ui.pagination.addButton('last',$(".pagination-last"));dg.ui.pagination.addButton('submit',$("#pagination-submit"));dg.ui.pagination.addButton('clear_filters',$("#pagination-clear-filters"));dg.ui.pagination.addInput('type',$("#pagination-toggle-type"));$("input[name='type_radio']").on("change",function(){$("#pagination-toggle-type").val($("input[name='type_radio']:checked").val())
1874.trigger("change");});dg.ui.pagination.inputs.type.on("change",dg.service.debounce(onFilterChange,500));dg.ui.pagination.addInput('pp',$("#pagination-pre-populated"));$("input[name='pp_radio']").on("change",function(){$("#pagination-pre-populated").val($("input[name='pp_radio']:checked").val())
1875.trigger("change");});dg.ui.pagination.inputs.pp.on("change",dg.service.debounce(onFilterChange,500));dg.ui.pagination.setItemCountView($("#pagination-item-count"));dg.ui.pagination.setPageCountView($(".pagination-page-count"));dg.ui.pagination.setCurrentPageView($(".pagination-current-page"));dg.ui.pagination.setLoaderView($(".pagination-loader"));dg.ui.pagination.reloadOnBrowserBack();dg.ui.pagination.build=function(self){dg.ui.pagination.update_url=true;if(self.call_trigger==="onClearFilters"){$("#pagination-toggle-type-all").prop("checked",true).trigger("cb.evaluate");$("#pagination-toggle-type-key, #pagination-toggle-type-professional, #pagination-toggle-type-common, #pagination-toggle-type-other, #pagination-toggle-type-homemade").prop("checked",false).trigger("cb.evaluate");$("#pagination-toggle-pp-include").prop("checked",true).trigger("cb.evaluate");$("#pagination-toggle-pp-hide, #pagination-toggle-pp-only").prop("checked",false).trigger("cb.evaluate");}
1876$(".cb-pre-fadein").removeClass("cb-pre-fadein").addClass("cb-fadein");$(".cb-js-delete-on-pagination").remove();$(dg.ui.item_list.el).empty();$("#pagination-result-params").empty();$("#pagination-result-params-container").addClass("hide");$("#pagination-clear-filters-container").addClass("hide");if(self.getParam('keyword')||self.getParam('type')||self.getParam('pp')){$("#pagination-result-params").append(dg.cbView.generate('tag',{'text':self.data.response.result_count+' items'}).el);$("#pagination-result-params-container").removeClass("hide");if(self.getParam('keyword')||self.getParam('type')||self.getParam('pp')){$("#pagination-clear-filters-container").removeClass("hide");}}
1877if(self.getParam('keyword')){$("#pagination-result-params").append(dg.cbView.generate('tag',{'icon':'search','text':"&lsquo; "+self.getParam('keyword')+" &rsquo;",'classNames':"alt-font--natural"}).el);}
1878if(self.getParam('type')){var type_text=null;var type_icon=null;if(self.getParam('type')==="K"){type_text="Key";type_icon="key";}
1879else if(self.getParam('type')==="P"){type_text="Professional";type_icon="strainer";}
1880else if(self.getParam('type')==="C"){type_text="Common";}
1881else if(self.getParam('type')==="O"){type_text="Other";}
1882else if(self.getParam('type')==="H"){type_text="Homemade";}
1883if(type_text!==null){$("#pagination-result-params").append(dg.cbView.generate('tag',{'icon':type_icon,'text':type_text}).el);}}
1884if(self.getParam('pp')){var pp_text=null;if(self.getParam('pp')==="hide"){pp_text="Hide Pre-populated";}
1885else if(self.getParam('pp')==="only"){pp_text="Pre-populated only";}
1886if(pp_text!==null){$("#pagination-result-params").append(dg.cbView.generate('tag',{text:pp_text}).el);}}
1887dg.ui.item_list.presentType();if(self.data.response.result_count<1){$(dg.ui.item_list.el).append(dg.cbView.generate('item-list-message',{'icon':'dislike','classNames':'cb-list-message--no-results  cb-list-message--large','title':'No results found','sub_title':self.getParam('keyword')?"You don't have any items that match your search.":"You haven't added any items here yet.",}).el);}
1888else{self.data.response.result.forEach(function(item,i){item.close_modal_on_delete=1;item.onBeforeDelete=function(){$("#on-delete").foundation("open");}
1889item.onDelete=function(){multiplexCallApi(function(){$("#on-delete").foundation("close");});};item.premium_enabled=self.data.response.premium_enabled;item.premium=self.data.response.premium;$(dg.ui.item_list.el).append(dg.cbView.generate('item',item).el);});}
1890if(self.call_trigger!=="onChangeLimit"){if(jump_to_results){window.scrollTo(0,$("#ingredient-results").offset().top);}
1891jump_to_results=1;}};$(".pagination-change-type").removeClass("cb-button--off")
1892.not("[data-type='"+dg.ui.item_list.type+"']")
1893.addClass("cb-button--off");$(".pagination-change-type").each(function(){var $button=$(this);var $container=$button.parent();var $siblings=$container.find(".pagination-change-type").not($button);$button.on("click",function(e){if($button.data("type")==dg.ui.item_list.type)return false;$button.removeClass("cb-button--off").prop("disabled",true);$siblings.addClass("cb-button--off").prop("disabled",true);dg.ui.item_list.setType($button.data("type"));localStorage.setItem('cb-list-type',$button.data("type"));setLimitOptions(e,true);
1893setTimeout(function(){$button.prop("disabled",false);$siblings.prop("disabled",false);},1000);});});if(dg.service.getQuery("progress")==="K"){setTimeout(function(){$("#progress-key-button").trigger("cb.call.open");},1);}
1894else if(dg.service.getQuery("progress")==="P"){setTimeout(function(){$("#progress-professional-button").trigger("cb.call.open");},1);}
1895else if(dg.service.getQuery("progress")==="C"){setTimeout(function(){$("#progress-common-button").trigger("cb.call.open");},1);}
1896else if(dg.service.getQuery("progress")==="all"){setTimeout(function(){$("#progress-all-button").trigger("cb.call.open");},1);}
1897$("#progress-key-button").on({"cb.call.open":function(){setProgressParam("K");},"cb.call.close":function(){removeProgressParam("K");}});$("#progress-professional-button").on({"cb.call.open":function(){setProgressParam("P");},"cb.call.close":function(){removeProgressParam("P");}});$("#progress-common-button").on({"cb.call.open":function(){setProgressParam("C");},"cb.call.close":function(){removeProgressParam("C");}});$("#progress-all-button").on({"cb.call.open":function(){setProgressParam("all");},"cb.call.close":function(){removeProgressParam("all");}});multiplexCallApi();function progressParam(){var query=decodeURI(window.location.search.substring(1)),query=query.replace(/%2C/g,",");var vars=query.split("#")[0].split("&");var params={};(vars||[]).forEach(function(v){var parts=v.split("=");params[parts[0]]=parts[1]||null;});return params;}
1898function setProgressParam(progress){var params=progressParam();params['progress']=progress;dg.service.updateURI(window.location.pathname,'',params);}
1899function removeProgressParam(progress){var params=progressParam();if('progress'in params){delete params.progress;dg.service.updateURI(window.location.pathname,'',params);}}
1900function setLimitOptions(event,list_type_changed){var prev_limit=parseInt(dg.ui.pagination.getParam('limit'));var limits=dg.cb_grid_limits[dg.ui.item_list.type][Foundation.MediaQuery.current];var selected_index=1;dg.ui.pagination.inputs.limit.empty();for(var l=0;l<limits.length;++l){var option=document.createElement("OPTION");option.value=limits[l];option.textContent=limits[l];if(l===selected_index){option.selected=1;}
1901dg.ui.pagination.inputs.limit.append(option);}
1902if(list_type_changed||(event&&prev_limit!==parseInt(dg.ui.pagination.inputs.limit.val()))){dg.ui.pagination.inputs.limit.trigger("change");}}
1903function onFilterChange(e,skip_call){if(skip_call!==true){dg.ui.pagination.callApi();}}
1904function multiplexCallApi(callback){dg.cbApi.pushToQueue('progress',{type:'ingredient',page:page},buildProgress);dg.ui.pagination.queue_api=1;dg.ui.pagination.callApi();dg.cbApi.executeQueue(function(){if(typeof callback==="function"){callback();}});dg.ui.pagination.queue_api=null;}
1905function buildProgress(r){$("#progress-all-complete").addClass("hide");$("#progress-key-container").addClass("hide");$("#progress-professional-container").addClass("hide");$("#progress-common-container").addClass("hide");$("#progress-all-container").addClass("hide");if(r.AJAXresponse.response.K){$("#progress-key-container").removeClass("hide");$("#progress-key-ingredient-count").html(r.AJAXresponse.response.K.complete+" / "+r.AJAXresponse.response.K.total);$("#progress-key-ingredient-percentage").html(r.AJAXresponse.response.K.progress_percent+"%");if(r.AJAXresponse.response.K.missing_recipe_count<1){$("#progress-key-missing-cocktail-count").html("Complete!");}
1906else{$("#progress-key-missing-cocktail-count").html("You are missing out on "+r.AJAXresponse.response.K.missing_recipe_count.toLocaleString()+" recipes");}
1907$("#progress-key-bar").css('width',r.AJAXresponse.response.K.progress_percent+"%");var $progress_key_more=$("#progress-key-container").find(".cb-block-button__body");var progress_key_tag_group=document.createElement("DIV");progress_key_tag_group.className="cb-tag-group cb-tag-group--left";$progress_key_more.empty().append(progress_key_tag_group);for(var i in r.AJAXresponse.response.K.items){var tag=dg.cbView.generate('tag',{classNames:r.AJAXresponse.response.K.items[i].complete?'cb-tag--secondary':'',icon:r.AJAXresponse.response.K.items[i].complete?'check':'cancel',text:r.AJAXresponse.response.K.items[i].display_name}).el;if(!r.AJAXresponse.response.K.items[i].complete){tag.appendChild(dg.cbView.generate('button',{text:"add",href:'/builder/ingredients/add?return-on-add=1&keyword='+encodeURIComponent(r.AJAXresponse.response.K.items[i].display_name),classNames:'cb-button--small margin-left-half'}).el);}
1908progress_key_tag_group.appendChild(tag);}}
1909if(r.AJAXresponse.response.P){$("#progress-professional-container").removeClass("hide");$("#progress-professional-ingredient-count").html(r.AJAXresponse.response.P.complete+" / "+r.AJAXresponse.response.P.total);$("#progress-professional-ingredient-percentage").html(r.AJAXresponse.response.P.progress_percent+"%");if(r.AJAXresponse.response.P.missing_recipe_count<1){$("#progress-professional-missing-cocktail-count").html("Complete!");}
1910else{$("#progress-professional-missing-cocktail-count").html("You are missing out on "+r.AJAXresponse.response.P.missing_recipe_count.toLocaleStr
1910ing()+" recipes");}
1911$("#progress-professional-bar").css('width',r.AJAXresponse.response.P.progress_percent+"%");var $progress_professional_more=$("#progress-professional-container").find(".cb-block-button__body");var progress_professional_tag_group=document.createElement("DIV");progress_professional_tag_group.className="cb-tag-group cb-tag-group--left";$progress_professional_more.empty().append(progress_professional_tag_group);for(var i in r.AJAXresponse.response.P.items){var tag=dg.cbView.generate('tag',{classNames:r.AJAXresponse.response.P.items[i].complete?'cb-tag--secondary':'',icon:r.AJAXresponse.response.P.items[i].complete?'check':'cancel',text:r.AJAXresponse.response.P.items[i].display_name}).el;if(!r.AJAXresponse.response.P.items[i].complete){tag.appendChild(dg.cbView.generate('button',{text:"add",href:'/builder/ingredients/add?return-on-add=1&keyword='+encodeURIComponent(r.AJAXresponse.response.P.items[i].display_name),classNames:'cb-button--small margin-left-half'}).el);}
1912progress_professional_tag_group.appendChild(tag);}}
1913if(r.AJAXresponse.response.C){$("#progress-common-container").removeClass("hide");$("#progress-common-ingredient-count").html(r.AJAXresponse.response.C.complete+" / "+r.AJAXresponse.response.C.total);$("#progress-common-ingredient-percentage").html(r.AJAXresponse.response.C.progress_percent+"%");if(r.AJAXresponse.response.C.missing_recipe_count<1){$("#progress-common-missing-cocktail-count").html("Complete!");}
1914else{$("#progress-common-missing-cocktail-count").html("You are missing out on "+r.AJAXresponse.response.C.missing_recipe_count.toLocaleString()+" recipes");}
1915$("#progress-common-bar").css('width',r.AJAXresponse.response.C.progress_percent+"%");var $progress_common_more=$("#progress-common-container").find(".cb-block-button__body");var progress_common_tag_group=document.createElement("DIV");progress_common_tag_group.className="cb-tag-group cb-tag-group--left";$progress_common_more.empty().append(progress_common_tag_group);for(var i in r.AJAXresponse.response.C.items){var tag=dg.cbView.generate('tag',{classNames:r.AJAXresponse.response.C.items[i].complete?'cb-tag--secondary':'',icon:r.AJAXresponse.response.C.items[i].complete?'check':'cancel',text:r.AJAXresponse.response.C.items[i].display_name}).el;if(!r.AJAXresponse.response.C.items[i].complete){tag.appendChild(dg.cbView.generate('button',{text:"add",href:'/builder/ingredients/add?return-on-add=1&keyword='+encodeURIComponent(r.AJAXresponse.response.C.items[i].display_name),classNames:'cb-button--small margin-left-half'}).el);}
1916progress_common_tag_group.appendChild(tag);}}
1917if(r.AJAXresponse.response.all){$("#progress-all-container").removeClass("hide");$("#progress-all-ingredient-count").html(r.AJAXresponse.response.all.complete+" / "+r.AJAXresponse.response.all.total);$("#progress-all-ingredient-percentage").html(r.AJAXresponse.response.all.progress_percent+"%");if(r.AJAXresponse.response.all.missing_recipe_count<1){$("#progress-all-missing-cocktail-count").html("Complete!");}
1918else{$("#progress-all-missing-cocktail-count").html("You are missing out on "+r.AJAXresponse.response.all.missing_recipe_count.toLocaleString()+" recipes");}
1919$("#progress-all-bar").css('width',r.AJAXresponse.response.all.progress_percent+"%");$("#progress-all-complete").removeClass("hide");$("#progress-all-complete").html(r.AJAXresponse.response.all.progress_percent+"% complete");var $progress_all_more=$("#progress-all-container").find(".cb-block-button__body");var progress_all_tag_group=document.createElement("DIV");progress_all_tag_group.className="cb-tag-group cb-tag-group--left";$progress_all_more.empty().append(progress_all_tag_group);for(var i in r.AJAXresponse.response.all.items){var tag=dg.cbView.generate('tag',{classNames:r.AJAXresponse.response.all.items[i].complete?'cb-tag--secondary':'',icon:r.AJAXresponse.response.all.items[i].complete?'check':'cancel',text:r.AJAXresponse.response.all.items[i].display_name}).el;if(!r.AJAXresponse.response.all.items[i].complete){tag.appendChild(dg.cbView.generate('button',{text:"add",href:'/builder/ingredients/add?return-on-add=1&keyword='+encodeURIComponent(r.AJAXresponse.response.all.items[i].display_name),classNames:'cb-button--small margin-left-half'}).el);}
1920progress_all_tag_group.appendChild(tag);}}}
1921function pageToSubType(page){return{"base-spirits":"1","liqueurs":"2","wine-vermouth":"3","beer-cider":"4","bitters":"5","syrup":"6","fruit-veg-juice"
1921:"7","fridge-pantry":"9","mixer-packaged-juice":"8","ingredients":"all"}[page]||null;}
1922function subTypeToPage(sub_type){return{"1":"base-spirits","2":"liqueurs","3":"wine-vermouth","4":"beer-cider","5":"bitters","6":"syrup","7":"fruit-veg-juice","9":"fridge-pantry","8":"mixer-packaged-juice"}[sub_type]||null;}}
1923function __cocktailBuilderLoginAction(){dg.ui.cb.form=$("#cb-login-form");$(".cb-form-submit").on("click",function(){var allow_continue=true;dg.ui.cb.form.find(".cb-form-control__input").each(function(){$(this).trigger("checkvalidity");if($(this).data("invalid")){allow_continue=false;}});if(allow_continue===false){event.preventDefault();return false;}
1924if(dg.data.cb.ga_events_enabled===true){window.gtag_builder('event','your-account','log-in');}});}
1925function __cocktailbuilderPagination(options){var context=this;this.pause=300;this.min_keyword_chars=0;this.enable_autocomplete=false;this.autocomplete_buffer_timeout=750;this.autocomplete_buffer;this.autocomplete_last_query;this.call_trigger=null;this.pages=null;this.page=null;this.setPageCountView=function(el){this.page_count=el;};this.setCurrentPageView=function(el){this.current_page=el;};this.setItemCountView=function(el){this.item_count=el;};this.setLoaderView=function(el){this.loader=el;};this.params={};this.setParam=function(name,value){context.params[name]=value;};this.deleteParam=function(name){delete context.params[name];};this.getParam=function(name){return context.params[name]||null;};this.persistent_params=[];this.setPersistentParam=function(name){context.persistent_params.push(name);};this.data={};this.fetching=false;this.api_task=null;this.setApiTask=function(api_task){context.api_task=api_task;};this.inputs={};this.addInput=function(name,el){context.inputs[name]=el;if(name==="limit"){el.on('change',onChangeLimit);}
1926else if(name==="offset"){el.on('change',onChangeOffset);}
1927else if(name==="sort"){el.on('change',onChangeSort);}
1928else if(name==="keyword"){el.on('input',onChangeKeyword);el.on('keyup',function(e){if(e.keyCode==13&&$(this).val().length>0){context.callApi('onChangeKeyword');}
1929else if(context.enable_autocomplete&&$(this).val().length>=context.min_keyword_chars){var keyword=$(this).val().trim();if(keyword==context.autocomplete_last_query){return false;}
1930clearTimeout(context.autocomplete_buffer);var buffer_timeout=context.autocomplete_buffer_timeout;if(!context.autocomplete_last_query){buffer_timeout=Math.round(buffer_timeout/2);}
1931else if($(this).val().match(/\s$/)){buffer_timeout=Math.round(buffer_timeout*2);}
1932context.autocomplete_buffer=setTimeout(function(){context.autocomplete_last_query=keyword;context.callApi('onChangeKeyword');},buffer_timeout);}});}};this.buttons={};this.addButton=function(name,el,events){context.buttons[name]=el;if(name==="next"){el.on("click",nextPage);}
1933else if(name==="prev"){el.on("click",prevPage);}
1934else if(name==="first"){el.on("click",firstPage);}
1935else if(name==="last"){el.on("click",lastPage);}
1936else if(name==="clear_filters"){el.on('click',clearFilters);}
1937else if(name==="submit"){disableButton(el);el.on('click',submit);}
1938else if(name==="random_result"){disableButton(el);el.on('click',pickRandomResult);}};this.callApi=function(call_trigger){context.call_trigger=call_trigger||null;if(isFetching())return false;if(typeof context.onCallApi==="function"){context.onCallApi();}
1939disableFetch();for(var i in context.inputs){var value=context.inputs[i].val();if(context.inputs[i].prop("type")==="checkbox"&&context.inputs[i].prop("checked")!==true){value=null;}
1940if(i==="limit"&&context.inputs.limit&&context.inputs.limit.find(':selected').prop('disabled')){value=context.inputs.limit.find(':selected').prop('value');}
1941context.setParam(i,value);}
1942if(context.call_trigger!=="onBrowserBack"){updateURL();}
1943if(context.queue_api){dg.cbApi.pushToQueue(context.api_task,context.params,apiCallback);}
1944else{dg.cbApi.get(context.api_task,context.params,apiCallback);}};this.disable=disableFetch;this.enable=enableFetch;this.reloadOnBrowserBack=function(){window.onpopstate=function(e){var $modal=$(".reveal-overlay").not("[data-is-active]").find(".reveal:first");
1944if($modal.length>0){$modal.foundation("close");}
1945var change=false;for(var i in context.inputs){var new_value=dg.service.getQuery(i);if(new_value!=context.getParam(i)){change=true;if(context.inputs[i].prop("type")==="checkbox"){context.inputs[i].prop("checked",!(new_value===null))
1946.trigger("change");}
1947else{if(new_value==null&&context.inputs[i].get(0).tagName.toLowerCase()=="select"){context.inputs[i].val(context.inputs[i].find("option:first").val());}
1948else{context.inputs[i].val(new_value);}}}}
1949if(change===true){context.callApi('onBrowserBack');}};}
1950return this;function apiCallback(r){context.data.response_raw=r;context.data.response=null;if(r.AJAXstatus!=="ok"){dg.cbFatalError({'_trigger':"pagination apiCallback() AJAX error",});}
1951else{if(r.AJAXresponse.status!=="ok"){dg.cbFatalError({'_trigger':"pagination apiCallback() API response error",});}
1952else{context.data.response=r.AJAXresponse.response;if(context.item_count){var count_label=context.data.response.result_count.toLocaleString();if(context.api_task==="search-recipe"||context.getParam('section')==="recipes"){count_label+=" recipe";}
1953else{count_label+=" item";}
1954if(context.data.response.result_count!=1){count_label+="s";}
1955context.item_count.html(count_label);dg.cbTestHook("cb-js-counter-updated");}
1956calculatePages();setTimeout(function(){enableFetch();if(context.enable_autocomplete){$(context.inputs.keyword).focus();}},context.pause);if(typeof context.build==="function"){context.build(context);}}}}
1957function updateURL(){if(context.update_url){var params={};var skip_params=['offset','limit','keyword','sort'];for(var p in context.inputs){if(skip_params.indexOf(p)===-1){var param=context.getParam(p);if(param)params[p]=param;}}
1958var offset=parseInt(context.getParam('offset'));if(offset>0)params.offset=offset;var limit=parseInt(context.getParam('limit'));if(limit>0)params.limit=limit;var keyword=context.getParam('keyword');if(keyword!==null&&keyword.length>0)params.keyword=keyword;var sort=context.getParam('sort');if(sort!==null&&sort!=='default'&&sort.length>0)params.sort=sort;dg.service.updateURI(window.location.pathname,'',params);}}
1959function isFetching(){return context.fetching;}
1960function disableFetch(){if(context.loader){context.loader.removeClass("hide cb-fadeout");}
1961context.fetching=true;disableInputs();disableButtons();}
1962function enableFetch(){if(context.loader){context.loader.addClass("cb-fadeout");dg.service.animationEnd(context.loader,function(){context.loader.addClass("hide");});}
1963context.fetching=false;enableInputs();checkButtons();checkLimits();dg.cbTestHook("cb-js-pagination-ready");}
1964function clearFilters(){var changed=false;var skip_params=['offset','limit','sort'];if(context.persistent_params.length>0){skip_params=skip_params.concat(context.persistent_params);}
1965for(var p in context.inputs){if(skip_params.indexOf(p)===-1){var param=context.getParam(p);if(param){changed=true;if(context.inputs[p].prop("type")==="checkbox"){context.inputs[p].prop("checked",false).trigger("change",[true]);}
1966else{context.inputs[p].val("");}}}}
1967if(changed!==false){context.callApi('onClearFilters');};}
1968function pickRandomResult(){disableButton(context.buttons.random_result);var button_icon_html=context.buttons.random_result.html();context.buttons.random_result.html(dg.cbView.generate('icon',{graphic:'loading'}).el);if(dg.data.cb.ga_events_enabled===true){window.gtag_builder('event','pick-random-result','cocktail-builder','cocktail');}
1969var params=context.params;params.random_result=1;dg.cbApi.get(context.api_task,params,function(r){if(r.AJAXstatus!=="ok"){dg.cbFatalError({'_trigger':"pagination pickRandomResult() AJAX error",});}
1970else{if(r.AJAXresponse.status!=="ok"){dg.cbFatalError({'_trigger':"pagination pickRandomResult() API response error",});}
1971else if(r.AJAXresponse.response.result.length>0){if(typeof context.onPickRandomResult==="function"){context.onPickRandomResult(r.AJAXresponse.response.result[0]);}}
1972else{context.buttons.random_result.html(button_icon_html);}}});}
1973function onChangeLimit(){var adjust=parseInt(context.getParam('offset'))%parseInt(context.inputs.limit.val());if(adjust>
19730){context.inputs.offset.val(context.inputs.offset.val()-adjust);}
1974context.callApi('onChangeLimit');}
1975function onChangeOffset(){context.callApi('onChangeOffset');}
1976function onChangeSort(){if(typeof context.onChangeSort==="function"){context.onChangeSort();}
1977context.callApi('onChangeSort');}
1978function onChangeKeyword(){context.inputs.keyword.val(context.inputs.keyword.val());var keyword_length=context.inputs.keyword.val().length;if(context.inputs.offset){context.inputs.offset.val(0);}
1979if(context.buttons.submit){if(keyword_length>0){enableButton(context.buttons.submit);}
1980else{disableButton(context.buttons.submit);context.callApi('onChangeKeyword');}}}
1981function submit(){context.inputs.keyword.val(context.inputs.keyword.val().trim());if(context.inputs.keyword.val().length>0){context.callApi('onSubmit');}}
1982function calculatePages(){var result_count=parseInt(context.data.response.result_count);if(result_count===0){context.pages=1;context.page=1;}
1983else{var offset=parseInt(context.getParam('offset'));var limit=parseInt(context.getParam('limit'));if(isNaN(offset)||isNaN(limit)){context.pages=1;context.page=1;}
1984else{context.pages=Math.ceil(result_count/limit);context.page=(offset/limit)+1;}}
1985if(context.current_page)context.current_page.html(context.page);if(context.page_count)context.page_count.html(context.pages);}
1986function nextPage(){var next_offset=context.page*parseInt(context.getParam('limit'));next_offset=next_offset<0?0:next_offset;next_offset=isNaN(next_offset)?0:next_offset;context.inputs.offset.val(next_offset).trigger("change");checkButtons();}
1987function prevPage(){var prev_offset=(context.page-1)*parseInt(context.getParam('limit'))
1988-parseInt(context.getParam('limit'));prev_offset=prev_offset<0?0:prev_offset;prev_offset=isNaN(prev_offset)?0:prev_offset;context.inputs.offset.val(prev_offset).trigger("change");checkButtons();}
1989function firstPage(){context.inputs.offset.val(0).trigger("change");checkButtons();}
1990function lastPage(){var last_page=(context.pages-1)*parseInt(context.getParam('limit'));
1990context.inputs.offset.val(last_page).trigger("change");checkButtons();}
1991function checkLimits(){if(!context.inputs.limit)return false;var result_count=parseInt(context.data.response.result_count);var highest_limit_reached=false;context.inputs.limit.find("option").each(function(){$(this).prop("disabled",true);if(highest_limit_reached===true)return true;var this_limit=parseInt($(this).val());if(isNaN(this_limit))return true;highest_limit_reached=this_limit>result_count;$(this).prop("disabled",false);});}
1992function checkButtons(){if(isFetching()){disableButtons();return;}
1993disableButtons();for(var k in context.buttons){if(['first','next','prev','last','submit'].indexOf(k)===-1){enableButton(context.buttons[k]);}}
1994if(context.page>1){if(context.buttons.first)enableButton(context.buttons.first);if(context.buttons.prev)enableButton(context.buttons.prev);}
1995if(context.page<context.pages){if(context.buttons.next)enableButton(context.buttons.next);if(context.buttons.last)enableButton(context.buttons.last);}
1996if(context.buttons.submit&&context.inputs.keyword.val().trim().length>0&&context.inputs.keyword.val()!==context.getParam('keyword')){enableButton(context.buttons.submit);}}
1997function disableButtons(){for(var b in context.buttons){disableButton(context.buttons[b])}}
1998function disableButton(button){button.prop("disabled",true);if(!button.find("input[type='checkbox']").length>0&&(button.hasClass("cb-button")||button.hasClass("cb-form-control__button"))){button.addClass("cb-button--off");}}
1999function enableButton(button){button.prop("disabled",false);if(!button.find("input[type='checkbox']").length>0){button.removeClass("cb-button--off");}}
2000function enableInputs(){for(var i in context.inputs){enableInput(context.inputs[i]);}}
2001function disableInputs(){for(var i in context.inputs){disableInput(context.inputs[i]);}}
2002function enableInput(input){input.prop("disabled",false)
2003.parents(".cb-form-control:first").removeClass("cb-form-control--disabled");}
2004function disableInput(input){input.prop("disabled",true)
2005.parents(".cb-form-control:first").addClass("cb-form-control--disabled");}}
2006function __cocktailBuilderRecipeAddAction(){dg.ui.form=$("#cb-js-add-form");dg.ui.form.on("submit",function(e){if(dg.data.cb.ga_events_enabled===true){window.gtag_builder('event','cocktail','cocktail-builder','add');}
2007dg.ui.form.addClass("hide");$("#cb-js-modal-on-save").foundation('open');});}
2008function __cocktailBuilderRecipeEditAction(){dg.ui.form=$("#edit_form");dg.ui.present_on_profile_container=$("#js-container-present-on-profile");dg.ui.recipe_status=$('#recipe_status');dg.ui.recipe_status.on('change',function(){if(dg.ui.recipe_status.val()==='yes'){dg.ui.present_on_profile_container.removeClass('hide');}
2009else{dg.ui.present_on_profile_container.addClass('hide');}});dg.ui.new_ingredient_button=$("#new_ingredient_button");dg.ui.new_ingredient_cancel_button=$(".cb-js-new-ingredient-cancel");dg.ui.new_ingredient_id=$("#new_ingredient_id");dg.ui.new_spiritbrand_id=$("#new_spiritbrand_id");dg.ui.new_unit_id=$("#new_unit_id");dg.ui.new_measure_id=$("#new_measure_id");dg.ui.input_x=$("#js-input-coord-x");dg.ui.input_y=$("#js-input-coord-y");dg.ui.input_width=$("#js-input-coord-width");dg.ui.input_height=$("#js-input-coord-height");var new_ingredient={};var new_ingredient_index=0;dg.ui.search_ingredient_item_list=dg.cbView.generate('item-list',{type:'list'});$("#search-ingredient-list").append(dg.ui.search_ingredient_item_list.el);dg.ui.search_ingredient=new __cocktailbuilderPagination();dg.ui.search_ingredient.setApiTask('recipe-edit-ingredient-search');dg.ui.search_ingredient.addInput('keyword',$("#search-ingredient"));dg.ui.search_ingredient.enable_autocomplete=1;dg.ui.search_ingredient.min_keyword_chars=3;dg.ui.search_ingredient.addInput('limit',$("#search-ingredient-limit"));dg.ui.search_ingredient.addInput('offset',$("#search-ingredient-offset"));dg.ui.search_ingredient.addButton('next',$("#search-ingredient-next"));dg.ui.search_ingredient.addButton('prev',$("#search-ingredient-prev"));dg.ui.search_ingredient.addButton('submit',$("#search-ingredient-submit"));dg.ui.search_ingredient.setParam('include_bws',1);dg.ui.search_ingredient.setPageCountView($(".search-ingredient-page-count"));dg.ui.search_ingredient.setCurrentPageView($(".search-ingredient-current-page"));dg.ui.search_ingredient.setLoaderView($(".search-ingredient-loader"));dg.ui.search_ingredient.build=function(self){$(dg.ui.search_ingredient_item_list.el).empty();$("#search-ingredient-result-count").html(self.data.response.result_count+" results found");
2009$("#search-ingredient-page-controls").removeClass("hide");if(self.data.response.result_count<1){if(self.getParam('keyword')){$(dg.ui.search_ingredient_item_list.el).append(dg.cbView.generate('item-list-message',{'icon':'dislike','classNames':'cb-list-message--no-results cb-list-message--small','title':'No ingredients found'}).el);}
2010else{$("#search-ingredient-page-controls").addClass("hide");}}
2011else{self.data.response.result.forEach(function(item){item.add_ingredient=1;var ingredient=dg.cbView.generate('item',item);$(dg.ui.search_ingredient_item_list.el).append(ingredient.el);$(ingredient.component.add_ingredient_button.el).on("click",function(){chooseIngredient(ingredient.params);});});}};$(".cb-js-delete-ingredient").on("click",function(){$("#confirm-delete-ingredient-name").html($(this).data("ingredient-name"));$("#confirm-delete-ingredient-button").val($(this).data("ingredient-id"));$("#confirm-delete-ingredient").foundation('open');});$("#confirm-delete-ingredient-button").on("click",function(){var delete_ingredient_id=document.createElement("input");delete_ingredient_id.type="hidden";delete_ingredient_id.name="delete_ingredient";delete_ingredient_id.value=$(this).val();dg.ui.form[0].appendChild(delete_ingredient_id);dg.ui.form.submit();});$(".cb-js-delete-image").on("click",function(){$("#confirm-delete-image").foundation('open');});$("#confirm-delete-image-button").on("click",function(){var delete_image_input=document.createElement("input");delete_image_input.type="hidden";delete_image_input.name="delete_image";delete_image_input.value=1;dg.ui.form[0].appendChild(delete_image_input);dg.ui.form.submit();});$("#delete-youtube").on("click",function(){$("#confirm-delete-youtube").foundation('open');});$("#confirm-delete-youtube-button").on("click",function(){var delete_youtube_id=document.createElement("input");delete_youtube_id.type="hidden";delete_youtube_id.name="delete_youtube_id";delete_youtube_id.value=1;dg.ui.form[0].appendChild(delete_youtube_id);dg.ui.form.submit();});$(".cb-js-delete-recipe").on("click",function(){$("#confirm-delete-recipe").foundation('open');});var _delete_recipe=false;$("#confirm-delete-recipe-button").on("click",function(){_delete_recipe=true;var delete_recipe_input=document.createElement("input");delete_recipe_input.type="hidden";delete_recipe_input.name="delete";delete_recipe_input.value=1;dg.ui.form[0].appendChild(delete_recipe_input);dg.ui.form.submit();});dg.ui.form.on("submit",function(e){if(dg.data.cb.ga_events_enabled===true){window.gtag_builder('event','cocktail','cocktail-builder','edit');}
2012dg.data.form=dg.ui.form.serialize();dg.ui.form.addClass("hide");if(_delete_recipe===true){$("#on-delete").foundation('open');}
2013else{$("#on-save").foundation('open');}});dg.data.form=dg.ui.form.serialize();$(window).bind('beforeunload',function(e){if(dg.data.form!=dg.ui.form.serialize()){var message="You have unsaved changes on this recipe. Are you sure you want to leave this page and discard your changes?";e.returnValue=message;return message;}});dg.ui.new_ingredient_cancel_button.on("click",resetAddIngredient);dg.ui.new_unit_id.on("change",updateMeasureSelect);dg.ui.new_ingredient_button.on("click",addIngredient);function resetAddIngredient(){$("#search-ingredient").val("");$(dg.ui.search_ingredient_item_list.el).empty();$("#search-ingredient-page-controls").addClass("hide");$("#add-ingredient-step-one").removeClass("hide");$("#add-ingredient-step-two").addClass("hide");$("#add-ingredient-step-two-name").empty();new_ingredient.chosen=null;dg.ui.new_unit_id.empty().prop("disabled",true);dg.ui.new_measure_id.empty().prop("disabled",true);$("#js-new-ingredient-notification").addClass("hide");}
2014if($("#add-ingredient")&&$("#add-ingredient").data('new-ingredient')){var new_ingredient_id=$("#add-ingredient").data('new-ingredient');$.get("/builder/api/fetch-bws-by-id",{sid:new_ingredient_id}).done(function(body){body=JSON.parse(body);if(body.response){chooseIngredient(body.response);$("#add-ingredient").foundation('open');}}).fail(function(){dg.cbFatalError({'_trigger':"recipe-edit-ingredient-search getMeasures() request fail",});});}
2015function addIngredient(){++new_ingredient_index;var unique_id='new'+new_ingredient_index;if($("#cb-ingredient-table-pending").length<1){var row=document.createElement("TR");row.id="cb-ingredient-table-pending";row.className="hide";$("#cb-ingredient-table-body")[0].appendChild(row);
2015var cell=document.createElement("TD");cell.colSpan="3";cell.className="pad-top pad-bottom-light";row.appendChild(cell);var tag=dg.cbView.generate('tag',{classNames:"cb-tag--small",text:"Pending - added on save:",tooltip:"Pending ingredients are added to your recipe when saved"});cell.appendChild(tag.el);}
2016$("#cb-ingredient-table-pending").removeClass("hide");var row=document.createElement("TR");row.className="text-small cb-js-pending-ingredient";row.id="cb-js-pending-ingredient-"+unique_id;$("#cb-ingredient-table-body")[0].appendChild(row);var cell=document.createElement("TD");cell.className="pad-bottom-half pad-right-half no-wrap";cell.textContent=dg.ui.new_measure_id.find("option:selected").text()||dg.ui.new_unit_id.find("option:selected").text();row.appendChild(cell);var cell=document.createElement("TD");cell.className="pad-bottom-half pad-right-half";cell.innerHTML="<strong>"+new_ingredient.chosen.display_name+"</strong>";row.appendChild(cell);var cell=document.createElement("TD");cell.className="pad-bottom-half td-min-width";row.appendChild(cell);var button=dg.cbView.generate('button',{classNames:'cb-button--danger',icon:'cancel'});button.el.dataset.deleteId=unique_id;button.el.addEventListener("click",function(){deletePendingIngredient(this.dataset.deleteId);})
2017cell.appendChild(button.el);var ingredient_id=document.createElement("input");ingredient_id.type="hidden";ingredient_id.name="cocktail[ingredient]["+unique_id+"][ingredientId]";ingredient_id.value=new_ingredient.chosen.ingredient.id;cell.appendChild(ingredient_id);if(new_ingredient.chosen.spiritbrand){var spiritbrands_id=document.createElement("input");spiritbrands_id.type="hidden";spiritbrands_id.name="cocktail[ingredient]["+unique_id+"][my_bar_spiritbrandsId]";spiritbrands_id.value=new_ingredient.chosen.spiritbrand.id;cell.appendChild(spiritbrands_id);}
2018var unit_id=document.createElement("input");unit_id.type="hidden";unit_id.name="cocktail[ingredient]["+unique_id+"][unitId]";unit_id.value=dg.ui.new_unit_id.val().split('-')[0];cell.appendChild(unit_id);var measure_id=document.createElement("input");measure_id.type="hidden";measure_id.name="cocktail[ingredient]["+unique_id+"][measureId]";measure_id.value=dg.ui.new_measure_id.val();cell.appendChild(measure_id);if(new_ingredient.chosen.spiritbrand&&new_ingredient.chosen.spiritbrand.user_generated&&new_ingredient.chosen.spiritbrand.user_generated==='yes'&&$("#js-new-ingredient-notification").length>0){setTimeout(function(){dg.ui.form.submit();},1);}
2019else{$("#add-ingredient").foundation("close");resetAddIngredient();}}
2020function deletePendingIngredient(ci_id){$("#cb-js-pending-ingredient-"+ci_id).remove();$(".cb-js-existing-ingredient-"+ci_id).removeClass("text-line-through text-overlay").find("input").prop("disabled",false);if($(".cb-js-pending-ingredient").length<1){$("#cb-ingredient-table-pending").addClass("hide");}}
2021function chooseIngredient(ingredient){$("#search-ingredient").val("");$(dg.ui.search_ingredient_item_list.el).empty();$("#search-ingredient-page-controls").addClass("hide");$("#add-ingredient-step-one").addClass("hide");$("#add-ingredient-step-two").removeClass("hide");$("#add-ingredient-step-two-name").html(ingredient.display_name);new_ingredient.chosen=ingredient;updateUnitSelect();}
2022function updateUnitSelect(callback){dg.ui.new_ingredient_button.prop("disabled",true).addClass("cb-button--off");dg.ui.new_unit_id.empty().prop("disabled",true)
2023.parents(".cb-form-control:first").addClass("cb-form-control--disabled");var option=document.createElement("option");option.value="";option.textContent="...";dg.ui.new_unit_id.append(option);getUnits(new_ingredient.chosen.ingredient.id,function(response){dg.ui.new_unit_id.empty().prop("disabled",true)
2024.parents(".cb-form-control:first").removeClass("cb-form-control--disabled");if(response!==null){for(var r in response)if(response[r].id){var option=document.createElement("option");option.value=response[r].id+'-'+r;option.textContent=response[r].name;dg.ui.new_unit_id.append(option).prop("disabled",false);}
2025updateMeasureSelect(function(){dg.ui.new_ingredient_button.prop("disabled",fal
2025se).removeClass("cb-button--off");if(typeof callback==="function"){callback();}});}});}
2026function updateMeasureSelect(callback){dg.ui.new_ingredient_button.prop("disabled",true).addClass("cb-button--off");var unit_id=dg.ui.new_unit_id.val().split('-')[0];var unit_name=dg.ui.new_unit_id.find("option:selected").text();if(!unit_id||unit_id==="...")return;dg.ui.new_measure_id.empty().prop("disabled",true)
2027.parents(".cb-form-control:first").addClass("cb-form-control--disabled");var option=document.createElement("option");option.value="";option.textContent="...";dg.ui.new_measure_id.append(option);getMeasures(unit_id,function(response){dg.ui.new_measure_id.empty().prop("disabled",true)
2028.parents(".cb-form-control:first").removeClass("cb-form-control--disabled");if(response.measure!==null){for(var r in response.measure)if(response.measure[r].id){var option=document.createElement("option");option.value=response.measure[r].id;if(unit_name==="millilitre (ml)"){option.innerHTML=response.measure[r].display_ml;}
2029else if(unit_name==="fluid ounce (fl. oz)"){option.innerHTML=response.measure[r].display_oz;}
2030else if(unit_name==="shot"){option.innerHTML=response.measure[r].display_shot;}
2031else{option.innerHTML=response.measure[r].displayQty;option.innerHTML+=" "+(response.measure[r].qty>1?response.unit.pluralName.toLowerCase():response.unit.name.toLowerCase());}
2032dg.ui.new_measure_id.append(option).prop("disabled",false);}
2033dg.ui.new_measure_id.val(6);}
2034if(typeof callback==="function"){callback();}
2035dg.ui.new_ingredient_button.prop("disabled",false).removeClass("cb-button--off");dg.cbTestHook("cb-js-measures-updated");});}
2036function getMeasures(unit_id,callback){$.get("/api/dev/frontend/cocktails/unit-measures",{unit:unit_id}).done(function(response){dg.data.measures=response;callback(JSON.parse(response));}).fail(function(){dg.cbFatalError({'_trigger':"recipe-edit getMeasures() request fail",});});}
2037function getUnits(ingredient_id,callback){$.get("/api/dev/frontend/cocktails/unit-measures",{ingredient:ingredient_id}).done(function(response){dg.data.units=response;callback(JSON.parse(response));}).fail(function(){dg.cbFatalError({'_trigger':"recipe-edit getUnits() request fail",});});}
2038var image={};image.max_size=15e+6;image.min_width=512;image.min_height=768;image.extensions=['jpg','jpeg','png'];dg.ui.image_input=$("#new_image_id");dg.ui.image_input_name=dg.ui.image_input.attr('name');dg.ui.image_preview=$("#new_image_preview");dg.ui.image_container=$("#new_image_container");dg.ui.image_copyright_container=$("#new_image_copyright_container");dg.ui.image_copyright_confirm=$("#new_image_copyright_confirm");let image_preview=dg.ui.image_preview.find('img');if(image_preview&&image_preview.data('url')&&image_preview.data('url').match(/^https:\/\/cdn\.diffordsguide\.com/)){setTimeout(function(){image_preview[0].src=image_preview.data('url')+'?vb='+Date.now();image_preview.removeAttr('data-url');},12000);}
2039dg.ui.image_input.on("change",function(){dg.ui.image_preview.empty();dg.ui.image_preview.html("...");if(this.files&&this.files[0]){var reader=new FileReader(),file=this.files[0];reader.onload=function(e){var img=new Image();img.src=e.target.result;$(img).on('load',function(){dg.ui.image_copyright_container.addClass("hide");dg.ui.image_copyright_confirm.prop("required",false);dg.ui.image_copyright_confirm.prop("checked",false);if(file.size>image.max_size){imageError('The image you provided exceeds the 15MB limit');}
2040else if(img.width<image.min_width){if(img.height<image.min_height){imageError('The image you provided is too small ('+img.width+'px wide by '+img.height+'px tall). It must be at least '+image.min_width+'px wide by '+image.min_height+'px tall');}
2041else{imageError('The image you provided is too narrow ('+img.width+'px wide). It must be at least '+image.min_width+'px wide');}}
2042else if(img.height<image.min_height){imageError('The image you provided is not tall enough ('+img.height+'px tall). It must be at least '+image.min_height+'px tall');}
2043else{dg.ui.image_container.removeClass("cb-form-card--with-error").addClass("cb-form-card--valid");dg.ui.image_preview.empty();dg.ui.image_preview.append(img);var cropper=new Cropper(img,{aspectRatio:2/3,autoCropArea:1,viewMode:3,movable:false,rotatable:false,scalable:false,zoomable:false,zoomOnTouch:false,zoomOnWheel:false,crop(event){onCrop(event,image);}});dg.ui.image_copyright_container.removeClass("hide");dg.ui.image_copyright_confirm.prop("required",true);}});};var ext=$(this).val().split(".").pop().toLowerCase();
2043if(image.extensions.indexOf(ext)!==-1){reader.readAsDataURL(this.files[0]);}
2044else{imageError('You must provide your image as a .jpg or .png');}}
2045else{imageError('An unknown error occurred when trying to upload your image.');}});function onCrop(event,image){if(image.min_width&&event.detail.width<image.min_width){if(image.min_height&&event.detail.height<image.min_height){imageCropError('Image cropped too small ('+Math.round(event.detail.width)+'px wide by '+Math.round(event.detail.height)+'px tall)<br>It must be at least '+image.min_width+'px wide by '+image.min_height+'px tall');return;}
2046imageCropError('Image cropped too narrow narrow ('+Math.round(event.detail.width)+'px wide)<br>It must be at least '+image.min_width+'px wide');return;}
2047if(image.min_height&&event.detail.height<image.min_height){imageCropError('Image cropped too short ('+Math.round(event.detail.height)+'px tall)<br>It must be at least '+image.min_height+'px tall');return;}
2048logCropCoordinates(event.detail.x,event.detail.y,event.detail.width,event.detail.height);}
2049function imageError(messageHTML){showImageErrorMessage(messageHTML);dg.ui.image_input.val("");}
2050function imageCropError(messageHTML){showImageErrorMessage(messageHTML);dg.ui.image_input.attr('name','-disabled-');}
2051function showImageErrorMessage(messageHTML){if($(dg.ui.image_preview).find('.cb-form-control__message').length>0)return;var error_container=document.createElement("div");error_container.className="cb-form-control__message cb-form-control-message--with-error";dg.ui.image_preview.append(error_container);var error=document.createElement("div");error.className="cb-form-control-message__error";error.innerHTML="<strong>"+messageHTML+"</strong><br><br>Please try again.";error_container.append(error);dg.ui.image_container.addClass("cb-form-card--with-error").removeClass("cb-form-card--valid");}
2052function logCropCoordinates(x,y,width,height){dg.ui.image_input.attr('name',dg.ui.image_input_name);dg.ui.image_container.removeClass("cb-form-card--with-error").addClass("cb-form-card--valid");$(dg.ui.image_preview).find('.cb-form-control__message').remove();dg.ui.input_x.val(Math.round(x||0));dg.ui.input_y.val(Math.round(y||0));dg.ui.input_width.val(Math.round(width||0));dg.ui.input_height.val(Math.round(height||0));}}
2053function __cocktailBuilderRecipeSearchAction(){if($("#section-container").length<1){return false;}
2054var form_step=$("#section-container")[0].dataset.formStep;dg.ui.available_item_list=dg.cbView.generate('item-list');dg.ui.available_item_list.setType("list");dg.ui.available_item_list.presentType();$("#available-ingredients").append(dg.ui.available_item_list.el);dg.ui.chosen_item_list=dg.cbView.generate('item-list');dg.ui.chosen_item_list.setType("list");dg.ui.chosen_item_list.presentType();$("#chosen-ingredients").append(dg.ui.chosen_item_list.el);var chosen_ingredients={};var use_all_ingredients=!!$("#chosen-ingredients-card").hasClass("js-use-all-ingredients");if(use_all_ingredients===true){$(dg.ui.chosen_item_list.el).empty().append(dg.cbView.generate('item-list-message',{icon:'all-ingredients',title:'Using all ingredients'}).el);}
2055else{$(dg.ui.chosen_item_list.el).empty().append(dg.cbView.generate('item-list-message',{icon:'loading',sub_title:'Fetching chosen ingredients...'}).el);dg.cbApi.pushToQueue("recipe-search-ingredients",{sid:dg.service.getQuery("sid")},function(r){if(r.AJAXstatus!=="ok"){dg.cbFatalError({'_trigger':"recipe-search `recipe-search-ingredients` AJAX error",});}
2056else{if(r.AJAXresponse.status!=="ok"){dg.cbFatalError({'_trigger':"recipe-search `recipe-search-ingredients` API response error",});}
2057else{setTimeout(function(){r.AJAXresponse.response.forEach(function(item){chooseIngredient(item);});updateChosenListCount();},300);}}});}
2058var param_names=['favourite','nonalcoholic','yourrating','rating','altingredients','missing','requireoptional','hof','commented'];if(form_step=="two"){param_names.forEach(function(param){var $el=$("[name="+param+"]");$el.on("change",getResultCountDebounced);});getResultCount();enableResetButton();
2058$("#js-reset-form").on("click",function(){param_names.forEach(function(param){var $el=$("[name="+param+"]");if($el.get(0).tagName=="INPUT"&&($el.attr("type")=="radio"||$el.attr("type")=="checkbox")){$("[name="+param+"][value='']").prop("checked",true);$("[name="+param+"]").trigger("change");}
2059else{$el.val('');}});});}
2060function formIsAtDefault(){var form_has_value=false;param_names.forEach(function(param){var $el=$("[name="+param+"]");if($el.get(0).tagName=="INPUT"&&($el.attr("type")=="radio"||$el.attr("type")=="checkbox")){if(!!$("[name="+param+"]:checked").val()){form_has_value=true;return false;}}
2061else{if(!!$el.val()){form_has_value=true;return false;}}});return!form_has_value;}
2062var step_two_submit=false;dg.ui.form=$("#cb-search-form");dg.ui.form.on("submit",function(e){if(form_step==="two"){if(step_two_submit===false){step_two_submit=true;e.preventDefault();dg.ui.form.addClass("hide");$("#on-submit").foundation('open');param_names.forEach(function(param){var params={};params.sid=$("input[name='sid']").val();params.method="set";var $el=$("[name="+param+"]");if($el.get(0).tagName=="INPUT"&&($el.attr("type")=="radio"||$el.attr("type")=="checkbox")){$el=$('input[name="'+param+'"]:checked');}
2063params.name=param;params.value=$el.val()||null;dg.cbApi.pushToQueue('recipe-search-param',params);});dg.cbApi.pushToQueue('recipe-search-complete',{sid:$("input[name='sid']").val(),name:$("#recipe_search_name").val()});dg.cbApi.executeQueue(function(){setTimeout(function(){dg.ui.form.submit();},1000);});return false;}
2064if(dg.data.cb.ga_events_enabled===true){window.gtag_builder('event','cocktail','cocktail-builder','search');}}
2065else{dg.ui.form.addClass("hide");$("#on-submit").foundation('open');}});var loading_state=false;var get_result_timeout;function getResultCountDebounced(){enableResetButton();if(loading_state===false){loading_state=true;$(".js-recipe-search-count").empty().append(dg.cbView.generate("icon",{graphic:"loading"}).el);}
2066clearTimeout(get_result_timeout);get_result_timeout=setTimeout(getResultCount,1500);}
2067function enableResetButton(){if(formIsAtDefault()){$("#js-reset-form").prop("disabled",true).addClass("cb-button--off").removeClass("cb-button--link");}
2068else{$("#js-reset-form").prop("disabled",false).removeClass("cb-button--off").addClass("cb-button--link")}}
2069function getResultCount(){var params={};if(use_all_ingredients===false){params.sid=$("input[name='sid']").val();}
2070param_names.forEach(function(param){var $el=$("[name="+param+"]");if($el.get(0).tagName=="INPUT"&&($el.attr("type")=="radio"||$el.attr("type")=="checkbox")){$el=$('input[name="'+param+'"]:checked');}
2071params[param]=$el.val()||null;});dg.cbApi.pushToQueue('search-recipe',params,function(r){if(r.AJAXstatus!=="ok"){dg.cbFatalError({'_trigger':"recipe-search `search-recipe` AJAX error",});}
2072else{if(r.AJAXresponse.status!=="ok"){dg.cbFatalError({'_trigger':"recipe-search `search-recipe` API response error",});}
2073else{$(".js-recipe-search-count").html(r.AJAXresponse.response.result_count.toLocaleString());loading_state=false;if(r.AJAXresponse.response.result_count<1){$(".js-search-result-report").addClass("cb-form-report--error");}
2074else{$(".js-search-result-report").removeClass("cb-form-report--error");}}}});dg.cbApi.executeQueue();}
2075dg.ui.select_category=$("#search-category");dg.ui.select_category.on("change",updateFilterLabel);dg.ui.filter_ingredients=$("#ingredients-filter");dg.ui.filter_ingredients_label=dg.ui.filter_ingredients.parent().find(".cb-form-control__label");updateFilterLabel();dg.ui.filter_ingredients.on("input",dg.service.debounce(filterIngredientList,500));var _fetching_ingredients=false;dg.ui.select_category.on("change",updateIngredientList);updateIngredientList();function updateFilterLabel(){dg.ui.filter_ingredients_label.html("Filter "+dg.ui.select_category.find("option:selected").text().replace(/\(.*\)$/,''));}
2076function updateIngredientList(){if(_fetching_ingredients===true){return false;}
2077disableUpdateIngredientsList()
2078$(dg.ui.available_item_list.el).empty().append(dg.cbView.generate('item-list-message',{icon:'loading',classNames:'cb-list-message--no-results',sub_title:'Fetching ingredients...'}).el);var api_details=getApiDetails(dg.ui.select_category.val());if(api_details!==undefined){var params=api_details.params;params.sort='name';dg.cbApi.pushToQueue(api_details.route,params,function(r){if(r.AJAXstatus!=="ok"){dg.cbFatal
2078Error({'_trigger':"recipe-search updateIngredientList() AJAX error",});}
2079else{if(r.AJAXresponse.status!=="ok"){dg.cbFatalError({'_trigger':"recipe-search updateIngredientList() API response error",});}
2080else{setTimeout(function(){enableUpdateIngredientsList();if(r.AJAXresponse.response.result.length<1){$(dg.ui.available_item_list.el).empty().append(dg.cbView.generate('item-list-message',{icon:'block',title:'No ingredients found',classNames:'cb-list-message--no-results',sub_title:'Please reload the page and try again'}).el);}
2081else{$(dg.ui.available_item_list.el).empty();r.AJAXresponse.response.result.forEach(function(item){if(chosen_ingredients[item.link_table+item.link_id]){item.chosen=1;}
2082item.onAdd=function(){chooseIngredient(item);};$(dg.ui.available_item_list.el).append(dg.cbView.generate('item-recipe-search-ingredient',item).el);});}},300);}}});dg.cbApi.executeQueue();}}
2083function chooseIngredient(item){if(Object.keys(chosen_ingredients).length<1){$(dg.ui.chosen_item_list.el).empty().append(dg.ui.chosen_item_list.el);}
2084chosen_ingredients[item.link_table+item.link_id]=item;if(form_step==="one"){item.remove_button=1;item.onRemove=function(){delete chosen_ingredients[item.link_table+item.link_id];updateChosenListCount();$(dg.ui.available_item_list.el).find(".cb-list-item").each(function(){if($(this).data("chosen-ingredients-key")===item.link_table+item.link_id){$(this).trigger("cb.enableadd");}});};var chosen_item=dg.cbView.generate('item-recipe-search-ingredient',item).el;var input=document.createElement("INPUT");input.name="step_one[chosen_ingredient]["+item.ingredient.id+"]";input.value=item.id||null;input.type="hidden";chosen_item.appendChild(input);}
2085else{item.present_only=1;var chosen_item=dg.cbView.generate('item-recipe-search-ingredient',item).el;}
2086$(dg.ui.chosen_item_list.el).prepend(chosen_item);dg.ui.filter_ingredients.val('').trigger("input").blur();updateChosenListCount();}
2087function updateChosenListCount(){var count=Object.keys(chosen_ingredients).length;$("#chosen-ingredients-counter")[0].dataset.count=count;if(count>0){$("#chosen-ingredients-card").addClass("cb-form-card--valid");$("#step-one-continue").removeClass("cb-button--off").prop("disabled",false);}
2088else{if(count<1){$(dg.ui.chosen_item_list.el).empty().append(dg.cbView.generate('item-list-message',{icon:'dislike',classNames:'cb-list-message--no-results',title:'No ingredients chosen'}).el);}
2089$("#chosen-ingredients-card").removeClass("cb-form-card--valid");$("#step-one-continue").addClass("cb-button--off").prop("disabled",true);}}
2090function enableUpdateIngredientsList(){_fetching_ingredients=false;dg.ui.select_category.prop("disabled",false)
2091.parents(".cb-form-control:first").removeClass("cb-form-control--disabled");dg.ui.filter_ingredients.prop("disabled",false)
2092.parents(".cb-form-control:first").removeClass("cb-form-control--disabled");}
2093function disableUpdateIngredientsList(){_fetching_ingredients=true;dg.ui.select_category.prop("disabled",true)
2094.parents(".cb-form-control:first").addClass("cb-form-control--disabled");dg.ui.filter_ingredients.prop("disabled",true)
2095.val('').blur()
2096.parents(".cb-form-control:first").addClass("cb-form-control--disabled");}
2097var no_search_results_message=dg.cbView.generate('item-list-message',{icon:'dislike',classNames:'cb-list-message--no-results js-no-results-found',sub_title:'Your search returned no results'}).el;function filterIngredientList(){var keyword=dg.ui.filter_ingredients.val().trim();var regex=new RegExp(keyword,"i");var $items=$(dg.ui.available_item_list.el).find(".cb-list-item");var matches=0;$items.each(function(){if(keyword===""){++matches;$(this).removeClass("hide")}
2098else{if(regex.test($(this).data("display-name"))){++matches;$(this).removeClass("hide")}
2099else{$(this).addClass("hide");}}});if(matches===0){$(dg.ui.available_item_list.el).append(no_search_results_message);}
2100else{$(dg.ui.available_item_list.el).find(".js-no-results-found").remove();}}
2101function getApiDetails(key){return{ingredient:{route:'ingredients',params:{pantry:1}},base_spirits:{route:'ingredients',params:{page:'base-spirits'}},liqueurs:{route:'ingredients',params:{page:'liqueurs'}},wine_vermouth:{route:'ingredients',params:{page:'wine-vermouth'}},beer_cider:{route:'ingredients',params:{page:'beer-cider'}},bitters:{route:'ingredients',params:{page:'bitters'}},syrup:{route:'ingredients',params:{page:'syrup'}}
2101,fruit_veg_juice:{route:'ingredients',params:{page:'fruit-veg-juice'}},fridge_pantry:{route:'ingredients',params:{page:'fridge-pantry'}},mixer_packaged_juice:{route:'ingredients',params:{page:'mixer-packaged-juice'}},wish_list:{route:'wish-list',params:{list:1,in_ingredients:1,include_bws:1}},favourites:{route:'favourite',params:{list:1,in_ingredients:1,include_bws:1}},preferred:{route:'collections',params:{page:'preferred',section:'ingredients'}}}[key]||undefined;}}
2102function __cocktailBuilderRecipeSearchesAction(){var url_parts=window.location.pathname.split("/");var page=url_parts.pop();var section=url_parts.pop();dg.ui.item_list=dg.cbView.generate('item-list');var list_type=localStorage.getItem('cb-list-type');if(list_type!==null)dg.ui.item_list.setType(list_type);$("#pagination-item-list").append(dg.ui.item_list.el);$(dg.ui.item_list.el).append(dg.cbView.generate('item-list-message',{'icon':'loading','classNames':'cb-list-message--no-results cb-list-message--large','title':'Fetching searches','sub_title':'Please wait a moment...'}).el);dg.ui.pagination=new __cocktailbuilderPagination();dg.ui.pagination.setApiTask('searches');dg.ui.pagination.addInput('limit',$("#pagination-limit"));setLimitOptions();$(window).on('changed.zf.mediaquery',setLimitOptions);dg.ui.pagination.addInput('offset',$("#pagination-offset"));dg.ui.pagination.addInput('keyword',$("#pagination-keyword"));dg.ui.pagination.addButton('next',$(".pagination-next"));dg.ui.pagination.addButton('prev',$(".pagination-prev"));dg.ui.pagination.addButton('first',$(".pagination-first"));dg.ui.pagination.addButton('last',$(".pagination-last"));dg.ui.pagination.addButton('submit',$("#pagination-submit"));dg.ui.pagination.addButton('clear_filters',$("#pagination-clear-filters"));dg.ui.pagination.setItemCountView($("#pagination-item-count"));dg.ui.pagination.setPageCountView($(".pagination-page-count"));dg.ui.pagination.setCurrentPageView($(".pagination-current-page"));dg.ui.pagination.setLoaderView($(".pagination-loader"));dg.ui.pagination.reloadOnBrowserBack();dg.ui.pagination.callApi();dg.ui.pagination.build=function(self){dg.ui.pagination.update_url=true;$("#pagination-button-block").removeClass("cb-block-button--highlight");if(self.call_trigger==="onChangeOffset"&&dg.viewport.media_query==="small"){window.scrollTo(0,$("#section-container").offset().top);}
2103else if(self.call_trigger==="onClearFilters"){$("#pagination-button-block").trigger("cb.call.close");}
2104$(".cb-pre-fadein").removeClass("cb-pre-fadein").addClass("cb-fadein");$(".cb-js-delete-on-pagination").remove();$(dg.ui.item_list.el).empty();$("#pagination-result-params").empty();$("#pagination-result-params-container").addClass("hide");$("#pagination-clear-filters-container").addClass("hide");if(self.getParam('keyword')){$("#pagination-button-block").addClass("cb-block-button--highlight");$("#pagination-result-params-container").removeClass("hide");$("#pagination-clear-filters-container").removeClass("hide");$("#pagination-result-params").append(dg.cbView.generate('tag',{'icon':'search','text':"&lsquo; "+self.getParam('keyword')+" &rsquo;",'classNames':"cb-tag--highlight alt-font--natural"}).el);}
2105dg.ui.item_list.presentType();if(self.data.response.result_count<1){$(dg.ui.item_list.el).append(dg.cbView.generate('item-list-message',{'icon':'dislike','classNames':'cb-list-message--no-results  cb-list-message--large','title':'No results found','sub_title':"You haven't saved any searches yet.",}).el);}
2106else{self.data.response.result.forEach(function(item,i){$(dg.ui.item_list.el).append(dg.cbView.generate('item-search',item).el);});}};$("#pagination-button-block").on("cb.open",function(){$("#pagination-keyword").focus();});$(".pagination-change-type").removeClass("cb-button--off")
2107.not("[data-type='"+dg.ui.item_list.type+"']")
2108.addClass("cb-button--off");$(".pagination-change-type").each(function(){var $button=$(this);var $container=$button.parent();var $siblings=$container.find(".pagination-change-type").not($button);$button.on("click",function(e){if($button.data("type")==dg.ui.item_list.type)return false;$button.removeClass("cb-button--off").prop("disabled",true);$siblings.addClass("cb-button--off").prop("disabled",true);dg.ui.item_list.setType($button.data("type"));localStorage.setItem('cb-list-type',$button.data("type"));setLimitOptions(e,true);
2108setTimeout(function(){$button.prop("disabled",false);$siblings.prop("disabled",false);},1000);});});function setLimitOptions(event,list_type_changed){var prev_limit=parseInt(dg.ui.pagination.getParam('limit'));var limits=dg.cb_grid_limits[dg.ui.item_list.type][Foundation.MediaQuery.current];var selected_index=1;dg.ui.pagination.inputs.limit.empty();for(var l=0;l<limits.length;++l){var option=document.createElement("OPTION");option.value=limits[l];option.textContent=limits[l];if(l===selected_index){option.selected=1;}
2109dg.ui.pagination.inputs.limit.append(option);}
2110if(list_type_changed||(event&&prev_limit!==parseInt(dg.ui.pagination.inputs.limit.val()))){dg.ui.pagination.inputs.limit.trigger("change");}}}
2111function __cocktailBuilderYourRecipesAction(){dg.ui.item_list=dg.cbView.generate('item-list');var list_type=localStorage.getItem('cb-list-type');if(list_type!==null)dg.ui.item_list.setType(list_type);$("#pagination-item-list").append(dg.ui.item_list.el);$(dg.ui.item_list.el).append(dg.cbView.generate('item-list-message',{'icon':'loading','classNames':'cb-list-message--no-results cb-list-message--large','title':'Fetching your recipes','sub_title':'Please wait a moment...'}).el);dg.ui.pagination=new __cocktailbuilderPagination();dg.ui.pagination.setApiTask('your-recipes');dg.ui.pagination.update_url=true;dg.ui.pagination.addInput('limit',$("#pagination-limit"));setLimitOptions();$(window).on('changed.zf.mediaquery',setLimitOptions);dg.ui.pagination.addInput('offset',$("#pagination-offset"));dg.ui.pagination.addInput('keyword',$("#pagination-keyword"));dg.ui.pagination.addInput('sort',$("#pagination-sort"));dg.ui.pagination.addButton('next',$(".pagination-next"));dg.ui.pagination.addButton('prev',$(".pagination-prev"));dg.ui.pagination.addButton('first',$(".pagination-first"));dg.ui.pagination.addButton('last',$(".pagination-last"));dg.ui.pagination.addButton('submit',$("#pagination-submit"));dg.ui.pagination.addButton('clear_filters',$("#pagination-clear-filters"));dg.ui.pagination.setItemCountView($("#pagination-item-count"));dg.ui.pagination.setPageCountView($(".pagination-page-count"));dg.ui.pagination.setCurrentPageView($(".pagination-current-page"));dg.ui.pagination.setLoaderView($(".pagination-loader"));dg.ui.pagination.reloadOnBrowserBack();dg.ui.pagination.addButton('random_result',$("#cb-js-random-result"));dg.ui.pagination.onPickRandomResult=function(r){window.location=r.present.href;};dg.ui.pagination.callApi();dg.ui.pagination.build=function(self){$("#pagination-button-block").removeClass("cb-block-button--highlight");if(self.call_trigger==="onChangeOffset"&&dg.viewport.media_query==="small"){window.scrollTo(0,$("#section-container").offset().top);}
2112else if(self.call_trigger==="onClearFilters"){$("#pagination-button-block").trigger("cb.call.close");}
2113$(".cb-pre-fadein").removeClass("cb-pre-fadein").addClass("cb-fadein");$(".cb-js-delete-on-pagination").remove();$(dg.ui.item_list.el).empty();$("#pagination-result-params").empty();$("#pagination-result-params-container").addClass("hide");$("#pagination-clear-filters-container").addClass("hide");if(self.getParam('keyword')){$("#pagination-button-block").addClass("cb-block-button--highlight");$("#pagination-result-params").append(dg.cbView.generate('tag',{'text':self.data.response.result_count+' recipes'}).el);$("#pagination-result-params-container").removeClass("hide");$("#pagination-clear-filters-container").removeClass("hide");$("#pagination-result-params").append(dg.cbView.generate('tag',{'icon':'search','text':"&lsquo; "+self.getParam('keyword')+" &rsquo;",'classNames':"cb-tag--highlight alt-font--natural"}).el);}
2114dg.ui.item_list.presentType();if(self.data.response.result_count<1){$(dg.ui.item_list.el).append(dg.cbView.generate('item-list-message',{'icon':'dislike','classNames':'cb-list-message--no-results cb-list-message--large','title':'No results found','sub_title':"You haven't created any recipes yet",}).el);}
2115else{self.data.response.result.forEach(function(item,i){$(dg.ui.item_list.el).append(dg.cbView.generate('item-user-recipe',item).el);});}};$("#pagination-button-block").on("cb.open",function(){$("#pagination-keyword").focus();});$(".pagination-change-type").removeClass("cb-button--off")
2116.not("[data-type='"+dg.ui.item_list.type+"']")
2117.addClass("cb-button--off");$(".pagination-change-type").each(function(){var $button=$(this);var $container=$button.parent();var $siblings=$container.find(".pagination-change-type").not($button);$button.on("click",function(e){if($button.data("type")==dg.ui.item_list.type)return false;$button.removeClass("cb-button--off").prop("disabled",true);$siblings.addClass("cb-button--off").prop("disabled",true);dg.ui.item_list.setType($button.data("type"));localStorage.setItem('cb-list-type',$button.data("type"));setLimitOptions(e,true);
2117setTimeout(function(){$button.prop("disabled",false);$siblings.prop("disabled",false);},1000);});});function setLimitOptions(event,list_type_changed){var prev_limit=parseInt(dg.ui.pagination.getParam('limit'));var limits=dg.cb_grid_limits[dg.ui.item_list.type][Foundation.MediaQuery.current];var selected_index=1;dg.ui.pagination.inputs.limit.empty();for(var l=0;l<limits.length;++l){var option=document.createElement("OPTION");option.value=limits[l];option.textContent=limits[l];if(l===selected_index){option.selected=1;}
2118dg.ui.pagination.inputs.limit.append(option);}
2119if(list_type_changed||(event&&prev_limit!==parseInt(dg.ui.pagination.inputs.limit.val()))){dg.ui.pagination.inputs.limit.trigger("change");}}}
2120function __cocktailBuilderRecipesAction(){var page=window.location.pathname.split("/").pop();var jump_to_results=dg.service.getQuery("h");dg.ui.item_list=dg.cbView.generate('item-list');var list_type=localStorage.getItem('cb-list-type');if(list_type!==null)dg.ui.item_list.setType(list_type);$("#pagination-item-list").append(dg.ui.item_list.el);$(dg.ui.item_list.el).append(dg.cbView.generate('item-list-message',{icon:'loading',classNames:'cb-list-message--no-results cb-list-message--large',title:'Fetching recipes',sub_title:'Please wait a moment...'}).el);dg.ui.pagination=new __cocktailbuilderPagination();dg.ui.pagination.setApiTask('search-recipe');dg.ui.pagination.setParam('page',page);dg.ui.pagination.setParam('fetch_available_brands',1);dg.ui.pagination.addInput('limit',$("#pagination-limit"));setLimitOptions();$(window).on('changed.zf.mediaquery',setLimitOptions);dg.ui.pagination.addInput('offset',$("#pagination-offset"));dg.ui.pagination.addInput('keyword',$("#pagination-keyword"));dg.ui.pagination.addInput('sort',$("#pagination-sort"));dg.ui.pagination.addButton('next',$(".pagination-next"));dg.ui.pagination.addButton('prev',$(".pagination-prev"));dg.ui.pagination.addButton('first',$(".pagination-first"));dg.ui.pagination.addButton('last',$(".pagination-last"));dg.ui.pagination.addButton('submit',$("#pagination-submit"));dg.ui.pagination.setItemCountView($("#pagination-item-count"));dg.ui.pagination.setPageCountView($(".pagination-page-count"));dg.ui.pagination.setCurrentPageView($(".pagination-current-page"));dg.ui.pagination.setLoaderView($(".pagination-loader"));dg.ui.pagination.addButton('random_result',$("#cb-js-random-result"));dg.ui.pagination.onPickRandomResult=function(r){window.location=r.href;};dg.ui.pagination.addButton('shuffle',$("#cb-js-shuffle-result"));var shuffle=false;dg.ui.pagination.buttons.shuffle.on("click",function(){if(shuffle===false){shuffle=1;var shuffle_option=document.createElement("OPTION");shuffle_option.value='shuffle';shuffle_option.disabled=1;shuffle_option.textContent='Shuffle';$("#pagination-sort").append(shuffle_option);}
2121$("#pagination-sort").val('shuffle');dg.ui.pagination.setParam('shuffle',1);dg.ui.pagination.callApi();});dg.ui.pagination.onChangeSort=function(r){dg.ui.pagination.deleteParam('shuffle');};['keyword','favourite','nonalcoholic','rating','yourrating','altingredients','missing','requireoptional','iid','hof','commented','sid'].forEach(function(param){if(dg.service.getQuery(param)){createSearchParamInput(param,dg.service.getQuery(param));dg.ui.pagination.addInput(param,$("#pagination-"+param));}});dg.ui.pagination.reloadOnBrowserBack();dg.ui.pagination.build=function(self){dg.ui.pagination.update_url=true;$(".cb-js-delete-on-pagination").remove();$(dg.ui.item_list.el).empty();if(self.data.response.result_count<1&&self.getParam('sid')&&!self.getParam('missing')){$(dg.ui.item_list.el).append(dg.cbView.generate('item-list-message',{icon:'loading',classNames:'cb-list-message--no-results  cb-list-message--large',title:'No results found',sub_title:"Allowing missing ingredients..."}).el);createSearchParamInput('missing',1);dg.ui.pagination.addInput('missing',$("#pagination-missing"));setTimeout(dg.ui.pagination.callApi,1000);return;}
2122if(self.call_trigger==="onClearFilters"){$("#pagination-button-block").trigger("cb.call.close");}
2123$(".cb-pre-fadein").removeClass("cb-pre-fadein").addClass("cb-fadein");$("#pagination-result-params").append(dg.cbView.generate('tag',{'text':self.data.response.result_count+' recipes'}).el);presentSearchParams(self);dg.ui.item_list.presentType();if(self.data.response.result_count<1){$(dg.ui.item_list.el).append(dg.cbView.generate('item-list-message',{icon:'dislike',classNames:'cb-list-message--no-results  cb-list-message--large',title:'No results found',sub_title:"No recipes available matching your criteria"}).el);}
2124else{self.data.response.result.forEach(function(recipe){$(dg.ui.item_list.el).append(dg.cbView.generate('item-recipe',recipe).el);});}
2125if(self.call_trigger!=="onChangeLimit"){if(jump_to_results){window.scrollTo(0,$("#recipe-results").offset().top);}
2126jump_to_results=1;}};$(".pagination-change-type").removeClass("cb-button--off")
2127.not("[data-type='"+dg.ui.item_list.type+"']")
2128.addClass("cb-button--off");$(".pagination-change-type").each(function(){var $button=$(this);var $container=$button.parent();var $siblings=$container.find(".pagination-change-type").not($button);$button.on("click",function(e){if($button.data("type")==dg.ui.item_list.type)return false;$button.removeClass("cb-button--off").prop("disabled",true);$siblings.addClass("cb-button--off").prop("disabled",true);dg.ui.item_list.setType($button.data("type"));localStorage.setItem('cb-list-type',$button.data("type"));setLimitOptions(e,true);
2128setTimeout(function(){$button.prop("disabled",false);$siblings.prop("disabled",false);},1000);});});dg.ui.pagination.callApi();var save_search_submitting=false;dg.ui.form=$("#cb-js-form-save-search");dg.ui.form.on("submit",function(e){if(save_search_submitting===true){e.preventDefault();return false;}
2129save_search_submitting=true;if(dg.data.cb.ga_events_enabled===true){window.gtag_builder('event','cocktail','cocktail-builder','save-search');}
2130$("#js-modal-save-search").foundation('close');$("#on-submit").foundation('open');return true;});function setLimitOptions(event,list_type_changed){var prev_limit=parseInt(dg.ui.pagination.getParam('limit'));var limits=dg.cb_grid_limits[dg.ui.item_list.type][Foundation.MediaQuery.current];var selected_index=1;dg.ui.pagination.inputs.limit.empty();for(var l=0;l<limits.length;++l){var option=document.createElement("OPTION");option.value=limits[l];option.textContent=limits[l];if(l===selected_index){option.selected=1;}
2131dg.ui.pagination.inputs.limit.append(option);}
2132if(list_type_changed||(event&&prev_limit!==parseInt(dg.ui.pagination.inputs.limit.val()))){dg.ui.pagination.inputs.limit.trigger("change");}}
2133function onFilterChange(e,skip_call){if(skip_call!==true){dg.ui.pagination.callApi();}}
2134function presentSearchParams(self){$("#pagination-button-block").removeClass("cb-block-button--highlight");$("#pagination-result-params").empty();$("#pagination-result-params-container").addClass("hide");var search_performed=false;['keyword','favourite','nonalcoholic','rating','altingredients','missing','requireoptional','iid','hof','commented','sid'].forEach(function(param){if(self.getParam(param)){search_performed=true;}});if(search_performed===false){return false;}
2135$("#pagination-button-block").addClass("cb-block-button--highlight");if(self.getParam('keyword')){$("#pagination-result-params").append(dg.cbView.generate('tag',{icon:'search',text:"&lsquo; "+self.getParam('keyword')+" &rsquo;",classNames:"alt-font--natural"}).el);}
2136if(self.getParam('sid')){if(self.data.response.params.chosen_ingredients.present.length){self.data.response.params.chosen_ingredients.present.forEach(function(i){$("#pagination-result-params").append(dg.cbView.generate('tag',{icon:'all-ingredients',text:i.display_name}).el);});var diff=self.data.response.params.chosen_ingredients.count-self.data.response.params.chosen_ingredients.present.length;if(diff>0){$("#pagination-result-params").append(dg.cbView.generate('tag',{icon:'all-ingredients',text:'+'+diff+' ingredients'}).el);}}}
2137if(self.getParam('iid')){$("#pagination-result-params").append(dg.cbView.generate('tag',{icon:'all-ingredients',text:"Containing "+self.data.response.phrases['iid'],}).el);}
2138if(self.getParam('altingredients')){$("#pagination-result-params").append(dg.cbView.generate('tag',{icon:'alternative',text:"Allow Alternative Ingredients"}).el);}
2139if(self.getParam('requireoptional')){$("#pagination-result-params").append(dg.cbView.generate('tag',{icon:'ingredient',text:"Require Optional Ingredients"}).el);}
2140if(self.getParam('missing')){$("#pagination-result-params").append(dg.cbView.generate('tag',{icon:"all-ingredients",text:"Allow Missing Ingredients"}).el);}
2141if(self.getParam('favourite')){var favourite_text={'only':'Favourites only','hide':'Hide Favourites'}[self.getParam('favourite')]||null;if(favourite_text!==null){$("#pagination-result-params").append(dg.cbView.generate('tag',{icon:self.getParam('favourite')==='only'?'heart-full':'heart',text:favourite_text}).el);}}
2142if(self.getParam('hof')){var hof_text={'only':'Hall of Fame only','hide':'Hide Hall of Fame'}[self.getParam('hof')]||null;if(hof_text!==null){$("#pagination-result-params").append(dg.cbView.generate('tag',{icon:'star-circle',text:hof_text}).el);}}
2143if(self.getParam('commented')){var commented_text={'only':'Commented on only','hide':'Hide Commented on'}[self.getParam('commented')]||null;if(commented_text!==null){$("#pagination-result-params").append(dg.cbView.generate('tag',{icon:'chat',text:commented_text}).el);}}
2144if(self.getParam('nonalcoholic')){var nonalcoholic_text={'only':'Non-Alcoholic only','include':'Include Non-Alcoholic'}[self.getParam('nonalcoholic')]||null;if(nonalcoholic_text!==null){$("#pagination-result-params").append(dg.cbView.generate('tag',{icon:'zero-percent',text:nonalcoholic_text}).el);}}
2145if(self.getParam('rating')){var rating_text={'rated-only':'Hide unrated Recipes','5.5':'5+','5':'5 and above','4':'4 and above','3':'3 and above'}
2145[self.getParam('rating')]||null;if(rating_text!==null){$("#pagination-result-params").append(dg.cbView.generate('tag',{icon:self.getParam('rating')=='rated-only'?'star-empty':'star',text:rating_text}).el);}}
2146if(!$("#pagination-result-params").is(":empty")){$("#pagination-result-params-container").removeClass("hide");}}
2147function createSearchParamInput(name,value){var input=document.createElement("INPUT");input.type="hidden";input.name=name;input.value=value||"";input.id="pagination-"+name;$("#section-container").append(input);}}
2148function __cocktailBuilderRegisterAction(){$(".cb-form-submit").on("click",onSubmit);$("#dob_dd").on("change",validateDob);$("#dob_mm").on("change",validateDob);$("#dob_yyyy").on("change",validateDob);function validateDob(){if($("#dob_dd").val()&&$("#dob_mm").val()&&$("#dob_yyyy").val()){var $error_container=$("#dob-error-container");var date_string=$("#dob_mm").val()+"/"+$("#dob_dd").val()+"/"+$("#dob_yyyy").val();if(dg.service.validateDate(date_string)===false){$("#dob_dd").trigger("presentinvalid");$("#dob_mm").trigger("presentinvalid");$("#dob_yyyy").trigger("presentinvalid");var $error_message=$error_container.find(".cb-form-control-message__error");
2148if(!$error_message.length>0){var error_message=document.createElement("DIV");error_message.className="cb-form-control-message__error";$error_container.append(error_message);$error_message=$(error_message);}
2149$error_message.html("Date of Birth supplied is not a valid date");$error_container.removeClass("hide");}
2150else{$("#dob_dd").trigger("presentvalid");$("#dob_mm").trigger("presentvalid");$("#dob_yyyy").trigger("presentvalid");$error_container.addClass("hide");}}}
2151function onSubmit(){var allow_continue=true;if($("input[name='register[industryYN]']:checked").length<1){$("#which_describes_you_error").removeClass("hide");$("input[name='register[industryYN]']").on("change",function(){if($("input[name='register[industryYN]']:checked").length){$("#which_describes_you_error").addClass("hide");}});allow_continue=false;}
2152else{$("#newsletter_pref_error").addClass("hide");}
2153if($("input[name='register[newsletter_opt_in]']:checked").length<1){$("#newsletter_pref_error").removeClass("hide");$("input[name='register[newsletter_opt_in]']").on("change",function(){if($("input[name='register[newsletter_opt_in]']:checked").length){$("#newsletter_pref_error").addClass("hide");}});allow_continue=false;}
2154else{$("#newsletter_pref_error").addClass("hide");}
2155if($("input[name='register[terms]']:checked").length<1){$("#terms_error").removeClass("hide");$("input[name='register[terms]']").on("change",function(){if($("input[name='register[terms]']:checked").length){$("#terms_error").addClass("hide");}});allow_continue=false;}
2156else{$("#terms_error").addClass("hide");}
2157if(allow_continue===false){event.preventDefault();return false;}
2158if(dg.data.cb.ga_events_enabled===true){window.gtag_builder('event','your-account','register');}}}
2159function __cocktailBuilderWishListButton($button){if(!dg.ui.cb){new __cocktailBuilderAction();}
2160var link_id=$button.data('link-id');var link_table=$button.data('link-table');if(!link_id||!link_table){return false;}
2161var $button_icon=$button.find(".cb-button__icon:first");if(!$button_icon.length){var button_icon=document.createElement('SPAN');button_icon.className='cb-button__icon';$button.append(button_icon);$button_icon=$(button_icon);}
2162var $button_label=$button.find(".cb-button__label:first");if(!$button_label.length){var button_label=document.createElement('SPAN');button_label.className='cb-button__label';$button.append(button_label);$button_label=$(button_label);}
2163var wish_list=!!$button.data("wish-list");var hover_timeout=null;var submitting=false;var labels={'add':'add to wish list','adding':'adding to wish list','remove':'remove from wish list','removing':'removing from wish list','in':'in your wish list','not_in':'not in wish list'};var icons={'add':'wish-list','remove':'wish-list-remove','in':'wish-list-check','not_in':'wish-list'};if(wish_list)presentWishList();else presentNotWishList();$button.on({click:toggleWishList,mouseover:onMouseOver,mouseout:onMouseOut});function toggleWishList(){if(submitting)return false;submitting=1;$button.prop("disabled",true);isLoading();dg.cbApi.post('wish-list',{'link_table':link_table,'link_id':link_id,'add':(wish_list?'no':'yes')},function(r){if(r.AJAXstatus!=="ok"){dg.cbFatalError({'_trigger':"__cocktailBuilderWishListButton `wish-list` AJAX error",});}
2164else if(r.AJAXresponse.status!=="ok"){dg.cbFatalError({'_trigger':"__cocktailBuilderWishListButton `wish-list` API response error",});}
2165else{wish_list=r.AJAXresponse.response.wish_list=="yes";setTimeout(function(){if(wish_list)presentWishList();else presentNotWishList();setTimeout(function(){submitting=false;$button.prop("disabled",false);},2500);},1250);}});}
2166function onMouseOver(){clearTimeout(hover_timeout);if(submitting)return;hover_timeout=setTimeout(function(){$button_label.removeClass("cb-fadein");if(wish_list){$button_label.html(labels.remove)
2167.addClass("cb-fadein");$button_icon.empty()
2168.append(dg.cbView.generate('icon',{graphic:icons.remove}).el)
2169$button.removeClass("cb-button--btl")
2170.addClass("cb-button--danger");}
2171else{$button_label.html(labels.add)
2172.addClass("cb-fadein");$button_icon.empty()
2173.append(dg.cbView.generate('icon',{graphic:icons.add}).el)
2174$button.removeClass("cb-button--off")
2175.addClass("cb-button--btl");}},250);}
2176function onMouseOut(){clearTimeout(hover_timeout);hover_timeout=setTimeout(function(){$button_label.removeClass("cb-fadein");if(wish_list)presentWishList();else presentNotWishList();},1250);}
2177function isLoading(){clearTimeout(hover_timeout);$button.removeClass("cb-button--off cb-button--danger cb-button--btl");if(wish_list){$button_label.html(labels.removing);$button.addClass("cb-button--danger");}
2178else{$button_label.html(labels.adding);$button.addClass("cb-button--btl");}
2179$button_icon.empty()
2180.append(dg.cbView.generate('icon',{graphic:'loading'}).el);}
2181function presentWishList(){$button_label.html(labels['in']);$button_icon.empty()
2182.append(dg.cbView.generate('icon',{graphic:icons['in']}).el);$button.addClass("cb-button--btl")
2183.removeClass("cb-button--off cb-button--danger")
2184.data("wish-list",1);}
2185function presentNotWishList(){$button_label.html(labels.not_in);$button_icon.empty()
2186.append(dg.cbView.generate('icon',{graphic:icons.not_in}).el);$button.addClass("cb-button--off")
2187.removeClass("cb-button--btl cb-button--danger")
2188.data("wish-list",null);}}
2189function __App(){var context=this;this.service=new __Service(this);this.api=new __Api(this);this.uri=window.location.pathname;this.hreflang=this.service.getHrefLang(this.uri);this.touch_enabled=this.service.hasTouch();this.cookies_enabled=navigator.cookieEnabled;this.development=$('body').hasClass("development");this.autoplay_videos=$('body').hasClass("autoplay-videos");this.logged_in=$('body').data("loggedin")==="yes"?true:false;this.available_languages=[];$("#js-modal-lang button[name='set_lang']").each(function(){context.available_languages.push(this.value);});this.available_languages_reg=this.available_languages.join("|").toLowerCase();this.ui={};this.data={};this.viewport={};this.viewport.height=$(window).height();this.viewport.width=$(window).width();this.viewport.media_query=Foundation.MediaQuery.current;$(window).on("resize",this.service.debounce(function(){context.viewport.height=$(window).height();context.viewport.width=$(window).width();context.viewport.media_query=Foundation.MediaQuery.current;context.touch_enabled=context.service.hasTouch();$(window).trigger("dg.resize.window");},250));var __routes=[{route:'^(/)?$',action:'index'},{route:'^/(cocktails|partners/content-manager/cocktails/)',action:'cocktails'},{route:'^/(beer-wine-spirits|partners/content-manager/beerwineandspirits/)',action:'bws'},{route:'^/(pubs-and-bars|partners/content-manager/barandtravelguides/)',action:'bars'},{route:'^/people',action:'people'},{route:'^/books',action:'books'},{route:'^/(glassware|bar-interior|bar-equipment-and-barware)',action:'glassware'},{route:'^/producers',action:'producer'},{route:'^/shop',action:'shop'},{route:'^/(your-account|your/)',action:'myaccount'},{route:'^/bartenders-lounge',action:'btl'},{route:'^/my-bar',action:'mybar'},{route:'^/about',action:'about'},{route:'^/(agents|partners/content-manager/agents/)',action:'agents'}
2189,{route:'^/(pr-companies|partners/content-manager/pr-companies/)',action:'prcompanies'},{route:'^/(encyclopedia|on-this-day)/',action:'encyclopedia'},{route:'^/builder/',action:'cocktailBuilder'}];this.active_action=null;this.init=function(){__baseAction();this.executeRoute();};this.executeRoute=function(){for(var r=0;r<__routes.length;++r){if(__routes[r].action===undefined)continue;if(this.service.iAmPage(__routes[r].route)){this.active_action=__routes[r].action;this.action=window["__"+__routes[r].action+"Action"];if(typeof this.action!=="function")
2190console.warn("unable to execute action `"+__routes[r].action+"`");else
2191this.action();break;}}};if(this.development){document.addEventListener("DOMContentLoaded",()=>{document.querySelectorAll("img").forEach((img)=>{function replace(){const replacement=document.createElement("span");replacement.textContent="cc-image-404";replacement.style.color="red";replacement.style.fontWeight="bold";img.replaceWith(replacement);}
2192img.addEventListener("error",replace);if(img.complete&&img.naturalWidth===0){replace();}});});}
2193return this;}
2194function __cocktailBuilderViewButton(view){if(view.params.href){view.el=view.newComponent('el','A');view.el.href=view.params.href;if(view.params.target){view.el.target=view.params.target;}}
2195else{view.el=view.newComponent('el','BUTTON');view.el.type=view.params.type||"button";}
2196view.el.className="cb-button";if(view.params.classNames){view.el.className+=" "+view.params.classNames;}
2197if(view.params.id){view.el.id=view.params.id;}
2198if(view.params.toggle){var label_container=view.newComponent('label_container','SPAN');label_container.className="cb-button__label toggle";label_container.textContent=view.params.text;view.el.appendChild(label_container);view.el.appendChild(label_container);var toggle=view.newComponent('toggle','SPAN');toggle.className="cb-button__toggle";view.el.appendChild(toggle);var input=view.newComponent('checkbox','INPUT');input.type="checkbox";input.name=view.params.toggle.name||"";$(input).on("change",evaluateCheckbox);evaluateCheckbox();view.el.addEventListener("click",toggleCheckbox);toggle.appendChild(input);}
2199else if(view.params.icon){var icon_container=view.newComponent('icon_container','SPAN');icon_container.className="cb-button__icon";view.el.appendChild(icon_container);var icon={};icon.graphic=view.params.icon;icon_container.appendChild(dg.cbView.generate('icon',icon).el);if(view.params.text){var label_container=view.newComponent('label_container','SPAN');label_container.className="cb-button__label";label_container.textContent=view.params.text;view.el.appendChild(label_container);}}
2200else if(view.params.text){view.el.textContent=view.params.text;}
2201if(view.params.onClick){view.el.addEventListener("click",view.params.onClick);}
2202return view;function toggleCheckbox(){$(view.component.checkbox).prop("checked",!$(view.component.checkbox).prop("checked"))
2203.trigger("change");}
2204function evaluateCheckbox(){if($(view.component.checkbox).prop("checked")){$(view.el).removeClass("cb-button--off");}
2205else{$(view.el).addClass("cb-button--off");}
2206if(typeof view.params.onChange==="function"){view.params.onChange();}}}
2207function __cocktailBuilderViewCheckbox(view){view.el=view.newComponent('checkbox',"DIV");view.el.className="cb-form-checkbox";if(view.params.radio){view.el.className+=" cb-form-checkbox--radio";}
2208if(view.params.error){view.el.className+=" cb-form-checkbox--with-error";}
2209if(view.params.theme){view.el.className+=" cb-form-checkbox--theme-"+view.params.theme;}
2210if(view.params.no_validation){view.el.className+=" cb-form-checkbox--no-validation";}
2211if(view.params.classNames){view.el.className+=" "+view.params.classNames;}
2212var container=view.newComponent('container',"DIV");container.className="cb-form-checkbox__input-container";view.el.appendChild(container);var id=view.params.id||'radio_'+view.params.name;var input=view.newComponent('input',"INPUT");input.id=id;input.className="cb-form-checkbox__input";input.type=view.params.radio?"radio":"checkbox";input.name=view.params.name||"";input.value=view.params.value||"";input.checked=view.params.checked||false;input.required=!!view.params.required;input.disabled=view.params.disabled||false;
2212(view.params.attributes||[]).forEach(function(k,v){input[k]=v;});if(typeof view.params.onChange==="function"){$(input).on("change",view.params.onChange);}
2213container.appendChild(input);var label_container=view.newComponent('label_container',"DIV");label_container.className="cb-form-checkbox__label-container";view.el.appendChild(label_container);var label=view.newComponent('label',"LABEL");label.className="cb-form-checkbox__label";label.for=id;label.textContent=view.params.label;label_container.appendChild(label);if(view.params.info){var info=view.newComponent('info',"DIV");info.className="cb-form-checkbox__info";info.innerHTML=view.params.info;label_container.appendChild(info);}
2214if(view.params.icon){var info=view.newComponent('icon',"DIV");info.className="cb-form-checkbox__icon";info.appendChild(dg.cbView.generate('icon',{graphic:view.params.icon}).el);view.el.appendChild(info);}
2215view.presentSaving=function(){$(view.el).addClass("cb-form-checkbox--saving")
2216.removeClass("cb-form-checkbox--saved");}
2217view.presentSaved=function(){$(view.el).removeClass("cb-form-checkbox--saving")
2218.addClass("cb-form-checkbox--saved");}
2219__cocktailbuilderFormCheckbox($(view.el));return view;}
2220function __cocktailBuilderViewFormControlMessage(view){view.el=view.newComponent('message',"DIV");view.el.className="cb-form-control-message";if(view.params.theme){view.el.className+=" cb-form-control-message--theme-"+view.params.theme;}
2221if(view.params.error){view.el.className+=" cb-form-control-message--with-error";var error=view.newComponent('error',"DIV");error.className="cb-form-control-message__error";error.textContent=view.params.error;view.el.appendChild(error);}
2222if(view.params.info){var info=view.newComponent('info',"DIV");info.className="cb-form-control-message__info";info.textContent=view.params.info;view.el.appendChild(info);}
2223return view;}
2224function __cocktailBuilderViewIcon(view){var icon=dg.service.generateView('icon',{size:view.params.size||null,graphic:view.params.graphic||null,label:view.params.label||null});if(view.params.tooltip){var $svg=$(icon.el).find("svg");$svg.wrap("<span class='icon-wrap' style='line-height:0'></span>");$svg_wrapper=$(icon.el).find(".icon-wrap")
2225$svg_wrapper.prop("title",view.params.tooltip);$svg_wrapper.data("show-on","medium");$svg_wrapper.data("tooltip-class","cb-tag cb-tag--tooltip cb-js-delete-on-pagination");$svg_wrapper.data("fade-in-duration",0);var tooltip=new Foundation.Tooltip($svg_wrapper);}
2226return icon;}"use strict";$(document).foundation();window.dg=new __App();
2226dg.init();if(window.set_active_navigation){dg.ui.header.navigation.setActiveTab(window.set_active_navigation);}
2227function gtag_builder(){}
2228function __cocktailBuilderViewItemCollection(view){view.el=view.newComponent('el','DIV');view.el.className="cb-list-item";if(view.params.new){view.el.className+=" cb-list-item--new";}
2229var main=view.newComponent('main','DIV');main.className="cb-list-item__main";view.el.appendChild(main);var main_inner=view.newComponent('main_inner','DIV');main_inner.className="cb-list-item__main-inner";main.appendChild(main_inner);if(view.params.href&&view.params.disabled=="no"){var dg_link=view.newComponent('dg_link','A');dg_link.className='cb-link';dg_link.href=view.params.href;}
2230else{var dg_link=view.newComponent('dg_link','DIV');dg_link.className='display-inline-block';}
2231main_inner.appendChild(dg_link);if(view.params.image){var image_container=view.newComponent('image_container','DIV');image_container.className="cb-list-item__image-container";dg_link.appendChild(image_container);var image=view.newComponent('image','IMG');image.className="cb-list-item__image";image.src=view.params.image;image.alt=view.params.name+" image";image_container.appendChild(image);}
2232var name=view.newComponent('name','DIV');name.className="cb-list-item__name";name.innerHTML=view.params.name;dg_link.appendChild(name);var tags=view.newComponent('tags','DIV');tags.className="cb-tag-group";main_inner.appendChild(tags);if(view.params.is_base_collection){tags.appendChild(dg.cbView.generate('tag',{text:"Base Collection",classNames:"cb-tag--text-only cb-tag--inactive cb-tag--small text-normal"}).el);}
2233else if(view.params.is_public==="yes"){tags.appendChild(dg.cbView.generate('tag',{text:"Public",icon:"public",classNames:"cb-tag--text-only cb-tag--highlight cb-tag--small no-comma"}).el);}
2234else{tags.appendChild(dg.cbView.generate('tag',{text:"Private",icon:'private',classNames:"cb-tag--text-only cb-tag--inactive cb-tag--small no-comma"}).el);}
2235if(view.params.disabled=='yes'){tags.appendChild(dg.cbView.generate('tag',{text:"Disabled",icon:'block',classNames:"cb-tag--text-only cb-tag--danger cb-tag--small no-comma"}).el);}
2236tags.appendChild(dg.cbView.generate('tag',{text:view.params.item_count+" items",classNames:"cb-tag--text-only cb-tag--small text-normal no-comma"}).el);main.appendChild(dg.cbView.generate('button',{text:"Edit",icon:"edit",classNames:"cb-list-item__toggle-view",onClick:function(){window.location=view.params.edit_href;}}).el);return view;}
2237function __cocktailBuilderViewItemListMessage(view){view.el=view.newComponent('el','DIV');view.el.className="cb-list-message";if(view.params.classNames){view.el.className+=" "+view.params.classNames;}
2238if(view.params.icon){view.el.appendChild(dg.cbView.generate('icon',{graphic:view.params.icon}).el);}
2239if(view.params.title){var title=document.createElement("H1");title.className="cb-list-message__title";title.textContent=view.params.title;view.el.appendChild(title);}
2240if(view.params.sub_title){var sub_title=document.createElement("P");sub_title.className="cb-list-message__sub-title";sub_title.textContent=view.params.sub_title;view.el.appendChild(sub_title);}
2241return view;}
2242function __cocktailBuilderViewItemList(view){view.type=view.params.type||'grid';view.el=view.newComponent('el','DIV');view.el.className="cb-list";view.el.className+=" cb-list--"+(view.params.type||'grid');if(view.params.classNames){view.el.className+=" "+view.params.classNames;}
2243view.setType=function(type){if(type===view.type)return;view.type=type;};view.presentType=function(){$(view.el).removeClass("cb-list--grid cb-list--list cb-list--gallery");$(view.el).addClass("cb-list--"+view.type);};return view;}
2244function __cocktailBuilderViewItemManageModal(view){view.params.focus=view.params.focus||null;if(view.params.link_table==="cocktails"){dg.cbApi.post('search-recipe',{id:view.params.link_id,fetch_available_brands:1},function(r){if(r.AJAXstatus!=="ok"){dg.cbFatalError({'_trigger':"__cocktailBuilderViewItemManageModal `search-recipe` AJAX error",});}
2245else{if(r.AJAXresponse.status!=="ok"){dg.cbFatalError({'_trigger':"__cocktailBuilderViewItemManageModal `search-recipe` API response error",});}
2246else if(r.AJAXresponse.response.result_count<=0){dg.cbFatalError({'_trigger':"__cocktailBuilderViewItemManageModal `search-recipe` no results found",});}
2247else{var recipe=r.AJAXresponse.response.result[0];recipe.from_diffords_guide=1;recipe.onUpdateNotes=function(r){$("#cb-present-notes-container").removeClass("hide");$("#cb-present-notes").html(r.AJAXresponse.response);};recipe.onModalClose=function(r){location.reload();};view.item=dg.cbView.generate('item-recipe',recipe);view.item.showModal(view.params.focus);if(typeof view.params.onReady==="function"){view.params.onReady();}}}});}
2248else if(view.params.link_table==="spiritbrands"){dg.cbApi.post('spiritbrand',{id:view.params.link_id},function(r){if(r.AJAXstatus!=="ok"){dg.cbFatalError({'_trigger':"__cocktailBuilderViewItemManageModal `spiritbrand` AJAX error",});}
2249else{if(r.AJAXresponse.status!=="ok"){dg.cbFatalError({'_trigger':"__cocktailBuilderViewItemManageModal `spiritbrand` API response error",});}
2250else if(!r.AJAXresponse.response){dg.cbFatalError({'_trigger':"__cocktailBuilderViewItemManageModal `spiritbrand` no results found",});}
2251else{var bws=r.AJAXresponse.response;bws.from_diffords_guide=1;bws.onUpdateNotes=function(r){$("#cb-present-notes-container").removeClass("hide");$("#cb-present-notes").html(r.AJAXresponse.response);};bws.onModalClose=function(r){location.reload();};view.item=dg.cbView.generate('item',bws);view.item.showModal(view.params.focus);if(typeof view.params.onReady==="function"){view.params.onReady();}}}});}
2252return view;}
2253function __cocktailBuilderViewRecipeSearchIngredient(view){view.el=view.newComponent('el','DIV');view.el.className="cb-list-item cb-list-item--search-item";view.el.dataset.chosenIngredientsKey=view.params.link_table+view.params.link_id;view.el.dataset.displayName=view.params.display_name;if(view.params.ingredient&&view.params.spiritbrand){view.el.dataset.displayName+=" "+(view.params.ingredient.displayName||view.params.ingredient.name);}
2254$(view.el).on("cb.enableadd",enableAdd);var main=view.newComponent('main','DIV');main.className="cb-list-item__main";view.el.appendChild(main);var main_inner=view.newComponent('main_inner','DIV');main_inner.className="cb-list-item__main-inner";main.appendChild(main_inner);if(view.params.image){var image_container=view.newComponent('image_container','DIV');image_container.className="cb-list-item__image-container";main_inner.appendChild(image_container);var image=view.newComponent('image','IMG');image.className="cb-list-item__image";image.src=view.params.image;image.alt=view.params.display_name+" image";image_container.appendChild(image);}
2255var name=view.newComponent('name','DIV');name.className="cb-list-item__name";name.textContent=view.params.display_name;main_inner.appendChild(name);var tags=view.newComponent('tags','DIV');tags.className="cb-tag-group";main_inner.appendChild(tags);if(view.params.ingredient&&view.params.spiritbrand){var type=view.get('ingredient_types')[view.params.ingredient.catId||'default'];tags.appendChild(dg.cbView.generate('tag',{text:view.params.ingredient.displayName||view.params.ingredient.name,classNames:"cb-tag--highlight cb-tag--text-only cb-tag--small"}).el);}
2256if(view.params.present_only){}
2257else if(view.params.remove_button){var remove_button=dg.cbView.generate('button',{icon:"cancel",classNames:"cb-button--danger",onClick:remove});view.pushComponent('remove_button',remove_button,view.component);main.appendChild(remove_button.el);}
2258else if(view.params.ingredient){var add_button=dg.cbView.generate('button',{icon:"plus",onClick:add});view.pushComponent('add_button',add_button,view.component);main.appendChild(add_button.el);}
2259else{view.el.className+=" cb-list-item--disabled";}
2260if(view.params.chosen){disableAdd();}
2261return view;function add(){disableAdd();if(typeof view.params.onAdd==="function"){view.params.onAdd();}}
2262function disableAdd(){$(view.el).addClass("cb-list-item--disabled");$(view.component.add_button.el).prop("disabled",true).addClass("cb-button--off");}
2263function enableAdd(){$(view.el).removeClass("cb-list-item--disabled");
2263$(view.component.add_button.el).prop("disabled",false).removeClass("cb-button--off");}
2264function remove(){$(view.el).remove();if(typeof view.params.onRemove==="function"){view.params.onRemove();}}}
2265function __cocktailBuilderViewItemRecipe(view){var push_to_queue_pause=3000;view.el=view.newComponent('el','DIV');view.el.className="cb-list-item";if(view.params.new){view.el.className+=" cb-list-item--new";}
2266var main=view.newComponent('main','DIV');main.className="cb-list-item__main";view.el.appendChild(main);var main_inner=view.newComponent('main_inner','DIV');main_inner.className="cb-list-item__main-inner";main.appendChild(main_inner);var dg_link=view.newComponent('dg_link','A');dg_link.className='cb-link';dg_link.href=view.params.href;main_inner.appendChild(dg_link);if(view.params.cutout_image){var image_container=view.newComponent('image_container','DIV');image_container.className="cb-list-item__image-container";dg_link.appendChild(image_container);var image=view.newComponent('image','IMG');image.className="cb-list-item__image";image.src=view.params.cutout_image;image.alt=view.params.display_name+" image";image_container.appendChild(image);}
2267var name=view.newComponent('name','DIV');name.className="cb-list-item__name";name.textContent=view.params.name;dg_link.appendChild(name);var tags=view.newComponent('tags','DIV');tags.className="cb-tag-group";main_inner.appendChild(tags);if(view.params.hall_of_fame){tags.appendChild(dg.cbView.generate('tag',{icon:"star-circle",classNames:"cb-tag--text-only cb-tag--hof no-comma",tooltip:'This recipe is in the Cocktail Hall of Fame'}).el);}
2268if(view.params.engagement.rating!==null){var rating_tag=dg.cbView.generate('tag',{classNames:"cb-tag--black cb-tag--text-only no-comma",tooltip:'Your rating'});view.pushComponent('rating_tag',rating_tag,view.component);view.component.rating_tag.el.appendChild(dg.cbView.generate('rating',{rating:view.params.engagement.rating}).el);tags.appendChild(rating_tag.el);}
2269else{var rating_tag=dg.cbView.generate('tag',{classNames:"cb-tag--inactive cb-tag--text-only no-comma",tooltip:'Our rating'});view.pushComponent('rating_tag',rating_tag,view.component);if(view.params.rating>1){view.component.rating_tag.el.appendChild(dg.cbView.generate('rating',{rating:view.params.rating}).el);tags.appendChild(rating_tag.el);}}
2270var favourite_tag=dg.cbView.generate('tag',{icon:"heart-full",classNames:"cb-tag--favourite cb-tag--text-only no-comma favourite-tag"});view.pushComponent('favourite_tag',favourite_tag,view.component);if(view.params.engagement.favourite){tags.appendChild(view.component.favourite_tag.el);}
2271var wish_list_tag=dg.cbView.generate('tag',{icon:"wish-list",classNames:"cb-tag--black cb-tag--text-only no-comma wish-list-tag"});view.pushComponent('wish_list_tag',wish_list_tag,view.component);if(view.params.engagement&&view.params.engagement.wish_list=='yes'){tags.appendChild(view.component.wish_list_tag.el);}
2272var tried_text=null;if(view.params.engagement.liked){tried_text='Tried & Liked';}
2273else if(view.params.engagement.must_try){tried_text='Must Try';}
2274else if(view.params.engagement.disliked){tried_text="Tried & Didn't Like";}
2275var tried_tag=dg.cbView.generate('tag',{classNames:"cb-tag--text-only no-comma tried-tag alt-font--natural",text:tried_text});view.pushComponent('tried_tag',tried_tag,view.component);if(tried_text!==null){tags.appendChild(view.component.tried_tag.el);}
2276if(view.params.user_generated){tags.appendChild(dg.cbView.generate('tag',{text:'By Discerning Drinker',classNames:"cb-tag--primary cb-tag--text-only text-normal"}).el);}
2277if(!dg.logged_in){var personalise_link=document.createElement("A");personalise_link.className="cb-list-item__toggle-view cb-button";personalise_link.textContent="Personalise";personalise_link.href="/builder/home?return="+dg.uri;main.appendChild(personalise_link);}
2278else{main.appendChild(dg.cbView.generate('button',{text:"Personalise",id:'cb-js-recipe-manage-'+view.params.id,classNames:"cb-list-item__toggle-view",onClick:showMore}).el);}
2279view.showModal=showMore;return view;function showMore(focus){generateModal();if(!view.component.more_details){var container=view.newComponent('more_details','DIV');container.className="grid-x grid-margin-x grid-margin-y";
2279var cell=document.createElement("DIV");cell.className="cell divide-bottom-medium divide-bottom-large no-border";container.appendChild(cell);var grid=document.createElement("DIV");grid.className="grid-x grid-margin-x grid-margin-y";cell.appendChild(grid);if(view.params.from_diffords_guide){var cell=document.createElement("A");cell.href='/builder/recipes';}
2280else{var cell=document.createElement("DIV");}
2281cell.className="cell auto";cell.appendChild(dg.cbView.generate('logo-with-dg',{classNames:'cb-modal__logo'}).el);grid.appendChild(cell);var cell=document.createElement("DIV");cell.className="cell shrink";cell.appendChild(dg.cbView.generate('button',{'text':"Close",'icon':"cancel",'classNames':"cb-button--small",'onClick':closeModal}).el);grid.appendChild(cell);var cell=document.createElement("DIV");cell.className="cell small-12 medium-4 divide-bottom-small no-border show-for-medium";container.appendChild(cell);var lhs_grid=view.newComponent("lhs_grid","DIV");lhs_grid.className="grid-x grid-margin-x grid-margin-y show-for-medium";cell.appendChild(lhs_grid);var cell=document.createElement("DIV");cell.className="cell pad-top";var title=document.createElement("H1");title.className="cb-modal__title";title.textContent=view.params.name;cell.appendChild(title);grid.appendChild(cell);if(view.component.image){var cell=document.createElement("DIV");cell.className="cell text-center show-for-medium pad-bottom";lhs_grid.appendChild(cell);var image=document.createElement("IMG");image.className="cb-modal__item-image";image.src=view.component.image.src;image.alt=view.component.image.alt;cell.appendChild(image);}
2282if(view.params.rating){var cell=document.createElement("DIV");cell.className="cell";cell.appendChild(dg.cbView.generate('rating',{rating:view.params.rating,heading:"Difford's Guide rating"}).el);lhs_grid.appendChild(cell);}
2283var cell=document.createElement("DIV");cell.className="cell";view.pushComponent('your_rating_container',cell,view.component);if(view.params.engagement&&view.params.engagement.rating){view.component.your_rating_container.appendChild(dg.cbView.generate('rating',{rating:view.params.engagement.rating,heading:"Your rating"}).el);lhs_grid.appendChild(view.component.your_rating_container);}
2284if(view.params.engagement.comments_count>0){var cell=view.newComponent('comments_container','DIV');cell.className="cell";var comment_heading=document.createElement("DIV");comment_heading.className="cell text-xxsmall alt-font alt-font--spaced text-grey flex-container";comment_heading.appendChild(dg.cbView.generate('icon',{graphic:'chat',label:'You have commented'}).el);cell.appendChild(comment_heading);var link=document.createElement("A");link.className="cb-modal__link cb-link";link.href=view.params.href+"#comments";link.innerHTML=String(view.params.engagement.comments_count)+" comment";if(view.params.engagement.comments_count>1){link.innerHTML+="s";}
2285if(view.params.from_diffords_guide){link.addEventListener('click',closeModal);}
2286cell.appendChild(link);lhs_grid.appendChild(cell);}
2287var cell=document.createElement("DIV");cell.className="cell auto";container.appendChild(cell);var grid=document.createElement("DIV");grid.className="align-justify flex-container flex-dir-column fill-height";cell.appendChild(grid);if(view.params.user_created_this_cocktail){var cell=document.createElement("DIV");cell.className="cell pad-bottom";grid.appendChild(cell);var edit_grid=document.createElement("DIV");edit_grid.className="grid-x grid-margin-x grid-margin-y align-middle";cell.appendChild(edit_grid);var cell=view.newComponent('add_button_container','DIV');cell.className="cell small-12 medium-6";var edit_button=dg.cbView.generate('button',{text:"Edit this recipe",icon:"edit",id:'cb-js-edit-'+view.params.id,href:'/builder/your-recipe?id='+view.params.id}).el;view.pushComponent('edit_button',add_button,view.component);cell.appendChild(edit_button);edit_grid.appendChild(cell);var cell=view.newComponent('edit_status_container','DIV');cell.className="cell small-12 medium-6";var status=dg.cbView.generate('select',{no_validation:1,value:view.params.is_public,options:[{value:"no",text:'Private'},{value:"yes",text:'Public'}],label:"Status",id:"cb-js-status-"+view.params.id,onChange:updateStatus});view.pushComponent('status',status,view.component);cell.appendChild(status.el);edit_grid.appendChild(cell);}
2288else{var cell=view.newComponent('add_button_container','DIV');
2288cell.className="cell pad-bottom";var add_button=dg.cbView.generate('button',{text:"Add your own version",icon:"cocktails-submitted",id:'cb-js-item-add-'+view.params.id,href:'/builder/recipes/add?vid='+view.params.id}).el;view.pushComponent('add_button',add_button,view.component);cell.appendChild(add_button);grid.appendChild(cell);}
2289if(view.params.premium_enabled===true&&view.params.premium&&view.params.premium.collections&&view.params.premium.collections.length>0){var cell=view.newComponent('add_to_collection_button_container','DIV');cell.className="pad-bottom";var add_button=dg.cbView.generate('button',{text:"Add to collection",icon:"collections",id:'cb-js-item-add-to-collection-'+view.params.id,onClick:function(){$("#js-item-modal-collection-list-"+view.params.id).toggleClass('hide');}}).el;view.pushComponent('add_to_collection_button',add_button,view.component);cell.appendChild(add_button);grid.appendChild(cell);var collections_grid_outer=document.createElement('DIV');collections_grid_outer.id="js-item-modal-collection-list-"+view.params.id;collections_grid_outer.className="grid-x grid-margin-y hide";cell.appendChild(collections_grid_outer);var cell=document.createElement('DIV');cell.className="cell pad-y";collections_grid_outer.appendChild(cell);var collections_grid=document.createElement('DIV');collections_grid.className="grid-x grid-margin-y grid-margin-x";cell.appendChild(collections_grid);view.params.premium.collections.forEach(function(c){var cell=document.createElement('DIV');cell.className="cell large-6 small-12";collections_grid.appendChild(cell);var checkbox=dg.cbView.generate('checkbox',{no_validation:1,checked:c.has_recipe,label:c.name,id:"cb-js-collection-"+c.id_encoded,onChange:function(){if(this.checked){addToCollection(c.id_encoded);}
2290else{removeFromCollection(c.id_encoded);}}});view.pushComponent('collection_check_'+c.id_encoded,checkbox,view.component);cell.appendChild(checkbox.el);});}
2291if(!view.params.from_diffords_guide){var cell=document.createElement("DIV");cell.className="cell pad-y flex-container justify-center-small";grid.appendChild(cell);var view_more=view.newComponent('view_more','A');view_more.href=view.params.href;view_more.className="cb-link";view_more.textContent="View Recipe";cell.appendChild(view_more);}
2292var cell=document.createElement("DIV");cell.className="cell pad-y";grid.appendChild(cell);var controls=document.createElement("DIV");controls.className="grid-x grid-margin-x grid-margin-y";cell.append(controls);var cell=document.createElement("DIV");cell.className="cell medium-6";controls.appendChild(cell);var checkbox=dg.cbView.generate('checkbox',{no_validation:1,checked:view.params.engagement.favourite,label:"Favourite",id:"cb-js-favourite-"+view.params.id,icon:"heart-full",onChange:favourite});view.pushComponent('favourite',checkbox,view.component);cell.appendChild(checkbox.el);var cell=document.createElement("DIV");cell.className="cell medium-6";var checkbox=dg.cbView.generate('checkbox',{no_validation:1,checked:view.params.engagement&&view.params.engagement.wish_list=='yes',label:"Wish List",icon:"wish-list",id:"cb-js-wish-list-"+view.params.id,onChange:wishList});view.pushComponent('wish_list',checkbox,view.component);cell.appendChild(checkbox.el);controls.appendChild(cell);var cell=document.createElement("DIV");cell.className="cell medium-6";var rating=dg.cbView.generate('select',{label:"Your rating",no_validation:1,value:view.params.engagement.rating,options:[{value:"0",text:'Unrated'},{value:"5.5",text:'5+&nbsp; &nbsp; ─ &nbsp; Outstanding'},{value:"5",text:'5&nbsp;&nbsp;&nbsp; &nbsp; ─ &nbsp; Exceptional'},{value:"4.5",text:'4.5 &nbsp; ─ &nbsp; Excellent'},{value:"4",text:'4&nbsp;&nbsp;&nbsp; &nbsp; ─ &nbsp; Recommended'},{value:"3.5",text:'3.5 &nbsp; ─ &nbsp; Commended'},{value:"3",text:'3&nbsp;&nbsp;&nbsp; &nbsp; ─ &nbsp; Mediocre'},{value:"2.5",text:'2.5 &nbsp; ─ &nbsp; Disappointing'},{value:"2",text:'2&nbsp;&nbsp;&nbsp; &nbsp; ─ &nbsp; Pretty Awful'},{value:"1.5",text:'1.5 &nbsp; ─ &nbsp; Shameful'},{value:"1",text:'1&nbsp;&nbsp;&nbsp; &nbsp; ─ &nbsp; Disgusting'}],id:"cb-js-rate-"+view.params.id,onChange:rate});view.pushComponent('rating',rating,view.component);cell.appendChild(rating.el);controls.appendChild(cell);
2292var cell=document.createElement("DIV");cell.className="cell medium-6";var tried=dg.cbView.generate('select',{no_validation:1,value:view.params.engagement.tried_value,options:[{value:"not_tried",text:'Not Tried'},{value:"must_try",text:'Must Try'},{value:"liked",text:'Tried & Liked'},{value:"disliked",text:"Tried & Didn't Like"}],label:"Your thoughts",id:"cb-js-tried-"+view.params.id,onChange:updateTried});view.pushComponent('tried',tried,view.component);cell.appendChild(tried.el);controls.appendChild(cell);var cell=document.createElement("DIV");cell.className="cell";var disable_notes=false;if(view.params.premium_enabled===true){if('premium'in view.params===false||view.params.premium===false){disable_notes=true;var premium_label_container=document.createElement("DIV");premium_label_container.className="grid-margin-x grid-margin-y grid-padding-y grid-x align-middle";var premium_icon_container=document.createElement("DIV");premium_icon_container.className="cell shrink text-center";var premium_icon=document.createElement("img");premium_icon.style="height: 1.5rem";premium_icon.src="https://assets.diffordsguide.com/svg/logo/premium-jewel-tight.svg";premium_icon_container.appendChild(premium_icon);premium_label_container.appendChild(premium_icon_container);var premium_label_text=document.createElement("div");premium_label_text.innerHTML="Add your own notes about this cocktail with <a href='/membership/premium' class='cb-link'>Difford's Guide Premium</a>";premium_label_text.className="cell small-10 text-small pad-top-half"
2293premium_label_container.appendChild(premium_label_text);cell.appendChild(premium_label_container);}}
2294var notes=dg.cbView.generate('textarea',{label:"Your notes (not viewable by others)",value:view.params.engagement.notes_safe_edit,placeholder:"Your personal notes on this item",id:"cb-js-notes-"+view.params.id,button:{type:'button',text:'SAVE',id:"cb-js-notes-save-"+view.params.id,onClick:updateNotes},disabled:disable_notes,no_validation:1,onInput:dg.cbApi.resetAutoQueueTimer,className:disable_notes?"cb-form-control--disabled":""});view.pushComponent('notes',notes,view.component);notes.el.addEventListener('change',function(){$(view.component.notes.component.button).removeClass("hide");});cell.appendChild(notes.el);controls.appendChild(cell);var toggle_help_container=document.createElement("div");toggle_help_container.className="premium-heading-about margin-top-xxlight";var toggle_help_href=document.createElement("span");toggle_help_href.id='toggle-personal-notes';toggle_help_href.className='cb-link';toggle_help_href.setAttribute('data-toggle-target','toggle-personal-notes-paragraph');toggle_help_href.textContent='Your Personal Notes';toggle_help_container.appendChild(dg.cbView.generate('icon',{graphic:'info-circle',tooltip:'info'}).el);toggle_help_container.appendChild(toggle_help_href);var pn_paragraph_container=document.createElement('div');pn_paragraph_container.className='cell hide text-small';pn_paragraph_container.id='toggle-personal-notes-paragraph';var pn_paragraph1=document.createElement('p');pn_paragraph1.innerHTML='Premium members can add notes to cocktails and brands (beers, wines & spirits) which are only viewable to them whenever they return to that cocktail or brand.';pn_paragraph_container.appendChild(pn_paragraph1);var pn_paragraph2=document.createElement('p');pn_paragraph2.textContent='Anyone who made such a personal note before the introduction of Premium (on 27.Aug.24) will still be able to read their existing notes but will not be able to make new notes. Members who have not joined Premium can still leave public comments, and such comments can be useful for other members of the community, so we are keen to encourage their use. However, private notes can only be seen by you, and so are only of use to individual members; hence, private notes are one of the many benefits we reserve for Premium members.';pn_paragraph_container.appendChild(pn_paragraph2);cell.appendChild(toggle_help_container);cell.appendChild(pn_paragraph_container);toggleNotesParagraph(toggle_help_href,pn_paragraph_container);
2294if(!view.params.from_diffords_guide){var cell=document.createElement("DIV");cell.className="cell pad-top flex-container justify-center-small";grid.appendChild(cell);var view_more=view.newComponent('view_more','A');view_more.href=view.params.href;view_more.className="cb-link";view_more.textContent="View Recipe";cell.appendChild(view_more);}
2295var cell=document.createElement("DIV");cell.className="cell pad-top flex-container justify-center-small";cell.appendChild(dg.cbView.generate('button',{text:"Close",icon:"cancel",classNames:"cb-button--small",onClick:closeModal}).el);container.appendChild(cell);var cell=document.createElement("DIV");cell.className="cell small-12 medium-4 divide-bottom-small no-border show-for-medium";grid.appendChild(cell);}
2296view.component.modal.appendChild(view.component.more_details);openModal();if(focus instanceof Event&&view.params.focus){focus=view.params.focus;}
2297if(focus==="favourite"){focusElement(view.component.favourite.el);}
2298else if(focus==="rate"){focusElement(view.component.rating.el);}
2299else if(focus==="notes"){focusElement(view.component.notes.el);}
2300else if(focus==="wish-list"){focusElement(view.component.wish_list.el);}
2301else if(focus==="preferred"){focusElement(view.component.ingredient_container);}
2302else if(focus==="tried"){focusElement(view.component.tried.el);}
2303else if(focus==="rating"){focusElement(view.component.rating.el);}
2304else{$(view.component.modal).scrollTop(0);}}
2305function focusElement(el){view.focus=el;$(view.component.modal).scrollTop(0).animate({scrollTop:$(el).offset().top},2000);$(view.focus).addClass("cb-focus-element");}
2306function updateStatus(){$(view.component.status.el).addClass("cb-form-control--disabled");$(view.component.status.component.input).prop("disabled",1);view.component.status.presentSaving();dg.cbApi.pushToQueue('recipe-edit-status',{link_id:view.params.id,link_table:'cocktails',is_public:view.component.status.component.input.value},function(r){if(typeof view.params.onStatus==="function"){view.params.onStatus(r);}
2307view.component.status.presentSaved();dg.cbTestHook("cb-js-update-status");},push_to_queue_pause);}
2308function favourite(){view.component.favourite.presentSaving();dg.cbApi.pushToQueue('favourite',{link_id:view.params.id,link_table:'cocktails',add:view.component.favourite.component.input.checked?'yes':'no'},function(r){view.params.engagement.favourite=r.AJAXresponse.response.favourite;if(view.params.engagement.favourite==="yes"){view.component.tags.appendChild(view.component.favourite_tag.el);}
2309else{$(view.component.tags).find(".favourite-tag").remove();}
2310if(typeof view.params.onFavourite==="function"){view.params.onFavourite(r);}
2311view.component.favourite.presentSaved();dg.cbTestHook("cb-js-update-favourite");},push_to_queue_pause);}
2312function setPreferred(){var $select=$(this);$select.trigger("cb.presentSaving");var params={cocktail_id:parseInt(view.params.id),ingredient_id:$(this).data("ingredient-id"),spiritbrand_id:$(this).val()?parseInt($(this).val()):null};$select.prop("disabled",true);dg.cbApi.pushToQueue('preferred-ingredient',params,function(r){$(this).prop("disabled",false);if(typeof view.params.onSetPreferred==="function"){view.params.onSetPreferred(r);}
2313$select.trigger("cb.presentSaved").prop("disabled",false);var $icon_cell=$select.parents(".cell:first").prev().prev();$icon_cell.empty().append(dg.cbView.generate('icon',{graphic:(parseInt($select.val())>0)?'preferred-active':"preferred"}).el);dg.cbTestHook("cb-js-update-preferred-ingredient");},push_to_queue_pause);}
2314function rate(){if(!view.component.rating.component.input.value)return;view.component.rating.presentSaving();$(view.component.rating.component.input).find("option").each(function(){if(!$(this).val())$(this).remove();});view.component.rating.el.className+=" cb-form-control--disabled";view.component.rating.component.input.disabled=true;dg.cbApi.pushToQueue('rate',{link_id:view.params.id,section:'cocktail',rating:view.component.rating.component.input.value},function(r){$(view.component.rating.el).removeClass("cb-form-control--disabled");view.component.rating.component.input.disabled=false;if(r.AJAXresponse.status=='error'){view.component.rating.presentReset();$(view.component.rating.component.input).trigger("pusherror",r.AJAXresponse.response.reason)}
2315else{$(view.component.rating.component.input).trigger("hideerror");view.params.engagement.rating=r.AJAXresponse.response.rating;view.component.rating_tag.el.innerHTML="";view.component.rating_tag.el.appendChild(dg.cbView.generate('rating',{rating:view.params.engagement.rating}).el);view.component.tags.appendChild(rating_tag.el);view.component.your_rating_container.innerHTML="";view.component.your_rating_container.appendChild(dg.cbView.generate('rating',{rating:view.params.engagement.rating,heading:"Your rating"}).el);view.component.lhs_grid.insertBefore(view.component.your_rating_container,view.component.view_on_dg_container);if(typeof view.params.onRate==="function"){view.params.onRate(r);}
2316view.component.rating.presentSaved();dg.cbTestHook("cb-js-update-rating");}},push_to_queue_pause);}
2317function wishList(){view.component.wish_list.presentSaving();dg.cbApi.pushToQueue('wish-list',{link_id:view.params.id,link_table:'cocktails',add:view.component.wish_list.component.input.checked?'yes':'no'},function(r){view.params.engagement.wish_list=r.AJAXresponse.response.wish_list;if(view.params.engagement.wish_list==="yes"){view.component.tags.appendChild(view.component.wish_list_tag.el);}
2318else{$(view.component.tags).find(".wish-list-tag").remove();}
2319if(typeof view.params.onWishList==="function"){view.params.onWishList(r);}
2320view.component.wish_list.presentSaved();dg.cbTestHook("cb-js-update-wish-list");},push_to_queue_pause);}
2321function updateTried(){view.component.tried.presentSaving();dg.cbApi.pushToQueue('tried',{link_id:view.params.id,link_table:'cocktails',tried:view.component.tried.component.input.value},function(r){if(view.params.engagement.tried_value===null){view.component.tags.appendChild(view.component.tried_tag.el);}
2322var tried_text=null;if(r.AJAXresponse.response.tried==="liked"){tried_text='Tried & Liked';}
2323else if(r.AJAXresponse.response.tried==="must_try"){tried_text='Must Try';}
2324else if(r.AJAXresponse.response.tried==="disliked"){tried_text="Tried & Didn't Like";}
2325view.component.tried_tag.el.textContent=tried_text;if(typeof view.params.onUpdateTried==="function"){view.params.onUpdateTried(r);}
2326view.component.tried.presentSaved();dg.cbTestHook("cb-js-update-tried");},push_to_queue_pause);}
2327function updateNotes(){view.component.notes.presentSaving();view.component.notes.component.button.disabled=true;$(view.component.notes.component.button).addClass("cb-button--off hide");dg.cbApi.terminateAutoQueue();dg.cbApi.pushToQueue('notes',{link_id:view.params.id,link_table:'cocktails',notes:view.component.notes.component.input.value.trim()},function(r){if(typeof view.params.onUpdateNotes==="function"){view.params.onUpdateNotes(r);}
2328setTimeout(function(){view.component.notes.presentSaved();view.component.notes.component.button.disabled=false;$(view.component.notes.component.button).removeClass("cb-button--off");},push_to_queue_pause);dg.cbTestHook("cb-js-update-notes");});dg.cbApi.executeQueue();}
2329function deleteItem(){view.component.modal.className+=" cb-modal--disabled";view.component.delete_button_container.innerHTML="";view.component.delete_button_container.className="flex-container align-center-small pad-top";view.component.delete_button_container.appendChild(dg.cbView.generate('icon',{graphic:'loading',size:'xlarge'}).el);var params={id:view.params.id};
2329if(view.params.pre_populated_item){params={pre_populated_iid:view.params.ingredient.id};}
2330dg.cbApi.post('delete-item',params,function(){setTimeout(function(){$(view.el).remove();closeModal();if(typeof view.params.onDelete==="function"){view.params.onDelete();}},push_to_queue_pause);});}
2331function generateModal(){if(!view.modal){var modal=view.newComponent('modal','DIV');modal.className="cb-js-delete-on-pagination";modal.dataset.closeOnClick=false;view.modal=new Foundation.Reveal($(modal));view.modal.$overlay.addClass("cb-modal-overlay cb-js-delete-on-pagination");$(modal).on("closed.zf.reveal",onModalClose);}
2332view.component.modal.className="reveal cb-modal cb-fadein large";view.modal.innerHTML="";}
2333function openModal(){$(view.component.modal).foundation("open");dg.cbTestHook("cb-js-modal-opened");}
2334function closeModal(){$(view.component.modal).foundation("close");}
2335function onModalClose(){if(view.focus){$(view.focus).removeClass("cb-focus-element");}
2336if(dg.cbApi.hasQueue()){dg.cbApi.terminateAutoQueue();dg.cbApi.executeQueue(function(){if(typeof view.params.onModalClose==="function"){view.params.onModalClose();}});}
2337else if(typeof view.params.onModalClose==="function"){view.params.onModalClose();}}
2338function toggleNotesParagraph(el1,el2){el1.addEventListener('click',function(){el2.classList.toggle('hide');});}
2339function addToCollection(collection_id){view.component['collection_check_'+collection_id].presentSaving();dg.cbApi.pushToQueue('collection',{id:collection_id,link_id:view.params.id,link_table:'cocktails',add_item:1,},function(r){if(r.AJAXstatus!=="ok"){dg.cbFatalError({'_trigger':"item-recipe addItemToCollection() AJAX error",});}
2340else{if(r.AJAXresponse.status!=="ok"){dg.cbFatalError({'_trigger':"item-recipe addItemToCollection() API response error",});}
2341else{view.component['collection_check_'+collection_id].presentSaved();}}},(view.params.push_to_queue_interval||0));}
2342function removeFromCollection(collection_id){view.component['collection_check_'+collection_id].presentSaving();dg.cbApi.post('collection',{id:collection_id,link_id:view.params.id,link_table:'cocktails',delete_item:true},function(){view.component['collection_check_'+collection_id].presentSaved();});}}
2343function __cocktailBuilderViewItemSearch(view){var push_to_queue_pause=3000;view.el=view.newComponent('el','DIV');view.el.className="cb-list-item";if(view.params.new){view.el.className+=" cb-list-item--new";}
2344var main=view.newComponent('main','DIV');main.className="cb-list-item__main";view.el.appendChild(main);var main_inner=view.newComponent('main_inner','DIV');main_inner.className="cb-list-item__main-inner";main.appendChild(main_inner);var logo=view.newComponent('logo','DIV');logo.className="pad cb-text-secondary";main_inner.appendChild(logo);var icon=dg.cbView.generate('icon',{graphic:'cocktails',size:'xxlarge'});logo.appendChild(icon.el);var name=view.newComponent('name','A');name.href=view.params.href;name.className="cb-list-item__name cb-link";name.textContent=view.params.name;main_inner.appendChild(name);var tags=view.newComponent('tags','DIV');tags.className="cb-tag-group";main_inner.appendChild(tags);if(view.params.param.use_all_ingredients){tags.appendChild(dg.cbView.generate('tag',{icon:"all-ingredients",text:"All Ingredients",classNames:"cb-tag--text-only cb-tag--active no-comma"}).el);}
2345else{tags.appendChild(dg.cbView.generate('tag',{icon:"all-ingredients",text:view.params.ingredients.length+" Ingredient"+(view.params.ingredients.length==1?'':'s'),classNames:"cb-tag--text-only no-comma"}).el);}
2346main.appendChild(dg.cbView.generate('button',{href:view.params.edit_href,text:"Edit",icon:"edit",id:'cb-js-recipe-manage-'+view.params.id}).el);return view;}
2347function __cocktailBuilderViewItemUserRecipe(view){view.el=view.newComponent('el','DIV');view.el.className="cb-list-item";if(view.params.new){view.el.className+=" cb-list-item--new";}
2348var main=view.newComponent('main','DIV');main.className="cb-list-item__main";view.el.appendChild(main);var main_inner=view.newComponent('main_inner','DIV');main_inner.className="cb-list-item__main-inner";main.appendChild(main_inner);var dg_link=view.newComponent('dg_link','A');dg_link.className='cb-link';dg_link.href=view.params.present.href;main_inner.appendChild(dg_link);if(view.params.present.cutout_image){var image_container=view.newComponent('image_container','DIV');
2348image_container.className="cb-list-item__image-container";dg_link.appendChild(image_container);var image=view.newComponent('image','IMG');image.className="cb-list-item__image";image.src=view.params.present.cutout_image;image.alt=view.params.present.name+" image";image_container.appendChild(image);}
2349var name=view.newComponent('name','DIV');name.className="cb-list-item__name";name.textContent=view.params.present.name;dg_link.appendChild(name);var tags=view.newComponent('tags','DIV');tags.className="cb-tag-group";main_inner.appendChild(tags);if(view.params.is_public==="yes"){tags.appendChild(dg.cbView.generate('tag',{text:"Public",icon:"public",classNames:"cb-tag--text-only cb-tag--highlight cb-tag--small no-comma"}).el);}
2350else{tags.appendChild(dg.cbView.generate('tag',{text:"Private",icon:'private',classNames:"cb-tag--text-only cb-tag--inactive cb-tag--small no-comma"}).el);}
2351if(view.params.add_to_collection_id&&view.params.in_collection==1){view.el.classList.add("cb-list-item--in-your-ingredients");tags.appendChild(dg.cbView.generate('tag',{icon:'check-circle',text:'In Your Collection',classNames:"cb-tag--primary cb-tag--text-only text-normal"}).el);}
2352if(view.params.add_to_collection_id){if(view.params.in_collection!=1){var add_button=dg.cbView.generate('button',{text:"Add",icon:'plus',id:'cb-js-item-add-'+view.params.id,onClick:addItemToCollection}).el;view.pushComponent('add_button',add_button,view.component);main.appendChild(add_button);}}
2353else{main.appendChild(dg.cbView.generate('button',{text:"Edit",icon:"edit",classNames:"cb-list-item__toggle-view",onClick:function(){window.location=view.params.edit_href;}}).el);}
2354return view;function addItemToCollection(){if(view.component.modal)closeModal();view.el.className+=" cb-list-item--loading";view.component.add_button.disabled=true;view.component.add_button.innerHTML="";view.component.add_button.appendChild(dg.cbView.generate('icon',{'graphic':'loading'}).el);if(typeof view.params.beforeAdd==="function"){view.params.beforeAdd();}
2355dg.cbApi.pushToQueue('collection',{id:view.params.add_to_collection_id,link_id:view.params.id,link_table:'cocktails',add_item:1,},function(r){if(r.AJAXstatus!=="ok"){dg.cbFatalError({'_trigger':"item-user-recipe addItemToCollection() AJAX error",});}
2356else{if(r.AJAXresponse.status!=="ok"){dg.cbFatalError({'_trigger':"item-user-recipe addItemToCollection() API response error",});}
2357else{view.component.main.insertBefore(dg.cbView.generate('tag',{icon:"check-circle",text:'Item added',classNames:"cb-tag--primary cb-tag--text-only"}).el,view.component.add_button);view.component.add_button.remove();view.el.classList.remove("cb-list-item--loading");view.el.classList.add("cb-list-item--in-your-ingredients");dg.cbTestHook("cb-js-item-added-"+view.params.id);if(typeof view.params.afterAdd==="function"){view.params.afterAdd(r);}}}},(view.params.push_to_queue_interval||0));}
2358function removeFromCollection(){if(typeof view.params.onBeforeDelete==="function"){view.params.onBeforeDelete();}
2359var params={id:view.params.collection_item.collection_id,delete_item_id:view.params.collection_item.id,};dg.cbApi.post('collection',params,function(){$(view.el).remove();if(typeof view.params.onDelete==="function"){view.params.onDelete();}});}}
2360function __cocktailBuilderViewItem(view){var push_to_queue_pause=3000;view.el=view.newComponent('el','DIV');view.el.className="cb-list-item";if(view.params.new){view.el.className+=" cb-list-item--new";}
2361var main=view.newComponent('main','DIV');main.className="cb-list-item__main";view.el.appendChild(main);var main_inner=view.newComponent('main_inner','DIV');main_inner.className="cb-list-item__main-inner";main.appendChild(main_inner);if(view.params.spiritbrand&&view.params.spiritbrand.href&&view.params.add_ingredient==undefined){var dg_link=view.newComponent('dg_link','A');dg_link.className='cb-link';dg_link.href=view.params.spiritbrand.href;}
2362else{var dg_link=view.newComponent('dg_link','DIV');dg_link.className='display-inline-block';}
2363main_inner.appendChild(dg_link);if(view.params.image){var image_container=view.newComponent('image_container','DIV');
2363image_container.className="cb-list-item__image-container";dg_link.appendChild(image_container);var image=view.newComponent('image','IMG');image.className="cb-list-item__image";image.src=view.params.image;image.alt=view.params.display_name+" image";image_container.appendChild(image);}
2364var name=view.newComponent('name','DIV');name.className="cb-list-item__name";name.textContent=view.params.display_name;dg_link.appendChild(name);var tags=view.newComponent('tags','DIV');tags.className="cb-tag-group";main_inner.appendChild(tags);if(view.params.ingredient){var type=view.get('ingredient_types')[view.params.ingredient.catId||'default']||{};if(view.params.ingredient.gradeId=="K"){tags.appendChild(dg.cbView.generate('tag',{icon:["key",type.icon],text:view.params.spiritbrand?(view.params.ingredient.displayName||view.params.ingredient.name):null,classNames:"cb-tag--text-only text-normal"+(view.params.spiritbrand?'':' no-comma')}).el);}
2365else if(view.params.ingredient.gradeId=="P"){tags.appendChild(dg.cbView.generate('tag',{icon:["strainer",(type.icon||'')],text:view.params.spiritbrand?(view.params.ingredient.displayName||view.params.ingredient.name):null,classNames:"cb-tag--text-only text-normal"+(view.params.spiritbrand?'':' no-comma')}).el);}
2366else if(view.params.spiritbrand&&view.params.ingredient.id!=view.get('unknown_ingredient_id')){tags.appendChild(dg.cbView.generate('tag',{icon:type.icon||'',text:view.params.ingredient.displayName||view.params.ingredient.name,classNames:"cb-tag--active cb-tag--text-only text-normal"}).el);}
2367else if(!view.params.pre_populated_item&&!view.params.add_item&&!view.params.add_to_collection_id&&view.params.ingredient.id!=view.get('unknown_ingredient_id')){tags.appendChild(dg.cbView.generate('tag',{icon:type.icon||'',classNames:"cb-tag--active cb-tag--text-only no-comma"}).el);}
2368if(parseInt(view.params.ingredient.cocktail_count)>0){var difference=0;if(parseInt(view.params.ingredient.cocktail_count_with_alt)>0){difference=parseInt(view.params.ingredient.cocktail_count_with_alt);difference-=parseInt(view.params.ingredient.cocktail_count);}
2369var recipes_href=view.params.is_preview?'#':view.params.recipes_href;if(view.params.add_ingredient){recipes_href=null;}
2370tags.appendChild(dg.cbView.generate('tag',{icon:'cocktails',href:recipes_href,text:parseInt(view.params.ingredient.cocktail_count).toLocaleString()+" Recipes",classNames:"cb-tag--text-only text-normal"+(difference==0?'':' no-comma')}).el);if(difference>0){difference=difference.toLocaleString();tags.appendChild(dg.cbView.generate('tag',{text:"(+"+difference+")",tooltip:"There are an additional "+difference+" recipes available when using this ingredient as an alternative",classNames:"cb-tag--text-only cb-tag--grey cb-tag--small"}).el);}}
2371var preferred_tag=dg.cbView.generate('tag',{icon:"preferred-active",classNames:"cb-tag--text-only no-comma preferred-tag"});view.pushComponent('preferred_tag',preferred_tag,view.component);if(view.params.spiritbrand&&view.params.spiritbrand.preferred===true){tags.appendChild(view.component.preferred_tag.el);}
2372if(view.params.spiritbrand&&view.params.spiritbrand.preferred_recipes&&view.params.spiritbrand.preferred_recipes.length>0){tags.appendChild(dg.cbView.generate('tag',{icon:"preferred",classNames:"cb-tag--text-only no-comma preferred-tag"}).el);}}
2373if(view.params.user_generated){var your_ingredient_tag=dg.cbView.generate('tag',{text:"Your ingredient",classNames:"cb-tag--highlight text-normal cb-tag--text-only"}).el;if(!view.params.add_to_collection_id&&!view.params.collection_item&&view.params.add_ingredient==undefined){your_ingredient_tag.appendChild(dg.cbView.generate('button',{text:"edit",classNames:'margin-left-half show-for-large',icon:'edit',href:view.params.spiritbrand.edit_link}).el);}
2374tags.appendChild(your_ingredient_tag);}
2375if(view.params.pre_populated_item){tags.appendChild(dg.cbView.generate('tag',{text:"Pre-populated",classNames:"cb-tag--inactive text-normal cb-tag--text-only"}).el);}
2376if(view.params.add_item&&view.params.in_ingredients==1){view.el.classList.add("cb-list-item--in-your-ingredients");tags.appendChild(dg.cbView.generate('tag',{icon:'check-circle',text:'In Your Ingredients',classNames:"cb-tag cb-tag--cocktail-builder cb-tag--text-only text-normal"}).el);}
2377if(view.params.add_to_collection_id&&view.params.in_collection==1){view.el.classList.add("cb-list-item--in-your-ingredients");tags.appendChild(dg.cbView.generate('tag',{icon:'check-circle',text:'In Your Collection',classNames:"cb-tag cb-tag--cocktail-builder cb-tag--text-only text-normal"}).el);}
2378var favourite_tag=dg.cbView.generate('tag',{icon:"heart-full",classNames:"cb-tag--favourite cb-tag--text-only no-comma favourite-tag"});view.pushComponent('favourite_tag',favourite_tag,view.component);if(view.params.engagement&&view.params.engagement.favourite==="yes"){tags.appendChild(view.component.favourite_tag.el);}
2379var wish_list_tag=dg.cbView.generate('tag',{icon:"wish-list",classNames:"cb-tag--black cb-tag--text-only no-comma wish-list-tag"});view.pushComponent('wish_list_tag',wish_list_tag,view.component);if(view.params.engagement&&view.params.engagement.wish_list==="yes"){tags.appendChild(view.component.wish_list_tag.el);}
2380var rating_tag=dg.cbView.generate('tag',{classNames:"cb-tag--black cb-tag--text-only no-comma"});view.pushComponent('rating_tag',rating_tag,view.component);if(view.params.engagement&&view.params.engagement.rating!==null){view.component.rating_tag.el.appendChild(dg.cbView.generate('rating',{rating:view.params.engagement.rating}).el);tags.appendChild(rating_tag.el);}
2381if(view.params.engagement){var tried_text=null;if(view.params.engagement.tried=="liked"){tried_text='Tried &amp; Liked';}
2382else if(view.params.engagement.tried=="must_try"){tried_text='Must Try';}
2383else if(view.params.engagement.tried=="disliked"){tried_text="Tried &amp; Didn't Like";}
2384var tried_tag=dg.cbView.generate('tag',{classNames:"cb-tag--text-only no-comma tried-tag alt-font--natural",text:tr
2384ied_text});view.pushComponent('tried_tag',tried_tag,view.component);if(tried_text!==null){tags.appendChild(view.component.tried_tag.el);}}
2385if(view.params.in_ingredients!==undefined&&view.params.in_ingredients==false&&view.params.add_item===undefined&&view.params.add_to_collection_id===undefined&&view.params.add_ingredient===undefined){var not_in_ingredients=dg.cbView.generate('tag',{icon:"block",text:"Not in your ingredients",classNames:"cb-tag--small cb-tag--text-only cb-tag--highlight"}).el;not_in_ingredients.style.marginTop="1em";view.pushComponent('not_in_ingredients',not_in_ingredients,view.component);main_inner.appendChild(not_in_ingredients);}
2386if(view.params.add_ingredient){var add_ingredient_button=dg.cbView.generate('button',{text:"Choose",id:'cb-js-choose-ingredient-'+view.params.link_id,});view.pushComponent('add_ingredient_button',add_ingredient_button,view.component);main.appendChild(add_ingredient_button.el);}
2387else{var controls_container=view.newComponent('controls_container','DIV');main.appendChild(controls_container);if(view.params.add_item){if(view.params.in_ingredients!=1){var add_button=dg.cbView.generate('button',{text:"Add",icon:'plus',id:'cb-js-item-add-'+view.params.id,onClick:addItem}).el;view.pushComponent('add_button',add_button,view.component);controls_container.appendChild(add_button);}}
2388else{controls_container.className='grid-x grid-margin-x grid-margin-y align-center justify-right-small';if(!dg.logged_in){var personalise_link=document.createElement("A");personalise_link.className="cell shrink cb-list-item__toggle-view cb-button";personalise_link.textContent="Personalise";personalise_link.href="/builder/home?return="+dg.uri;controls_container.appendChild(personalise_link);}
2389else{controls_container.appendChild(dg.cbView.generate('button',{text:"Personalise",id:'cb-js-item-personalise-'+view.params.link_id,classNames:"cell shrink cb-list-item__toggle-view",onClick:showMore}).el);}
2390if(!view.params.from_diffords_guide&&(view.params.in_ingredients==undefined||view.params.in_ingredients!=false)){controls_container.appendChild(dg.cbView.generate('button',{text:"remove",id:'cb-js-remove-item-'+view.params.link_id,classNames:"cell shrink cb-button--off cb-button--danger cb-button--large-icon",onClick:function(){if(view.params.is_preview)return false;if((dg.ui.ingredient_remove_confirm||0)>=1){deleteItem();}
2391else{view.params.close_modal_on_cancel_delete=1;showMore();confirmDeleteItem();}}}).el);}}}
2392view.showModal=showMore;view.closeModal=closeModal;return view;function showMore(focus){if(view.params.is_preview)return false;generateModal();if(!view.component.more_details){var container=view.newComponent('more_details','DIV');container.className="grid-x grid-margin-x grid-margin-y";var cell=document.createElement("DIV");cell.className="cell divide-bottom-medium divide-bottom-large no-border";container.appendChild(cell);var grid=document.createElement("DIV");grid.className="grid-x grid-margin-x grid-margin-y";cell.appendChild(grid);if(view.params.from_diffords_guide){var cell=document.createElement("A");cell.href='/builder/ingredients';}
2393else{var cell=document.createElement("DIV");}
2394cell.className="cell auto text-black";cell.appendChild(dg.cbView.generate('logo-with-dg',{classNames:'cb-modal__logo'}).el);grid.appendChild(cell);var cell=document.createElement("DIV");cell.className="cell shrink";cell.appendChild(dg.cbView.generate('button',{'text':"Close",'icon':"cancel",'classNames':"cb-button--small",'onClick':closeModal}).el);grid.appendChild(cell);var cell=document.createElement("DIV");cell.className="cell small-12 medium-4 divide-bottom-small no-border";if(!view.params.spiritbrand){cell.className+=" show-for-medium";}
2395container.appendChild(cell);var lhs_grid=view.newComponent("lhs_grid","DIV");lhs_grid.className="grid-x grid-margin-x grid-margin-y";if(!view.params.spiritbrand){lhs_grid.className+=" show-for-medium";}
2396cell.appendChild(lhs_grid);var cell=document.createElement("DIV");cell.className="cell pad-top";var title=document.createElement("H1");title.className="cb-modal__title";title.textContent=view.params.display_name;cell.appendChild(title);grid.appendChild(cell);
2396var cell=document.createElement("DIV");cell.className="cell text-center show-for-medium pad-bottom";lhs_grid.appendChild(cell);var image=document.createElement("IMG");image.className="cb-modal__item-image";image.src=view.component.image.src;image.alt=view.component.image.alt;cell.appendChild(image);if(view.params.spiritbrand){if(view.params.spiritbrand.rating){var cell=document.createElement("DIV");cell.className="cell cb-js-hide-on-confirm-delete";cell.appendChild(dg.cbView.generate('rating',{rating:view.params.spiritbrand.rating,heading:"Difford's Guide rating"}).el);lhs_grid.appendChild(cell);}
2397var cell=document.createElement("DIV");cell.className="cell cb-js-hide-on-confirm-delete";view.pushComponent('your_rating_container',cell,view.component);if(view.params.engagement&&view.params.engagement.rating){view.component.your_rating_container.appendChild(dg.cbView.generate('rating',{rating:view.params.engagement.rating,heading:"Your rating"}).el);lhs_grid.appendChild(view.component.your_rating_container);}
2398if(!view.params.from_diffords_guide&&!view.params.user_generated){var cell=view.newComponent('view_on_dg_container','DIV');cell.className="cell cb-js-hide-on-confirm-delete";var link=document.createElement("A");link.className="cb-modal__link cb-link";link.href=view.params.spiritbrand.href;link.innerHTML="View on Difford's Guide";cell.appendChild(link);lhs_grid.appendChild(cell);}
2399else if(view.params.in_ingredients&&view.params.from_diffords_guide){var cell=view.newComponent('view_on_cb_container','DIV');cell.className="cell";var link=document.createElement("A");link.className="cb-modal__link cb-link";link.href=view.params.cocktail_builder_href;link.innerHTML="View in Cocktail Builder";cell.appendChild(link);lhs_grid.appendChild(cell);}
2400if(view.params.engagement.comments_count>0){var cell=view.newComponent('comments_container','DIV');cell.className="cell";var comment_heading=document.createElement("DIV");comment_heading.className="cell text-xxsmall alt-font alt-font--spaced text-grey flex-container";comment_heading.appendChild(dg.cbView.generate('icon',{graphic:'chat',label:'You have commented'}).el);cell.appendChild(comment_heading);var link=document.createElement("A");link.className="cb-modal__link cb-link";link.href=view.params.spiritbrand.href+"#comments";link.innerHTML=String(view.params.engagement.comments_count)+" comment";if(view.params.engagement.comments_count>1){link.innerHTML+="s";}
2401if(view.params.from_diffords_guide){link.addEventListener('click',closeModal);}
2402cell.appendChild(link);lhs_grid.appendChild(cell);}}
2403var cell=document.createElement("DIV");cell.className="cell auto";container.appendChild(cell);var grid=document.createElement("DIV");grid.className="align-justify flex-container flex-dir-column fill-height";cell.appendChild(grid);if(view.params.user_generated){var cell=view.newComponent('add_button_container','DIV');cell.className="cell pad-bottom";var edit_button=dg.cbView.generate('button',{text:"Edit your ingredient",href:view.params.spiritbrand.edit_link,icon:"edit"}).el;view.pushComponent('edit_button',edit_button,view.component);cell.appendChild(edit_button);grid.appendChild(cell);}
2404else if(view.params.in_ingredients!==undefined&&view.params.in_ingredients==false&&1==2){var cell=view.newComponent('add_button_container','DIV');cell.className="cell pad-bottom";var add_button=dg.cbView.generate('button',{text:"Add to your ingredients",icon:"plus",id:'cb-js-item-add-'+view.params.link_id,onClick:addItemFromModal}).el;view.pushComponent('add_button',add_button,view.component);cell.appendChild(add_button);if('premium'in view.params&&view.params.premium!=false&&view.params.premium.cabinet_count>1){var cabinet_name=document.createElement("DIV");cabinet_name.className="text-small half-pad pad-bottom";cabinet_name.innerHTML="Adding to <strong>"+view.params.premium.active_cabinet_html+"</strong>";cell.appendChild(cabinet_name);}
2405grid.appendChild(cell);}
2406if(view.params.premium_enabled===true&&view.params.premium&&view.params.premium.collections&&view.params.premium.collections.length>0){var cell=view.newComponent('add_to_collection_button_container','DIV');cell.className="pad-bottom";var add_button=dg.cbView.generate('button',{text:"Add to collection",icon:"collections",id:'cb-js-item-ad
2406d-to-collection-'+view.params.id,onClick:function(){$("#js-item-modal-collection-list-"+view.params.id).toggleClass('hide');}}).el;view.pushComponent('add_to_collection_button',add_button,view.component);cell.appendChild(add_button);grid.appendChild(cell);var collections_grid_outer=document.createElement('DIV');collections_grid_outer.id="js-item-modal-collection-list-"+view.params.id;collections_grid_outer.className="grid-x grid-margin-y hide";cell.appendChild(collections_grid_outer);var cell=document.createElement('DIV');cell.className="cell pad-y";collections_grid_outer.appendChild(cell);var collections_grid=document.createElement('DIV');collections_grid.className="grid-x grid-margin-y grid-margin-x";cell.appendChild(collections_grid);view.params.premium.collections.forEach(function(c){var cell=document.createElement('DIV');cell.className="cell large-6 small-12";collections_grid.appendChild(cell);var checkbox=dg.cbView.generate('checkbox',{no_validation:1,checked:(view.params.collection_ids||[]).some(function(id){return String(id)===String(c.id);}),label:c.name,id:"cb-js-collection-"+c.id_encoded,onChange:function(){if(this.checked){addToCollection(c.id_encoded);}
2407else{removeFromCollection(c.id_encoded);}}});view.pushComponent('collection_check_'+c.id_encoded,checkbox,view.component);cell.appendChild(checkbox.el);});}
2408var cell=document.createElement("DIV");cell.className="cell pad-bottom cb-js-hide-on-confirm-delete";grid.appendChild(cell);var tags=document.createElement("DIV");tags.className="grid-x grid-margin-x grid-margin-y align-middle";cell.appendChild(tags);if(view.params.ingredient){if(view.params.from_diffords_guide&&view.params.in_ingredients){var cell=document.createElement("DIV");cell.className="cell shrink";cell.appendChild(dg.cbView.generate('tag',{icon:"check-circle",text:'In your Ingredients',classNames:"cb-tag cb-tag--cocktail-builder"}).el);tags.appendChild(cell);}
2409var type=view.get('ingredient_types')[view.params.ingredient.catId||'default'];if(type===undefined)type=view.get('ingredient_types').default
2410var cell=document.createElement("DIV");cell.className="cell shrink";cell.appendChild(dg.cbView.generate('tag',{icon:type.icon,classNames:"cb-tag--active",text:type.title}).el);tags.appendChild(cell);if(view.params.ingredient.id!=view.get('unknown_ingredient_id')){var cell=document.createElement("DIV");cell.className="cell shrink";cell.appendChild(dg.cbView.generate('tag',{text:(view.params.ingredient.displayName||view.params.ingredient.name)}).el);tags.appendChild(cell);}
2411if(view.params.ingredient.gradeId=="K"){var cell=document.createElement("DIV");cell.className="cell shrink";cell.appendChild(dg.cbView.generate('tag',{icon:'key',text:"Key ingredient"}).el);tags.appendChild(cell);}
2412else if(view.params.ingredient.gradeId=="P"){var cell=document.createElement("DIV");cell.className="cell shrink";cell.appendChild(dg.cbView.generate('tag',{icon:'strainer',text:"Professional ingredient"}).el);tags.appendChild(cell);}
2413if(parseInt(view.params.ingredient.cocktail_count)>0){var cell=document.createElement("DIV");cell.className="cell shrink";cell.appendChild(dg.cbView.generate('tag',{icon:'cocktails',href:view.params.recipes_href,text:"Featured in "+view.params.ingredient.cocktail_count+" Recipes",classNames:'cb-tag--text-only text-normal'}).el);tags.appendChild(cell);}
2414if(view.params.pre_populated_item){var cell=document.createElement("DIV");cell.className="cell shrink";cell.appendChild(dg.cbView.generate('tag',{icon:'info',text:"This is a pre-populated ingredient",classNames:'cb-tag--text-only text-normal'}).el);tags.appendChild(cell);}}
2415var cell=document.createElement("DIV");cell.className="cell pad-y cb-js-hide-on-confirm-delete";grid.appendChild(cell);var controls=document.createElement("DIV");controls.className="grid-x grid-margin-x grid-margin-y";cell.append(controls);var cell=document.createElement("DIV");cell.className="cell medium-6";var checkbox=dg.cbView.generate('checkbox',{no_validation:1,checked:view.params.engagement&&view.params.engagement.favourite=="yes",label:"Favourite",icon:"heart-full",id:"cb-js-favourite-"+view.params.link_id,onChange:favourite});view.pushComponent('favourite',checkbox,view.component);cell.appendChild(checkbox.el);controls.appendChild(cell);
2415var cell=document.createElement("DIV");cell.className="cell medium-6";var checkbox=dg.cbView.generate('checkbox',{no_validation:1,checked:view.params.engagement&&view.params.engagement.wish_list=="yes",label:"Wish List",icon:"wish-list",id:"cb-js-wish-list-"+view.params.link_id,onChange:wishList});view.pushComponent('wish_list',checkbox,view.component);cell.appendChild(checkbox.el);controls.appendChild(cell);if(view.params.spiritbrand){var cell=document.createElement("DIV");cell.className="cell medium-6";var rating=dg.cbView.generate('select',{label:"Your rating",no_validation:1,value:(view.params.engagement?view.params.engagement.rating:null),options:[{value:"0",text:'Unrated'},{value:"5.5",text:'5+&nbsp; &nbsp; ─ &nbsp; Outstanding'},{value:"5",text:'5&nbsp;&nbsp;&nbsp; &nbsp; ─ &nbsp; Exceptional'},{value:"4.5",text:'4.5 &nbsp; ─ &nbsp; Excellent'},{value:"4",text:'4&nbsp;&nbsp;&nbsp; &nbsp; ─ &nbsp; Recommended'},{value:"3.5",text:'3.5 &nbsp; ─ &nbsp; Commended'},{value:"3",text:'3&nbsp;&nbsp;&nbsp; &nbsp; ─ &nbsp; Mediocre'},{value:"2.5",text:'2.5 &nbsp; ─ &nbsp; Disappointing'},{value:"2",text:'2&nbsp;&nbsp;&nbsp; &nbsp; ─ &nbsp; Pretty Awful'},{value:"1.5",text:'1.5 &nbsp; ─ &nbsp; Shameful'},{value:"1",text:'1&nbsp;&nbsp;&nbsp; &nbsp; ─ &nbsp; Disgusting'}],id:"cb-js-rate-"+view.params.link_id,onChange:rate});view.pushComponent('rating',rating,view.component);cell.appendChild(rating.el);controls.appendChild(cell);var cell=document.createElement("DIV");cell.className="cell medium-6";var tried=dg.cbView.generate('select',{no_validation:1,value:(view.params.engagement?view.params.engagement.tried:null),id:"cb-js-tried-"+view.params.link_id,label:"Your thoughts",options:[{value:"not_tried",text:'Not Tried'},{value:"must_try",text:'Must Try'},{value:"liked",text:'Tried & Liked'},{value:"disliked",text:"Tried & Didn't Like"}],onChange:updateTried});view.pushComponent('tried',tried,view.component);cell.appendChild(tried.el);controls.appendChild(cell);}
2416var cell=document.createElement("DIV");cell.className="cell";var disable_notes=false;if(view.params.premium_enabled===true){if('premium'in view.params===false||view.params.premium===false){disable_notes=true;var premium_label_container=document.createElement("DIV");premium_label_container.className="grid-margin-x grid-margin-y grid-padding-y grid-x align-middle";var premium_icon_container=document.createElement("DIV");premium_icon_container.className="cell shrink text-center";var premium_icon=document.createElement("img");premium_icon.style="height: 1.5rem";premium_icon.src="https://assets.diffordsguide.com/svg/logo/premium-jewel-tight.svg";premium_icon_container.appendChild(premium_icon);premium_label_container.appendChild(premium_icon_container);var premium_label_text=document.createElement("div");premium_label_text.innerHTML="Add your own notes about this product with <a href='/membership/premium' class='cb-link'>Difford's Guide Premium</a>";premium_label_text.className="cell small-10 text-small pad-top-half"
2417premium_label_container.appendChild(premium_label_text);cell.appendChild(premium_label_container);}}
2418var notes=dg.cbView.generate('textarea',{label:"Your notes (not viewable by others)",value:(view.params.engagement?view.params.engagement.notes_safe_edit:null),placeholder:"Your personal notes on this item",id:"cb-js-notes-"+view.params.link_id,button:{type:'button',text:'SAVE',id:"cb-js-notes-save-"+view.params.link_id,onClick:updateNotes},no_validation:1,onInput:dg.cbApi.resetAutoQueueTimer,disabled:disable_notes});view.pushComponent('notes',notes,view.component);notes.el.addEventListener('change',function(){$(view.component.notes.component.button).removeClass("hide");});cell.appendChild(notes.el);controls.appendChild(cell);var toggle_help_container=document.createElement("div");toggle_help_container.className="premium-heading-about margin-top-xxlight";var toggle_help_href=document.createElement("span");toggle_help_href.id='toggle-personal-notes';toggle_help_href.className='cb-link';toggle_help_href.setAttribute('data-toggle-target','toggle-personal-notes-paragraph');toggle_help_href.textContent='Your Personal Notes';toggle_help_container.appendChild(dg.cbView.generate('icon',{graphic:'info-circle',tooltip:'info'}).el);toggle_help_container.appendChild(toggle_help_href);var pn_paragraph_container=document.createElement('div');pn_paragraph_container.className='cell hide text-small';pn_paragraph_container.id='toggle-personal-notes-paragraph';var pn_paragraph1=document.createElement('p');pn_paragraph1.innerHTML='Premium members can add notes to cocktails and brands (beers, wines & spirits) which are only viewable to them whenever they return to that cocktail or brand.';pn_paragraph_container.appendChild(pn_paragraph1);var pn_paragraph2=document.createElement('p');pn_paragraph2.textContent='Anyone who made such a personal note before the introduction of Premium (on 27.Aug.24) will still be able to read their existing notes but will not be able to make new notes. Members who have not joined Premium can still leave public comments, and such comments can be useful for other members of the community, so we are keen to encourage their use. However, private notes can only be seen by you, and so are only of use to individual members; hence, private notes are one of the many benefits we reserve for Premium members.';pn_paragraph_container.appendChild(pn_paragraph2);cell.appendChild(toggle_help_container);cell.appendChild(pn_paragraph_container);toggleNotesParagraph(toggle_help_href,pn_paragraph_container);
2418if(view.params.spiritbrand&&view.params.ingredient){var cell=document.createElement("DIV");cell.className="cell";var disable_pref_ingr=false;if(view.params.premium_enabled===true){if('premium'in view.params==false||view.params.premium==false){disable_pref_ingr=true;var premium_label_container=document.createElement("DIV");premium_label_container.className="grid-margin-x grid-margin-y grid-padding-y grid-x";var premium_icon_container=document.createElement("DIV");premium_icon_container.className="cell shrink align-center-middle";var premium_icon=document.createElement("img");premium_icon.style="height: 1.5rem";premium_icon.src="https://assets.diffordsguide.com/svg/logo/premium-jewel-tight.svg";premium_icon_container.appendChild(premium_icon);premium_label_container.appendChild(premium_icon_container);var premium_label_text=document.createElement("div");premium_label_text.innerHTML="Make <strong>"+view.params.display_name+"</strong> your preferred "+(view.params.ingredient.displayName||view.params.ingredient.name)+" on Difford&rsquo;s Guide with <a href='/membership/premium' class='cb-link'>Difford's Guide Premium</a>";premium_label_text.className="cell small-10 text-small pad-top-half"
2419premium_label_container.appendChild(premium_label_text);disable_ingredient_select=true;cell.appendChild(premium_label_container);}}
2420var checkbox=dg.cbView.generate('checkbox',{no_validation:1,checked:view.params.spiritbrand.preferred,label:"Preferred brand across generic",info:"Make <strong>"+view.params.display_name+"</strong> your default preferred <strong>"+(view.params.ingredient.displayName||view.params.ingredient.name)+"</strong>",icon:"preferred-active",id:"cb-js-preferred-ingredient-"+view.params.link_id,classNames:(view.params.premium_enabled===true&&('premium'in view.params==false||view.params.premium==false))?'cb-form-checkbox--disabled':'',disabled:disable_pref_ingr,onChange:preferred});view.pushComponent('preferred',checkbox,view.component);cell.appendChild(checkbox.el);controls.appendChild(cell);}
2421if(view.params.spiritbrand&&view.params.spiritbrand.preferred_recipes&&view.params.spiritbrand.preferred_recipes.length>0){var cell=document.createElement("DIV");cell.className="cell";cell.textContent="Preferred brand in the following individual recipes:";controls.appendChild(cell);view.params.spiritbrand.preferred_recipes.forEach(function(p){var cell=document.createElement("DIV");cell.className="cell";controls.appendChild(cell);cell.appendChild(dg.cbView.generate('checkbox',{no_validation:1,checked:1,label:p.name,id:'pref'+p.cocktails_id,icon:"cocktails",onChange:function(){var $input=$(this),$container=$input.parents(".cb-form-checkbox:first");$input.prop("disabled",true);$container.addClass("cb-form-checkbox--disabled");dg.cbApi.post('preferred-ingredient',{cocktail_id:p.cocktails_id,spiritbrand_id:p.spiritbrands_id,ingredient_id:p.ingredients_id,delete:$input.prop("checked")?null:'yes'},function(){setTimeout(function(){$input.prop("disabled",false);$container.removeClass("cb-form-checkbox--disabled");},500);});}}).el);});if(view.params.spiritbrand.preferred_recipe_exceptions&&view.params.spiritbrand.preferred_recipe_exceptions.length>0){var cell=document.createElement("DIV");cell.className="cell pad-top";cell.innerHTML="<strong>Excepted</strong> from the following recipes:<br><span class='text-small'>These recipes instead display the default recommeneded brand or ingredient</span>";controls.appendChild(cell);view.params.spiritbrand.preferred_recipe_exceptions.forEach(function(p){var cell=document.createElement("DIV");cell.className="cell";controls.appendChild(cell);cell.appendChild(dg.cbView.generate('checkbox',{no_validation:1,checked:1,label:p.name,id:'pref-exc-'+p.cocktails_id,icon:"block",onChange:function(){var $input=$(this),$container=$input.parents(".cb-form-checkbox:first");$input.prop("disabled",true);$container.addClass("cb-form-checkbox--disabled");dg.cbApi.post('preferred-ingredient',{cocktail_id:p.cocktails_id,spiritbrand_id:'-1',ingredient_id:p.ingredients_id,delete:$input.prop("checked")?null:'yes'}
2421,function(){setTimeout(function(){$input.prop("disabled",false);$container.removeClass("cb-form-checkbox--disabled");},500);});}}).el);});}}
2422if(!view.params.from_diffords_guide&&(view.params.in_ingredients==undefined||view.params.in_ingredients!=false)){var cell=view.newComponent('delete_button_container','DIV');cell.className="cell pad-top flex-container justify-center-small";var delete_button=dg.cbView.generate('button',{text:"Remove this item",icon:"delete",classNames:"cb-button--danger",id:'cb-js-item-delete-'+view.params.link_id,onClick:confirmDeleteItem,}).el;view.pushComponent('delete_button',delete_button,view.component);cell.appendChild(delete_button);grid.appendChild(cell);}
2423var cell=document.createElement("DIV");cell.className="cell pad-top flex-container justify-center-small";cell.appendChild(dg.cbView.generate('button',{'text':"Close",'icon':"cancel",'classNames':"cb-button--small cb-js-hide-on-confirm-delete",'onClick':closeModal}).el);container.appendChild(cell);}
2424view.component.modal.appendChild(view.component.more_details);openModal();if(focus instanceof Event&&view.params.focus){focus=view.params.focus;}
2425if(focus==="favourite"){focusElement(view.component.favourite.el);}
2426else if(focus==="rate"){focusElement(view.component.rating.el);}
2427else if(focus==="notes"){focusElement(view.component.notes.el);}
2428else if(focus==="wish-list"){focusElement(view.component.wish_list.el);}
2429else if(focus==="preferred"){focusElement(view.component.preferred.el);}
2430else if(focus==="tried"){focusElement(view.component.tried.el);}
2431else if(focus==="rating"){focusElement(view.component.rating.el);}
2432else{$(view.component.modal).scrollTop(0);}}
2433function focusElement(el){view.focus=el;$(view.component.modal).scrollTop(0).animate({scrollTop:$(el).offset().top},2000);$(view.focus).addClass("cb-focus-element");}
2434function wishList(){view.component.wish_list.presentSaving();var params={};if(view.params.spiritbrand){params.link_id=view.params.spiritbrand.id
2435params.link_table='spiritbrands'}
2436else{params.link_id=view.params.ingredient.id
2437params.link_table='ingredients'}
2438params.add=view.component.wish_list.component.input.checked?'yes':'no';dg.cbApi.pushToQueue('wish-list',params,function(r){view.params.engagement.wish_list=r.AJAXresponse.response.wish_list;if(view.params.engagement.wish_list==="yes"){view.component.tags.appendChild(view.component.wish_list_tag.el);}
2439else{$(view.component.tags).find(".wish-list-tag").remove();}
2440if(typeof view.params.onWishList==="function"){view.params.onWishList(r);}
2441view.component.wish_list.presentSaved();dg.cbTestHook("cb-js-update-wish-list");},push_to_queue_pause);}
2442function favourite(){view.component.favourite.presentSaving();var params={};if(view.params.spiritbrand){params.link_id=view.params.spiritbrand.id
2443params.link_table='spiritbrands'}
2444else{params.link_id=view.params.ingredient.id
2445params.link_table='ingredients'}
2446params.add=view.component.favourite.component.input.checked?'yes':'no';dg.cbApi.pushToQueue('favourite',params,function(r){view.params.engagement.favourite=r.AJAXresponse.response.favourite;if(view.params.engagement.favourite==="yes"){view.component.tags.appendChild(view.component.favourite_tag.el);}
2447else{$(view.component.tags).find(".favourite-tag").remove();}
2448if(typeof view.params.onFavourite==="function"){view.params.onFavourite(r);}
2449view.component.favourite.presentSaved();dg.cbTestHook("cb-js-update-favourite");},push_to_queue_pause);}
2450function preferred(){view.component.preferred.presentSaving();dg.cbApi.pushToQueue('preferred-ingredient',{spiritbrand_id:view.params.spiritbrand.id,add:view.component.preferred.component.input.checked?'yes':'no'},function(r){view.params.spiritbrand.preferred=r.AJAXresponse.response.preferred;if(view.params.spiritbrand.preferred===true){view.component.tags.appendChild(view.component.preferred_tag.el);}
2451else{$(view.component.tags).find(".preferred-tag").remove();}
2452if(typeof view.params.onPreferred==="function"){view.params.onPreferred(r);}
2453view.component.preferred.presentSaved();dg.cbTestHook("cb-js-update-preferred-ingredient");},push_to_queue_pause);}
2454function rate(){if(!view.component.rating.component.input.value)return;view.component.rating.presentSaving();$(view.component.rating.component.input).find("option").each(function(){if(!$(this).val())$(this).remove();});view.component.rating.el.className+=" cb-form-control--disabled";view.component.rating.component.input.disabled=true;dg.cbApi.pushToQueue('rate',{link_id:view.params.spiritbrand.id,section:'bws',rating:view.component.rating.component.input.value},function(r){$(view.component.rating.el).removeClass("cb-form-control--disabled");view.component.rating.component.input.disabled=false;if(r.AJAXresponse.status=='error'){view.component.rating.presentReset();$(view.component.rating.component.input).trigger("pusherror",r.AJAXresponse.response.reason)}
2455else{$(view.component.rating.component.input).trigger("hideerror");view.params.engagement.rating=r.AJAXresponse.response.rating;view.component.rating_tag.el.innerHTML="";view.component.rating_tag.el.appendChild(dg.cbView.generate('rating',{rating:view.params.engagement.rating}).el);view.component.tags.appendChild(rating_tag.el);view.component.your_rating_container.innerHTML="";view.component.your_rating_container.appendChild(dg.cbView.generate('rating',{rating:view.params.engagement.rating,heading:"Your rating"}).el);view.component.lhs_grid.insertBefore(view.component.your_rating_container,view.component.view_on_dg_container);if(typeof view.params.onRate==="function"){view.params.onRate(r);}
2456view.component.rating.presentSaved();dg.cbTestHook("cb-js-update-rating");}},push_to_queue_pause);}
2457function updateTried(){view.component.tried.presentSaving();dg.cbApi.pushToQueue('tried',{link_id:view.params.spiritbrand.id,link_table:'spiritbrands',tried:view.component.tried.component.input.value},function(r){if(typeof view.params.onUpdateTried==="function"){view.params.onUpdateTried(r);}
2458view.component.tried.presentSaved();dg.cbTestHook("cb-js-update-tried");},push_to_queue_pause);}
2459function updateNotes(){view.component.notes.presentSaving();view.component.notes.component.button.disabled=true;$(view.component.notes.component.button).addClass("cb-button--off hide");dg.cbApi.terminateAutoQueue();var params={};if(view.params.spiritbrand){params.link_id=view.params.spiritbrand.id
2460params.link_table='spiritbrands'}
2461else{params.link_id=view.params.ingredient.id
2462params.link_table='ingredients'}
2463params.notes=view.component.notes.component.input.value.trim();dg.cbApi.pushToQueue('notes',params,function(r){if(typeof view.params.onUpdateNotes==="function"){view.params.onUpdateNotes(r);}
2464setTimeout(function(){view.component.notes.presentSaved();view.component.notes.component.button.disabled=false;$(view.component.notes.component.button).removeClass("cb-button--off");},push_to_queue_pause);dg.cbTestHook("cb-js-update-notes");});dg.cbApi.executeQueue();}
2465function confirmDeleteItem(){view.component.delete_button_container.innerHTML="";if(!view.component.delete_confirm){var delete_confirm=view.newComponent('delete_confirm','DIV');delete_confirm.className="grid-x grid-margin-x grid-margin-y cb-fadein justify-center-small";view.component.delete_button_container.appendChild(delete_confirm);
2465var cell=document.createElement("DIV");cell.className="cell text-center-small";cell.innerHTML="<strong>Are you sure you wish to remove this item?</strong>";delete_confirm.appendChild(cell);var cell=document.createElement("DIV");cell.className="cell shrink";cell.appendChild(dg.cbView.generate('button',{text:"Remove",classNames:"cb-button--danger",id:'cb-js-item-confirm-delete-'+view.params.link_id,onClick:deleteItem,}).el);delete_confirm.appendChild(cell);var cell=document.createElement("DIV");cell.className="cell shrink";cell.appendChild(dg.cbView.generate('button',{text:"CANCEL",classNames:"cb-button--off",id:'cb-js-item-cancel-delete-'+view.params.link_id,onClick:function(){view.component.delete_button_container.innerHTML="";view.component.delete_button.className+=" cb-fadein";view.component.delete_button_container.appendChild(view.component.delete_button);$(".cb-js-hide-on-confirm-delete").removeClass("hide").addClass("cb-fadein");if(view.params.close_modal_on_cancel_delete){closeModal();}
2466view.params.close_modal_on_cancel_delete=null;},}).el);delete_confirm.appendChild(cell);}
2467view.component.delete_button_container.appendChild(view.component.delete_confirm);$(".cb-js-hide-on-confirm-delete").addClass("hide")
2468dg.cbTestHook("cb-js-delete-confirm-shown");}
2469function deleteItem(){dg.ui.ingredient_remove_confirm=(dg.ui.ingredient_remove_confirm||0)+1;if(view.component.modal){view.component.modal.className+=" cb-modal--disabled";view.component.delete_button_container.innerHTML="";view.component.delete_button_container.className="flex-container align-center-small pad-top";view.component.delete_button_container.appendChild(dg.cbView.generate('icon',{graphic:'loading',size:'xlarge'}).el);if(view.params.close_modal_on_delete){closeModal();}}
2470if(typeof view.params.onBeforeDelete==="function"){view.params.onBeforeDelete();}
2471var params={id:view.params.id};if(view.params.pre_populated_item){params={pre_populated_iid:view.params.ingredient.id};}
2472dg.cbApi.post('delete-item',params,function(){setTimeout(function(){$(view.el).remove();if(view.component.modal){closeModal();}
2473if(typeof view.params.onDelete==="function"){view.params.onDelete();}},push_to_queue_pause);});}
2474function generateModal(){if(!view.modal){var modal=view.newComponent('modal','DIV');modal.className="cb-js-delete-on-pagination";modal.dataset.closeOnClick=false;view.modal=new Foundation.Reveal($(modal));view.modal.$overlay.addClass("cb-modal-overlay cb-js-delete-on-pagination");$(modal).on("closed.zf.reveal",onModalClose);}
2475view.component.modal.className="reveal cb-modal cb-fadein";view.component.modal.className+=" large";view.modal.innerHTML="";}
2476function openModal(){$(view.component.modal).foundation("open");dg.cbTestHook("cb-js-modal-opened");}
2477function closeModal(){$(view.component.modal).foundation("close");}
2478function onModalClose(){if(view.focus){$(view.focus).removeClass("cb-focus-element");}
2479if(dg.cbApi.hasQueue()){dg.cbApi.terminateAutoQueue();dg.cbApi.executeQueue(function(){if(typeof view.params.onModalClose==="function"){view.params.onModalClose();}});}
2480else if(typeof view.params.onModalClose==="function"){view.params.onModalClose();}}
2481function addItemFromModal(){view.component.add_button.disabled=true;view.component.add_button.innerHTML="";view.component.add_button.appendChild(dg.cbView.generate('icon',{'graphic':'loading'}).el);dg.cbApi.pushToQueue('add-item',{type:'ingredient',link_id:view.params.link_id,link_table:view.params.link_table,sub_type:view.params.sub_type,},function(r){if(r.AJAXstatus!=="ok"){dg.cbFatalError({'_trigger':"item addItemFromModal() AJAX error",});}
2482else{if(r.AJAXresponse.status!=="ok"){dg.cbFatalError({'_trigger':"item addItemFromModal() API response error",});}
2483else{view.component.add_button.parentNode.insertBefore(dg.cbView.generate('tag',{icon:"check-circle",text:'Ingredient added',classNames:"cb-tag cb-tag--cocktail-builder"}).el,view.component.add_button);view.component.add_button.remove();if(view.component.not_in_ingredients){view.component.not_in_ingredients.remove();}
2484dg.cbTestHook("cb-js-item-added-"+view.params.id);if(typeof view.params.afterAdd==="function"){view.params.afterAdd(r);}}}},(view.params.push_to_queue_interval||0));}
2485function addItem(){if(view.component.modal)closeModal();view.el.className+=" cb-list-item--loading";view.component.add_button.disabled=true;view.component.add_button.innerHTML="";view.component.add_button.appendChild(dg.cbView.generate('icon',{'graphic':'loading'}).el);if(typeof view.params.beforeAdd==="function"){view.params.beforeAdd();}
2486dg.cbApi.pushToQueue('add-item',{type:'ingredient',link_id:view.params.link_id,link_table:view.params.link_table,sub_type:view.params.sub_type,}
2486,function(r){if(r.AJAXstatus!=="ok"){dg.cbFatalError({'_trigger':"item addItem() AJAX error",});}
2487else{if(r.AJAXresponse.status!=="ok"){dg.cbFatalError({'_trigger':"item addItem() API response error",});}
2488else{view.component.controls_container.insertBefore(dg.cbView.generate('tag',{icon:"check-circle",text:'Ingredient added',classNames:"cb-tag cb-tag--cocktail-builder cb-tag--text-only"}).el,view.component.add_button);view.component.add_button.remove();view.el.classList.remove("cb-list-item--loading");view.el.classList.add("cb-list-item--in-your-ingredients");dg.cbTestHook("cb-js-item-added-"+view.params.id);if(typeof view.params.afterAdd==="function"){view.params.afterAdd(r);}}}},(view.params.push_to_queue_interval||0));}
2489function toggleNotesParagraph(toggle_link,toggle_paragraph){toggle_link.addEventListener('click',function(){toggle_paragraph.classList.toggle('hide');});}
2490function addToCollection(collection_id){view.component['collection_check_'+collection_id].presentSaving();dg.cbApi.pushToQueue('collection',{id:collection_id,link_id:view.params.link_id,link_table:view.params.link_table,add_item:1,},function(r){if(r.AJAXstatus!=="ok"){dg.cbFatalError({'_trigger':"item-recipe addItemToCollection() AJAX error",});}
2491else{if(r.AJAXresponse.status!=="ok"){dg.cbFatalError({'_trigger':"item-recipe addItemToCollection() API response error",});}
2492else{view.component['collection_check_'+collection_id].presentSaved();}}},(view.params.push_to_queue_interval||0));}
2493function removeFromCollection(collection_id){view.component['collection_check_'+collection_id].presentSaving();dg.cbApi.post('collection',{id:collection_id,link_id:view.params.link_id,link_table:view.params.link_table,delete_item:true},function(){view.component['collection_check_'+collection_id].presentSaved();});}}
2494function __cocktailBuilderViewLogoWithDg(view){view.el=document.createElementNS("http://www.w3.org/2000/svg","svg");view.el.setAttributeNS(null,'viewBox','0 0 1096 490');view.el.setAttributeNS(null,'fill','currentColor');if(view.params.classNames){view.el.setAttributeNS(null,'class',view.params.classNames);}
2495var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M308.2,144.4c8.2-0.7,11.4-1.8,13.8-5.1c2.8-3.9,3.4-7.5,3.4-24.5V55.2c0-17-0.5-20.8-3.4-24.5c-2.5-3.4-5.7-4.4-13.8-5.1v-1.8h63.9c23.1,0,40.1,5.9,52.9,18.5c11,10.8,17.4,26.3,17.4,42.4c0,19.2-6.4,34.2-19.5,45.8c-11.5,10.1-27.1,15.8-43.6,15.8h-71V144.4z M361.4,119.6c0,12.6,0.5,16.9,2.1,19.7c2,3.2,6,4.8,12.1,4.8c20,0,28.2-17.2,28.2-59.1c0-24.1-2.7-38-9.2-48.1c-5-7.8-13.3-11-28.2-11h-5V119.6z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M447.7,66.2c9-2,13.8-3.4,24.5-6.4c10.8-3,15.1-4.4,24-7.8v70.8c0,18.6,1.4,20.9,13.3,21.6v1.8h-60.5v-1.8c13.1-0.7,14.7-3,14.7-21.6V92.6c0-11-0.9-15.3-3.5-19.2c-2.7-3.5-6-5-12.1-5.3L447.7,66.2z M496.8,26.6c0,10.6-8.5,19.3-19.2,19.3c-10.6,0-19.3-8.7-19.3-19.3c0-10.5,8.7-19.2,19.3-19.2C488.3,7.5,496.8,16,496.8,26.6z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M574.2,63h-15.3v59.8c0,19.2,1.8,21.5,16.7,21.6v1.8h-63.9v-1.8c13.1-0.7,14.7-3.2,14.7-21.6V63h-10.6l20.9-26.6c8.7-11,15.3-18.1,20.9-22.4c4.1-3.2,9.4-4.8,16-4.8c18.1,0,31.9,9.4,32.8,22.5c0.5,8-5.7,14.4-14.4,14.4c-6,0-11.5-3.2-13.8-8.2c-1.2-2.7-1.8-5.1-2.1-13c-0.2-5.9-0.7-8.2-1.8-9.9c-1.2-2.1-3.4-3.4-5.5-3.2c-2.7,0.2-5.5,2.1-7.3,5c-2,3-2.7,6.6-2.7,13.1v24.5h20.2L574.2,63z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M648.8,63h-15.3v59.8c0,19.2,1.8,21.5,16.7,21.6v1.8h-63.9v-1.8c13.1-0.7,14.7-3.2,14.7-21.6V63h-10.6l20.9-26.6c8.7-11,15.3-18.1,20.9-22.4c4.1-3.2,9.4-4.8,16-4.8c18.1,0,31.9,9.4,32.8,22.5c0.5,8-5.7,14.4-14.4,14.4c-6,0-11.5-3.2-13.8-8.2c-1.2-2.7-1.8-5.1-2.1-13c-0.2-5.9-0.7-8.2-1.8-9.9c-1.2-2.1-3.4-3.4-5.5-3.2c-2.7,0.2-5.5,2.1-7.3,5c-2,3-2.7,6.6-2.7,13.1v24.5h20.2L648.8,63z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M759.7,100.4c0,27.1-22.2,48.3-50.7,48.3c-28.6,0-50.7-21.1-50.7-48.3c0-27.3,22.2-48.4,50.7-48.4C737.5,52,759.7,73.1,759.7,100.4z M696.7,65.3c-2,7.6-3,19.9-3,35.1c0,15.1,1.1,27.1,3,35c1.6,6.7,6.4,10.8,12.2,10.8c5.9,0,10.6-4.1,12.2-10.8c2-7.8,3-19.7,3-35c0-7.1-0.5-19.3-1.1-24.3c-1.6-15.4-5.7-21.6-14.2-21.6C703.1,54.5,698.5,58.6,696.7,65.3z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M811.5,80.2C818.5,61,827.1,52,838.7,52c9.2,0,16.3,6.4,16.9,15.1c0.5,8.9-5.9,16.3-13.7,16.3c-3.5,0-6.7-1.1-9-3c-1.4-1.2-1.4-1.2-5.3-6.4c-2-2.5-3.5-3.7-5.3-3.7c-2.7,0-4.1,1.1-5.7,3.9c-2.7,5.1-3.5,11-3.5,25.6v23.1c0,18.6,1.6,20.9,14.5,21.6v1.8h-61.7v-1.8c13.1-0.7,14.7-3,14.7-21.6V92.6c0-11-0.9-15.3-3.5-19.2c-2.7-3.5-6-5-12.1-5.3l-0.4-2c20.2
2495-4.6,24.1-5.9,47-14.2V80.2z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M862.8,100.9c0-26.7,16.5-51,48.1-51c8.2,0,13.3,1.2,19.2,3.3V14.9c0-6.1-2-9.8-14.5-10V2.4L961.5,0v134.4c0,5.7,2.4,10.2,13.9,10.2v1.6l-44.9,0.8v-12.2c-6.3,7.7-14.9,13.1-26.5,13.1C878.1,147.8,862.8,128.7,862.8,100.9z M930.1,131.9V63.4c-2.9-5.1-8.8-9.4-16.1-9.4c-11.4,0-18.1,17.9-18.1,43.6c0,20.8,7.1,38.9,22,38.9C923.5,136.6,926.4,135,930.1,131.9z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M1087.1,87.5h-2c-7.5-18.3-21.1-31.9-33-33c-7.5-0.7-13.8,5.1-13.8,12.4c0,7.3,5.7,12.6,17.4,16.5l12.6,4.1c19,6.2,27.7,14.9,27.7,27.9c0,19.3-17,33.4-40.6,33.4c-6.9,0-12.8-1.1-25.2-4.3c-7.5-2.1-9.9-2.8-15.6-4.8l-1.8-37.3h1.8c11.7,27,28.7,43.8,44.5,43.8c7.6,0,13.1-5.5,13.1-12.8c0-8.3-4.3-12.8-17.2-17.4l-9-3.2c-10.8-3.9-18.6-8-24-12.2c-5.1-4.3-8.7-11.5-8.7-17.7c0-18.3,16.3-30.9,39.9-30.9c8.9,0,18.5,1.6,31.9,5.3L1087.1,87.5z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M421.9,233.5h-1.8c-8.3-29.1-22.9-46.8-38.5-46.8c-8.5,0-15.8,4.8-20.2,13.3c-7.1,13.5-10.8,32.5-10.8,55c0,19.3,2.5,33.2,7.5,42.9c3.7,6.9,11,11.2,19,11.2c12.6,0,16.7-6,16.7-24.7v-13.1c0-13-3-16.9-14.7-18.6v-1.8h63.2v1.8c-5.5,0.4-8,1.6-10.3,4.8c-2.7,3.5-3.2,7.1-3.2,19v32.6h-1.8c-1.4-4.3-3.2-5.9-6.4-5.9c-2,0-2.7,0.2-8.7,2.1c-12.6,3.9-25.9,6.2-36.9,6.2c-34.4,0-62.8-28.7-62.8-63.7c0-16.9,8.2-35,21.3-46.8c12.6-11.4,27.5-16.7,46.5-16.7c4.1,0,9.9,0.5,17.6,1.8c3.9,0.5,3.2,0.4,9.9,1.8c2.8,0.5,5.1,0.9,6.9,0.9c2.1,0,3.2-0.9,3.7-3h2L421.9,233.5z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M456.2,280v-52.6c0-6.1-2.2-9.8-13.9-10v-2.4l45.3-0.8v65.1c0,11,4.3,17.3,13.5,17.3c6.3,0,10.6-3.1,15.5-9.6v-59.5c0-6.1-2.9-9.4-13.9-9.8v-2.4l45.3-1v84.6c0,6.1,2.6,7.3,13.9,8v2.4H517V291c-8,12.8-19.2,19.8-31.8,19.8C467.3,310.8,456.2,300.6,456.2,280z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M563.3,229.1c9-2,13.8-3.4,24.5-6.4c10.8-3,15.1-4.4,24-7.8v70.8c0,18.6,1.4,20.9,13.3,21.6v1.8h-60.5v-1.8c13.1-0.7,14.7-3,14.7-21.6v-30.2c0-11-0.9-15.3-3.5-19.2c-2.7-3.5-6-5-12.1-5.3L563.3,229.1z M612.4,189.5c0,10.6-8.5,19.3-19.2,19.3s-19.3-8.7-19.3-19.3c0-10.5,8.7-19.2,19.3-19.2S612.4,178.9,612.4,189.5z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M628.7,263.9c0-26.7,16.5-51,48.1-51c8.2,0,13.3,1.2,19.2,3.3v-38.3c0-6.1-2-9.8-14.5-10v-2.4l45.9-2.4v134.4c0,5.7,2.4,10.2,13.9,10.2v1.6l-44.9,0.8v-12.2c-6.3,7.7-14.9,13.1-26.5,13.1C644,310.8,628.7,291.6,628.7,263.9z M696,294.9v-68.5c-2.9-5.1-8.8-9.4-16.1-9.4c-11.4,0-18.1,17.9-18.1,43.6c0,20.8,7.1,38.9,22,38.9C689.5,299.5,692.3,297.9,696,294.9z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M778.1,254.3c0,9.8,1.4,16,4.6,21.5c4.6,8,14,13,24.7,13c14.7,0,22.7-4.3,30.5-16.1l1.8,0.7c-4.1,10.8-6.9,16-12.1,22.4c-8.5,10.3-20.9,16-35.3,16c-28,0-48.3-20.4-48.3-48.3c0-13.7,6.4-27,17-36.2c9.6-8.3,20.4-12.1,34.4-12.1c13.7,0,27.7,7.1,35.7,18.1c4.4,6.2,6.6,11.5,7.8,21.1H778.1z M806.3,252c0-12.1-0.4-17.9-1.4-22.7c-1.8-8-5.3-11.7-11-11.7c-10.3,0-15.8,12.1-15.8,34.4H806.3z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M999.5,35.6c5.4,10.6,8.1,17.7,8.1,21.4c0,4.5-1.6,8.3-4.7,11.4c-3.1,3.1-6.9,4.7-11.4,4.7s-8.3-1.6-11.4-4.7c-3.1-3.1-4.7-6.9-4.7-11.4c0-5.9,5.4-18,16.1-36.1C994.1,25.4,996.8,30.4,999.5,35.6z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M846.7,184c7,0,12.7,5.7,12.7,12.7s-5.7,12.6-12.7,12.6s-12.6-5.7-12.6-12.6S839.7,184,846.7,184z M846.7,207.2c5.8,0,10.5-4.7,10.5-10.5c0-5.8-4.7-10.5-10.5-10.5c-5.8,0-10.5,4.7-10.5,10.5C836.2,202.5,840.9,207.2,846.7,207.2z M842.3,190.9c0-0.4,0.3-0.7,0.7-0.7h5c2.2,0,4.3,1.3,4.3,3.9c0,2.6-1.9,3.6-2.8,3.8c0.7,1.4,1.4,2.8,2.1,4.2c0.2,0.4-0.1,1-0.6,1h-1.2c-0.3,0-0.5-0.3-0.6-0.5l-2-4.4h-2.6v4.2c0,0.4-0.3,0.7-0.7,0.7H843c-0.4,0-0.7-0.3-0.7-0.7V190.9z M848,196.2c1.3,0,2.1-0.9,2.1-2c0-1.2-0.8-2-2.1-2h-3.4v4H848z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M39.5,415.3c10.5,0,18.1,3.5,25.1,9.7c0.9,0.8,0.9,2.1,0.1,2.9l-4.6,4.7c-0.7,0.9-1.7,0.9-2.6,0c-4.9-4.3-11.5-7-17.9-7c-14.8,0-26,12.5-26,27c0,14.5,11.3,26.9,26.1,26.9c7.6,0,12.9-3,17.8-6.8c0.9-0.7,1.9-0.6,2.5-0.1l4.8,4.7c0.8,0.7,0.6,2.1-0.1,2.8c-7.1,6.8-16,10.1-25.2,10.1C18.7,490,2,473.5,2,452.7C2,432,18.7,415.3,39.5,415.3z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M121.5,415.3c20.8,0,37.4,16.7,37.4,37.5c0,20.8-16.6,37.3-37.4,37.3s-37.2-16.5-37.2-37.3C84.3,432,100.8,415.3,121.5,415.3z M121.5,479.6c14.8,0,27-12,27-26.9c0-14.7-12.1-27.1-27-27.1c-14.7,0-26.9,12.3-26.9,27.1C94.7,467.6,106.8,479.6,121.5,479.6z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M216.3,415.3c10.5,0,18.1,3.5,25.1,9.7c0.9,0.8,0.9,2.1,0.1,2.9l-4.6,4.7c-0.7,0.9-1.7,0.9-2.6,0c-4.9-4.3-11.5-7-17.9-7c-14.8,0-26,12.5-26,27c0,14.5,11.3,26.9,26.1,26.9c7.6,0,12.9-3,17.8-6.8c0.9-0.7,1.9-0.6,2.5-0.1l4.8,4.7c0.8,0.7,0.6,2.1-0.1,2.8c-7.1,6.8-16,10.1-25.2,10.1c-20.8,0-37.5-16.5-37.5-37.3C178.8,432,195.5,415.3,216.3,415.3z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M266.7,418.8c0-1.3,1-2.5,2.5-2.5h6c1.3,0,2.5,1.1,2.5,2.5v28.7l29.3-30.2c0.4-0.5,1.1-1,2-1h7.8c1.9,0,2.9,2.2,1.5,3.7l-30,30.5l31.7,35c0.8,1,0.3,3.4-1.9,3.4h-8.3c-1,0-1.7-0.4-1.9-0.7l-30.2-34v32.3c0,1.3-1.1,2.5-2.5,2.5h-6c-1.5,0-2.5-1.1-2.5-2.5V418.8z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M353,426.1h-16.9c-1.1,0-2-0.9-2-2v-5.8c0-1,0.8-2,2-2h44.6c1.1,0,2,0.9,2,2v5.8c0,1-0.8,2-2,2h-16.9V487c0,1-0.9,2-2,2H355c-1,0-2-0.9-2-2V426.1z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M390.6,486.3l31.9-69.8c0.3-0.6,1.2-1.1,1.8-1.1h1c0.5,0,1.5,0.5,1.8,1.1l31.6,69.8c0.6,1.3-0.2,2.7-1.8,2.7h-6.5c-1.2,0-2-0.6-2.4-1.6l-6.4-14.2h-33.9c-2.1,4.8-4.3,9.4-6.3,14.2c-0.3,0.7-1.1,1.6-2.4,1.6h-6.5C390.8,489,390,487.6,390.6,486.3z M437.6,464.3l-12.8-28.4h-0.5l-12.7,28.4H437.6z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M479.4,418.3c0-1,0.9-2,2-2h6.8c1,0,2,0.9,2,2V487c0,1-0.9,2-2,2h-6.8c-1,0-2-0.9-2-2V418.3z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M520.7,418.3c0-1,0.8-2,2-2h6.8c1,0,2,0.9,2,2v61h28.1c1.1,0,2,0.9,2,2v5.7c0,1-0.8,2-2,2h-36.9c-1.1,0-2-0.9-2-2V418.3z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M616,418.3c0-1,0.8-2,2-2h23.2c12.6,0,21.6,8.3,21.6,19.2c0,8-5.9,13.7-10.8,16.5c5.5,2.3,13,7.4,13,16.9c0,11.6-9.5,20-22.6,20H618c-1.1,0-2-0.9-2-2V418.3z M642.3,479.4c6.3,0,11.2-4.9,11.2-11.3c0-6.3-6-10.9-12.8-10.9h-14.2v22.2H642.3z M640.6,447.9c6.6,0,10.7-4.9,10.7-11.1c0-6.3-4-10.7-10.7-10.7h-14v21.8H640.6z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M690,418.3c0-1,0.9-2,2-2h7c1.1,0,2,0.9,2,2v42.9c0,10.4,6.6,18.5,17.2,18.5c10.7,0,17.4-8,17.4-18.3v-43.1c0-1,0.8-2,2-2h7c1,0,2,0.9,2,2v43.6c0,15.8-11.9,28.1-28.3,28.1c-16.3,0-28.1-12.3-28.1-28.1V418.3z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M776,418.3c0-1,0.9-2,2-2h6.8c1,0,2,0.9,2,2V487c0,1-0.9,2-2,2H778c-1,0-2-0.9-2-2V418.3z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M817.3,418.3c0-1,0.8-2,2-2h6.8c1,0,2,0.9,2,2v61h28.1c1.1,0,2,0.9,2,2v5.7c0,1-0.8,2-2,2h-36.9c-1.1,0-2-0.9-2-2V418.3z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M879.5,418.3c0-1,0.8-2,1.9-2h23.9c20,0,36.4,16.3,36.4,36.2c0,20.1-16.4,36.4-36.4,36.4h-23.9c-1,0-1.9-0.9-1.9-2V418.3z M903.8,479.1c15.3,0,26.4-11.2,26.4-26.6c0-15.3-11.1-26.4-26.4-26.4h-13.7v52.9H903.8z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M967,418.3c0-1,0.8-2,2-2h41.5c1.1,0,2,0.9,2,2v5.8c0,1-0.8,2-2,2h-32.8v21.2h27.7c1,0,2,0.9,2,2v5.8c0,1.1-0.9,2-2,2h-27.7v22.3h32.8c1.1,0,2,0.9,2,2v5.7c0,1-0.8,2-2,2h-41.5c-1.1,0-2-0.9-2-2V418.3z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M1038.4,418.3c0-1,0.8-2,2-2h28.2c12.5,0,22.6,9.9,22.6,22.2c0,9.5-6.3,17.4-15.4,21.1l14.2,26.4c0.7,1.3,0,3-1.8,3h-8.1c-0.8,0-1.5-0.5-1.7-0.9l-13.8-27.5
2495h-15.7V487c0,1-0.9,2-2,2h-6.7c-1.1,0-2-0.9-2-2V418.3z M1067.8,451.6c6.7,0,12.7-5.7,12.7-12.9c0-6.7-5.9-12.3-12.7-12.3h-18.5v25.2H1067.8z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M253.6,305.3c0-1.2-0.5-2.3-1.3-3.2c-0.8-0.8-2-1.3-3.2-1.3v0h-4.9v-16.3c0,0,0,0,0,0c0,0,0,0,0,0V266c0,0,0,0,0,0c0,0,0,0,0,0v-18.4c0,0,0,0,0,0c0,0,0,0,0,0v-1c0.1-0.4,0.2-0.8,0.2-1.1c0-0.4-0.1-0.8-0.2-1.1V229c0,0,0,0,0,0c0,0,0,0,0,0v-18.4c0,0,0,0,0,0c0,0,0,0,0,0v-18.4c0,0,0,0,0,0c0,0,0,0,0,0v-18.4c0,0,0,0,0,0c0,0,0,0,0,0v-18.4c0,0,0,0,0,0c0,0,0,0,0,0v-18.4c0,0,0,0,0,0c0,0,0,0,0,0v-18.4c0,0,0,0,0,0c0,0,0,0,0,0V99.7c0,0,0,0,0,0c0,0,0,0,0,0V81.2c0,0,0,0,0,0c0,0,0,0,0,0V62.7c0,0,0,0,0,0c0,0,0,0,0,0V44.2h0c0,0,0,0,0,0c0-1.2-0.5-2.3-1.3-3.2c-0.8-0.8-2-1.3-3.2-1.3c-1.2,0-2.3,0.5-3.2,1.3c-0.8,0.8-1.3,2-1.3,3.2c0,0,0,0,0,0h0v21.5h-12.9c0,0,0,0,0,0s0,0,0,0h-12.8v-5h0c0-0.6-0.1-1.1-0.3-1.6L249.7,19l-0.2-0.2c2.1-1.8,3.4-4.5,3.4-7.5c0-5.5-4.5-10-10-10c-3.4,0-6.3,1.7-8.1,4.2L125.8,113L16.8,4.3l0,0C15,2.6,12.6,1.6,10,1.6c-5.5,0-10,4.5-10,10c0,2.7,1.1,5.1,2.8,6.9l0,0l44.1,44v3.3H33.5c0,0,0,0,0,0s0,0,0,0H19.8v-3c0,0,0,0,0,0c0,0,0,0,0,0V44.2h0c0-1.2-0.5-2.3-1.3-3.2c-0.8-0.8-2-1.3-3.2-1.3c-1.2,0-2.3,0.5-3.2,1.3c-0.8,0.8-1.3,2-1.3,3.2h0v256.6h-5v0c-1.2,0-2.3,0.5-3.2,1.3c-0.8,0.8-1.3,2-1.3,3.2c0,1.2,0.5,2.3,1.3,3.2c0.8,0.8,2,1.3,3.2,1.3v0h19.8v0c1.2,0,2.3-0.5,3.2-1.3c0.8-0.8,1.3-2,1.3-3.2c0-1.2-0.5-2.3-1.3-3.2c-0.8-0.8-2-1.3-3.2-1.3v0h-5.8v-16.3c0,0,0,0,0,0c0,0,0,0,0,0v0c0.7-0.2,1.4-0.6,2-1.1c0,0,0,0,0,0l0,0l15.8-15.8c0,0,0,0,0,0c0,0,0,0,0,0l15.8-15.8l0,0c0.3-0.3,0.5-0.6,0.7-1c0.1-0.1,0.3-0.2,0.4-0.3c0.8-0.8,1.3-2,1.3-3.2h0v-18.6c0,0,0,0,0,0c0,0,0,0,0,0v-18.6c0,0,0,0,0,0c0,0,0,0,0,0v-18.6c0,0,0,0,0,0c0,0,0,0,0,0v-18.6c0,0,0,0,0,0c0,0,0,0,0,0V154c0,0,0,0,0,0c0,0,0,0,0,0v-18.6c0,0,0,0,0,0c0,0,0,0,0,0v-18.6c0,0,0,0,0,0s0,0,0,0V98c0,0,0,0,0,0c0,0,0,0,0,0V79.4c0,0,0,0,0,0c0,0,0,0,0,0v-7.9l60.6,60.5v158H77v0.2c-4.8,0.6-8.6,4.8-8.6,9.8s3.8,9.1,8.6,9.8v0.2h96.7v-0.3c4.8-0.7,8.5-4.8,8.5-9.8s-3.7-9.1-8.5-9.8v-0.1h-0.4c-0.4,0-0.7-0.1-1.1-0.1s-0.7,0-1.1,0.1h-34.7V130.7l63.9-63v2.4c0,0.1,0,0.1,0,0.2c0,0.1,0,0.1,0,0.2v8.9c0,0,0,0,0,0c0,0,0,0,0,0V98c0,0,0,0,0,0c0,0,0,0,0,0v12.7c0,0.1,0,0.1,0,0.2s0,0.1,0,0.2v5.5c0,0,0,0,0,0c0,0,0,0,0,0v18.6c0,0,0,0,0,0c0,0,0,0,0,0v18.6c0,0,0,0,0,0c0,0,0,0,0,0v0.7c-0.1,0.3-0.1,0.7-0.1,1.1c0,0.4,0.1,0.7,0.1,1.1v15.7c0,0,0,0,0,0c0,0,0,0,0,0v18.6c0,0,0,0,0,0c0,0,0,0,0,0v9.9c0,0.1,0,0.1,0,0.2c0,0.1,0,0.1,0,0.2v8.4c0,0,0,0,0,0c0,0,0,0,0,0v18.6c0,0,0,0,0,0c0,0,0,0,0,0v15.8c-0.1,0.3-0.1,0.6-0.1,0.9c0,0.3,0,0.6,0.1,0.9v1h0c0,1.2,0.5,2.3,1.3,3.2c0.4,0.4,0.8,0.6,1.2,0.8c0.1,0.1,0.1,0.1,0.2,0.2l0,0l31.5,31.6l0,0c0,0,0,0,0,0c0.2,0.2,0.4,0.3,0.6,0.5v17.3h-5.8v0h0c-1.2,0-2.3,0.5-3.2,1.3c-0.8,0.8-1.3,2-1.3,3.2c0,1.2,0.5,2.3,1.3,3.2c0.8,0.8,2,1.3,3.2,1.3h0v0h19.8v0c1.2,0,2.3-0.5,3.2-1.3C253.1,307.6,253.6,306.5,253.6,305.3z M214.1,249.7h8.2c0,0,0,0,0,0c0,0,0,0,0,0h12.9v21.1L214.1,249.7z M235.2,80.9v25.5h-13c0,0,0,0,0,0s0,0,0,0h-12.7c0.2-0.1,0.3-0.2,0.5-0.4c0,0,0,0,0,0l0,0L235.2,80.9z M209.3,240.7v-35h12.8c0,0,0,0,0.1,0c0,0,0,0,0.1,0h12.9v35H209.3z M235.2,115.4v35.9h-25.8v-35.9H235.2z M209.3,160.3H222c0,0,0,0,0,0c0,0,0,0,0,0h13.1v36.5h-12.9c0,0,0,0,0,0c0,0,0,0,0,0h-12.8V160.3z M228.5,74.7L217.3,86c0,0,0,0,0,0c0,0,0,0,0,0l-7.9,7.9V74.7H228.5z M31.2,261C31.2,261,31.2,261,31.2,261C31.2,261.1,31.2,261.1,31.2,261l-11.4,11.4V266c0,0,0,0,0,0c0,0,0,0,0,0v-16.1h13.5c0,0,0,0,0,0c0,0,0,0,0,0h9.2L31.2,261z M46.8,74.7v21.7L25.1,74.7H46.8z M19.8,240.7V229c0,0,0,0,0,0c0,0,0,0,0,0v-18.4c0,0,0,0,0,0c0,0,0,0,0,0v-4.7h13.6c0,0,0,0,0.1,0c0,0,0,0,0.1,0h13.2v35H19.8z M43.6,106L43.6,106C43.6,106,43.6,106,43.6,106c0.2,0.2,0.4,0.3,0.5,0.4H33.5c0,0,0,0,0,0s0,0,0,0H19.8v-6.7c0,0,0,0,0,0c0,0,0,0,0,0V82.2L43.6,106z M46.8,196.8H33.5c0,0,0,0,0,0c0,0,0,0,0,0H19.8v-4.7c0,0,0,0,0,0c0,0,0,0,0,0v-18.4c0,0,0,0,0,0c0,0,0,0,0,0v-13.2h13.7c0,0,0,0,0,0c0,0,0,0,0,0h13.3V196.8z M19.8,151.3v-14.6c0,0,0,0,0,0c0,0,0,0,0,0v-18.4c0,0,0,0,0,0c0,0,0,0,0,0v-2.7h27v35.9H19.8z");view.el.appendChild(path);return view;}
2496function __cocktailBuilderViewLogo(view){view.el=document.createElementNS("http://www.w3.org/2000/svg","svg");view.el.setAttributeNS(null,'viewBox','0 0 108 32');view.el.setAttributeNS(null,'width','108');view.el.setAttributeNS(null,'height','32');view.el.setAttributeNS(null,'fill','currentColor');if(view.params.classNames){view.el.setAttributeNS(null,'class',view.params.classNames);}
2497var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M42,10.38a.24.24,0,0,0-.33,0,3.16,3.16,0,0,1-2,.75,3,3,0,0,1-2.95-3A3,3,0,0,1,39.61,5a3.1,3.1,0,0,1,2,.78.21.21,0,0,0,.33,0l.8-.83a.24.24,0,0,0,0-.37,4.48,4.48,0,0,0-3.19-1.22,4.75,4.75,0,1,0,0,9.49,4.51,4.51,0,0,0,3.2-1.28.25.25,0,0,0,0-.36Z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M50.11,3.37a4.75,4.75,0,1,0,4.75,4.76A4.73,4.73,0,0,0,50.11,3.37Zm0,7.77a3,3,0,0,1,0-6.06,3,3,0,1,1,0,6.06Z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M65.45,11.58a.26.26,0,0,0,0-.36l-.82-.84a.25.25,0,0,0-.33,0,3.18,3.18,0,0,1-2,.75,3,3,0,0,1-2.95-3A3,3,0,0,1,62.29,5a3.12,3.12,0,0,1,2,.78.21.21,0,0,0,.33,0l.8-.83a.24.24,0,0,0,0-.37,4.48,4.48,0,0,0-3.19-1.22,4.75,4.75,0,1,0,0,9.49A4.51,4.51,0,0,0,65.45,11.58Z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M70.55,12.41v-4L74,12.63a.3.3,0,0,0,.24.1h1.43a.29.29,0,0,0,.24-.46L72.21,7.85,75.65,4a.28.28,0,0,0-.21-.47H74.12a.3.3,0,0,0-.25.13L70.55,7.37V3.81a.32.32,0,0,0-.32-.31H69.07a.31.31,0,0,0-.31.31v8.6a.31.31,0,0,0,.31.32h1.16A.33.33,0,0,0,70.55,12.41Z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M81.93,12.48V5.08h2a.25.25,0,0,0,.25-.25V3.75A.25.25,0,0,0,84,3.5H78.19a.25.25,0,0,0-.25.25V4.83a.25.25,0,0,0,.25.25h2v7.4a.26.26,0,0,0,.25.25h1.22A.25.25,0,0,0,81.93,12.48Z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M92.44,12.46a.37.37,0,0,0,.38.27H94a.23.23,0,0,0,.22-.35L90.13,3.51a.22.22,0,0,0-.22-.14h-.13a.24.24,0,0,0-.23.14l-4.1,8.87a.24.24,0,0,0,.23.35h1.14a.42.42,0,0,0,.39-.27L87.85,11h3.94ZM88.5,9.58l1.29-2.9h0l1.32,2.9Z");view.el.appendChild(path);var rect=document.createElementNS("http://www.w3.org/2000/svg",'rect');rect.setAttributeNS(null,"x","96.97");rect.setAttributeNS(null,"y","3.5");rect.setAttributeNS(null,"width","1.73");rect.setAttributeNS(null,"height","9.23");rect.setAttributeNS(null,"rx","0.25");view.el.appendChild(rect);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M107.75,11.14h-3.36V3.75a.26.26,0,0,0-.25-.25h-1.22a.25.25,0,0,0-.25.25v8.73a.25.25,0,0,0,.25.25h4.83a.25.25,0,0,0,.25-.25V11.4A.26.26,0,0,0,107.75,11.14Z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M40.08,23.85a2.53,2.53,0,0,0,1.46-2.1,2.59,2.59,0,0,0-2.79-2.44h-3a.25.25,0,0,0-.25.25v8.73a.25.25,0,0,0,.25.25h3.19A2.67,2.67,0,0,0,41.8,26,2.36,2.36,0,0,0,40.08,23.85Zm-2.9-3H38.6A1.07,1.07,0,0,1,39.73,22a1.13,1.13,0,0,1-1.13,1.19H37.18Zm1.6,6.1h-1.6V24.64h1.44A1.27,1.27,0,0,1,40,25.78,1.18,1.18,0,0,1,38.78,27Z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M52.16,19.31H50.9a.25.25,0,0,0-.25.25V25a1.92,1.92,0,1,1-3.83,0V19.56a.25.25,0,0,0-.25-.25H45.31a.26.26,0,0,0-.25.25V25a3.68,3.68,0,0,0,7.35,0V19.56A.26.26,0,0,0,52.16,19.31Z");view.el.appendChild(path);var rect=document.createElementNS("http://www.w3.org/2000/svg",'rect');rect.setAttributeNS(null,"x","56.25");rect.setAttributeNS(null,"y","19.31");rect.setAttributeNS(null,"width","1.73");rect.setAttributeNS(null,"height","9.23");rect.setAttributeNS(null,"rx","0.25");view.el.appendChild(rect);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M67,27H63.67v-7.4a.26.26,0,0,0-.25-.25H62.21a.25.25,0,0,0-.25.25v8.73a.25.25,0,0,0,.25.25H67a.25.25,0,0,0,.25-.25V27.21A.25.25,0,0,0,67,27Z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M73.55,19.31H70.43a.25.25,0,0,0-.24.25v8.73a.25.25,0,0,0,.24.25h3.12a4.62,4.62,0,1,0,0-9.23Zm-.15,7.62H71.89v-6H73.4a3,3,0,0,1,0,6Z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M87.11,19.31H81.75a.25.25,0,0,0-.25.25v8.73a.25.25,0,0,0,.25.25h5.36a.26.26,0,0,0,.26-.25V27.21a.26.26,0,0,0-.26-.25h-3.9V24.65h3.26a.25.25,0,0,0,.25-.25V23.3a.26.26,0,0,0-.25-.25H83.21V20.89h3.9a.26.26,0,0,0,.26-.25V19.56A.26.26,0,0,0,87.11,19.31Z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M97.72,22.14a2.86,2.86,0,0,0-2.87-2.83H91.08a.25.25,0,0,0-.25.25v8.73a.25.25,0,0,0,.25.25h1.21a.26.26,0,0,0,.25-.25V24.93H94l1.76,3.49a.23.23,0,0,0,.21.12h1.38a.25.25,0,0,0,.23-.38l-1.81-3.35A2.9,2.9,0,0,0,97.72,22.14Zm-3,1.38H92.55V20.89H94.7A1.32,1.32,0,0,1,96,22.17,1.35,1.35,0,0,1,94.7,23.52Z");view.el.appendChild(path);var path=document.createElementNS("http://www.w3.org/2000/svg",'path');path.setAttributeNS(null,"d","M25.86.32a1.08,1.08,0,0,0-1.54,0L13.09,11.56,1.86.32A1.08,1.08,0,0,0,.32.32a1.08,1.08,0,0,0,0,1.54L5.08,6.62H2V4.21a.44.44,0,0,0-.41-.44.43.43,0,0,0-.43.43v27H.58a.43.43,0,0,0-.44.41A.42.42,0,0,0,.56,32h2A.43.43,0,0,0,3,31.59a.42.42,0,0,0-.42-.44H2v-2l3.75-3.52h0V7.28L12,13.55V29.82H8.27a1.09,1.09,0,0,0-1.09,1.09h0A1.09,1.09,0,0,0,8.27,32h9.64A1.09,1.09,0,0,0,19,30.91h0a1.09,1.09,0,0,0-1.09-1.09H14.18V13.55l6.27-6.27V25.66h0l3.75,3.52v2h-.58a.42.42,0,0,0-.42.44.44.44,0,0,0,.44.41h2a.44.44,0,0,0,.43-.44.44.44,0,0,0-.45-.41h-.55V4.2a.43.43,0,1,0-.85,0V6.
249762H21.1l4.76-4.76A1.08,1.08,0,0,0,25.86.32ZM2,8.06l2.78,2.78H2ZM2,28V25.66H4.49Zm2.9-3.21H2V21h2.9Zm0-4.65H2V16.34h2.9Zm0-4.66H2V11.69h2.9Zm0-6-2-2h2ZM24.2,28l-2.51-2.36H24.2Zm0-17.18H21.42L24.2,8.06ZM21.3,7.47h2.05L21.3,9.52Zm0,4.22h2.9V15.5H21.3Zm0,4.65h2.9v3.82H21.3Zm0,4.66h2.9v3.81H21.3Z");view.el.appendChild(path);return view;}
2498function __cocktailBuilderViewRating(view){view.el=view.newComponent('rating',"DIV");view.el.className="grid-x";if(view.params.heading){var heading=view.newComponent('heading',"DIV");heading.className="cell text-xxsmall alt-font alt-font--spaced text-grey";heading.textContent=view.params.heading;view.el.appendChild(heading);}
2499if(view.params.className){view.el.className+=" "+view.params.className;}
2500for(var x=0;x<=(view.params.rating-1);++x){view.el.appendChild(dg.cbView.generate('icon',{graphic:'star'}).el);}
2501var show_half=!!String(view.params.rating).match(/\.5$/);while(x++<5){var icon=dg.cbView.generate('icon',{graphic:'star-empty'}).el;if(show_half){icon=dg.cbView.generate('icon',{graphic:'star-half'}).el;show_half=false;}
2502view.el.appendChild(icon);}
2503if(view.params.rating==5.5){view.el.appendChild(dg.cbView.generate('icon',{graphic:'plus'}).el);}
2504return view;}
2505function __cocktailBuilderViewSelect(view){view.el=view.newComponent('select',"DIV");view.el.className="cb-form-control cb-form-control--select";if(view.params.info||view.params.error){view.el.className+=" cb-form-control--with-message";}
2506if(view.params.error){view.el.className+=" cb-form-control--with-error";}
2507if(!view.params.label){view.el.className+=" cb-form-control--no-label";}
2508if(view.params.no_validation){view.el.className+=" cb-form-control--no-validation";}
2509if(view.params.classNames){view.el.className+=" "+view.params.classNames;}
2510if(view.params.theme){view.el.className+=" cb-form-control--theme-"+view.params.theme;}
2511if(view.params.disabled){view.el.className+=" cb-form-control--disabled";}
2512var icon=view.newComponent('icon',"DIV");icon.className="cb-form-control__icon";icon.appendChild(dg.cbView.generate('icon',{graphic:((view.params.options||[]).length>1?'arrow-down':'minus')}).el);view.el.appendChild(icon);var id=view.params.id||'select_'+view.params.name;var label_container=view.newComponent('label_container',"DIV");label_container.className="cb-form-control__label-container";view.el.appendChild(label_container);var label_pre=view.newComponent('label_pre',"DIV");label_pre.className="cb-form-control__label-pre";label_container.appendChild(label_pre);if(view.params.label){var label_text=view.newComponent('label_text',"DIV");label_text.className="cb-form-control__label-text";label_container.appendChild(label_text);var label=view.newComponent('label_text',"LABEL");label.className="cb-form-control__label";label.for=id;label.textContent=view.params.label||"";label_text.appendChild(label);}
2513var label_post=view.newComponent('label_post',"DIV");label_post.className="cb-form-control__label-post";label_container.appendChild(label_post);var input=view.newComponent('input',"SELECT");input.id=id;input.className="cb-form-control__input";input.name=view.params.name||"";input.autocomplete="off";if(view.params.placeholder){input.placeholder=view.params.placeholder;}
2514if(view.params.required){input.required=true;}
2515(view.params.attributes||[]).forEach(function(k,v){input[k]=v;});(view.params.dataset||[]).forEach(function(o){var k=Object.keys(o)[0];var v=o[k];input.dataset[k]=v;});if(typeof view.params.onChange==="function"){input.addEventListener('change',view.params.onChange);}
2516if(view.params.disabled){input.disabled=1;}
2517if(view.params.required){input.required=1;}
2518if(view.params.placeholder){var option=document.createElement("OPTION");option.value="";option.textContent=view.params.placeholder;input.appendChild(option);var option=document.createElement("OPTION");option.value="";option.disabled=1;option.textContent="──────────────";input.appendChild(option);}
2519(view.params.options||[]).forEach(function(o){var option=document.createElement("OPTION");option.value=o.value;option.innerHTML=o.text;option.disabled=!!o.disabled;if(view.params.value&&view.params.value==o.value){option.selected=1;}
2520input.appendChild(option);});view.el.appendChild(input);view.presentSaving=presentSaving;view.presentSaved=presentSaved;view.presentReset=presentReset;$(view.el).on({"cb.presentSaving":presentSaving,"cb.presentSaved":presentSaved,"cb.presentReset":presentReset});__cocktailbuilderFormControl($(view.el));return view;function presentReset(){$(view.el).removeClass("cb-form-control--saving cb-form-control--saved");}
2521function presentSaving(){$(view.el).addClass("cb-form-control--saving")
2522.removeClass("cb-form-control--saved");}
2523function presentSaved(){$(view.el).removeClass("cb-form-control--saving")
2524.addClass("cb-form-control--saved");}}
2525function __cocktailBuilderViewTag(view){if(view.params.href){view.el=view.newComponent('el','A');view.el.href=view.params.href;if(view.params.href_target){view.el.target=view.params.href_target;}}
2526else{view.el=view.newComponent('el','DIV');}
2527view.el.className="cb-tag";if(view.params.classNames){view.el.className+=" "+view.params.classNames;}
2528if(view.params.icon){if(!Array.isArray(view.params.icon)){view.params.icon=[view.params.icon];}
2529view.params.icon_tooltip=view.params.icon_tooltip||[];if(!Array.isArray(view.params.icon_tooltip)){view.params.icon_tooltip=[view.params.icon_tooltip];}
2530view.params.icon.forEach(function(i,index){var icon={};icon.graphic=i;if(view.params.text&&(index+1)==view.params.icon.length){icon.label=view.params.text;}
2531if(view.params.icon_tooltip[index]){icon.tooltip=view.params.icon_tooltip[index];}
2532view.el.appendChild(dg.cbView.generate('icon',icon).el);});}
2533else if(view.params.text){view.el.innerHTML=view.params.text;}
2534if(view.params.tooltip){$(view.el).prop("title",view.params.tooltip);$(view.el).data("show-on","medium");$(view.el).data("tooltip-class","cb-tag cb-tag--tooltip cb-js-delete-on-pagination");$(view.el).data("fade-in-duration",0);var tooltip=new Foundation.Tooltip($(view.el));}
2535return view;}
2536function __cocktailBuilderViewTextarea(view){view.el=view.newComponent('textarea',"DIV");view.el.className="cb-form-control cb-form-control--textarea";if(view.params.disabled)view.el.classList.add("cb-form-control--disabled");if(view.params.info||view.params.error){view.el.className+=" cb-form-control--with-message";}
2537if(!view.params.label){view.el.className+=" cb-form-control--no-label";}
2538if(view.params.error){view.el.className+=" cb-form-control--with-error";}
2539if(view.params.no_validation){view.el.className+=" cb-form-control--no-validation";}
2540if(view.params.classNames){view.el.className+=" "+view.params.classNames;}
2541if(view.params.theme){view.el.className+=" cb-form-control--theme-"+view.params.theme;}
2542if(view.params.icon){view.el.className+=" cb-form-control--with-icon";var icon=view.newComponent('icon',"DIV");icon.className="cb-form-control__icon";icon.appendChild(dg.cbView.generate('icon',{graphic:view.params.icon}).el);view.el.appendChild(icon);}
2543var id=view.params.id||'textarea_'+view.params.name;var label_container=view.newComponent('label_container',"DIV");label_container.className="cb-form-control__label-container";view.el.appendChild(label_container);var label_pre=view.newComponent('label_pre',"DIV");label_pre.className="cb-form-control__label-pre";label_container.appendChild(label_pre);if(view.params.label){var label_text=view.newComponent('label_text',"DIV");label_text.className="cb-form-control__label-text";label_container.appendChild(label_text);var label=view.newComponent('label_text',"LABEL");label.className="cb-form-control__label";label.for=id;label.textContent=view.params.label||"";label_text.appendChild(label);}
2544var label_post=view.newComponent('label_post',"DIV");label_post.className="cb-form-control__label-post";label_container.appendChild(label_post);var input=view.newComponent('input',"TEXTAREA");input.id=id;input.className=view.params.disabled?"cb-form-control--disabled cb-form-control__input":"cb-form-control__input";input.name=view.params.name||"";input.rows=view.params.rows||"3";input.value=view.params.value||"";input.disabled=view.params.disabled||false;input.autocomplete="off";if(view.params.placeholder){input.placeholder=view.params.placeholder;}
2545if(view.params.required){input.required=true;}
2546(view.params.attributes||[]).forEach(function(k,v){input[k]=v;});input.addEventListener('input',function(){this.style.minHeight=this.scrollHeight+'px';});view.el.appendChild(input);if(typeof view.params.onChange==="function"){input.addEventListener('change',view.params.onChange);}
2547if(typeof view.params.onInput==="function"){input.addEventListener('input',view.params.onInput);}
2548if(view.params.button&&view.params.disabled!==true){var button_container=view.newComponent('button_container',"DIV");button_container.className="cb-form-control__button-container";if(view.params.button.classNames){button_container.className+=" "+view.params.button.classNames;}
2549view.el.appendChild(button_container);var button=view.newComponent('button',"BUTTON");button.className="cb-form-control__button";button.type=view.params.button.type||"button";button.id=view.params.button.id||'textarea_button_'+id;button.textContent=view.params.button.text||"GO";if(typeof view.params.button.onClick==="function"){button.addEventListener("click",view.params.button.onClick);}
2550button_container.appendChild(button);}
2551view.presentSaving=function(){$(view.el).addClass("cb-form-control--saving")
2552.removeClass("cb-form-control--saved");}
2553view.presentSaved=function(){$(view.el).removeClass("cb-form-control--saving")
2554.addClass("cb-form-control--saved");}
2555__cocktailbuilderFormControl($(view.el));return view;}
2556(function(){"use strict";if($(".button--hover").length){$(".button--hover").each(function(){var $button=$(this);$button.on("click",function(e){if(dg.touch_enabled===false)return false;if($button.hasClass("button--hover")){$button.removeClass("button--hover");dg.service.onNextClickOfNotThis($button[0],function(){$button.addClass("button--hover");},true);}});});}
2557$("[data-update-field]").each(function(){var $el=$(this),$target=$($el.data("update-field")),value=$el.data("update-value"),submit_on_update=!!$el.data("submit-form");if($target.length&&value!==undefined){$el.on("click",function(){$target.val(value);if(submit_on_update===true){var $form=$target.parents("form:first");
2557if($form.length)$form.submit();}});}});$(".form-filter-on-submit").each(function(){var $form=$(this),$elements=$form.find("input, textarea, select"),ignore_values=['','-1',-1],ignore_names=['rating_from','rating_to'];if($elements.length){$form.on("submit",function(){$elements=$form.find("input, textarea, select");$elements.each(function(){var $el=$(this);if($.inArray($el.attr("name"),ignore_names)!==-1||$.inArray($el.val(),ignore_values)!==-1){$el.attr("name","");}});});}});$(".submit-on-change").each(function(){var $el=$(this),$form=$el.parents("form:first");if($form.length){$el.on("change",function(){$form.submit();})}});$(".search-block").each(function(){var $wrapper=$(this),$input=$wrapper.find(".search-block__input:first");$input.on({"focus":function(){$wrapper.addClass("search-block--focus");},"blur":function(){$wrapper.removeClass("search-block--focus");}});$wrapper.on("click",function(){$input.trigger("focus");});});$(".shop-front-switch").each(function(){var $button=$(this),$wrapper=$button.parents(".shop-front-container"),$carousel=$wrapper.siblings(".shop-front-container").addBack(),$next=$wrapper.next(".shop-front-container").length?$wrapper.next(".shop-front-container"):$carousel.first();if($next.length){$button.on("click",function(){$wrapper.addClass("hide");$next.removeClass("hide");});}
2558else{$button.addClass("hide");}});$("[data-toggle-target]").each(function(){var $button=$(this);var $target=$("#"+$button.data("toggle-target"));var toggle_text=$button.data("toggle-text")||null;var toggle_class=$button.data("toggle-class")||null;var toggle_focus_target=$button.data("toggle-focus-target")||null;if(!$target)return;$button.on("click",function(){if($target.hasClass("hide")){$target.removeClass("hide");if(toggle_class){$button.addClass(toggle_class);}
2559if(toggle_focus_target){$("#"+toggle_focus_target).focus();}}
2560else{$target.addClass("hide");if(toggle_class){$button.removeClass(toggle_class);}}
2561if(toggle_text){var text=$button.text();$button.text(toggle_text);toggle_text=text;}});});if(dg.service.elementExists("#global_terms_checkbox")){$("#global_terms_checkbox").parents("form:first").on("submit",function(){if(!$("#global_terms_checkbox").is(":checked")){alert("You must accept our terms & conditions to continue");return false}});}
2562$("[data-comments-block]").each(function(){var $container=$(this),link_table=$container.data("link-table"),link_id=$container.data("link-id");if(link_id&&link_table){var comments=new __Comments($container,link_table,link_id);}});$(".js-toggle-on-submit").each(function(){var $block=$(this),$form=$block.parents("form:first"),action=$block.data("action");if($form&&(action=="hide"||action=="show")){if(action==="show"){$block.addClass("hide");}
2563$form.on("submit",function(){if(action==="hide"){$block.addClass("hide");}
2564else{$block.removeClass("hide");}});}});$(".shop-category-search").each(function(i){var $container=$(this),$select=$container.find(".shop-category-search__select[data-index='0']"),$cat_id=$container.find("input[name='cat_id']"),$table_id=$container.find("input[name='cat_tid']"),generation=!$container.hasClass("shop-category-search--no-generation");if($select&&$cat_id&&$table_id){$container.find(".shop-category-search__select").on("change",selectChange);}
2565function selectChange(){var $option=$(this).find(":selected"),index=$(this).data("index")||"0",cat_id=$option.data("cat-id"),tid=$option.data("tid"),params={},$parent=$select;if(index>0){$parent=$container.find("select[data-index='"+index+"']");}
2566$container.find(".shop-category-search__select").each(function(x){if($(this).data("index")&&$(this).data("index")>index){$(this).remove();}});$cat_id.val(cat_id);$table_id.val(tid);if(generation===false||$option.data("base"))return;params.tid=tid;params.pid=cat_id;params.filterzero=1;dg.api.listShopCategories(params,function(response){if(Array.isArray(response)&&response.length>1){var select=document.createElement("SELECT");select.className="shop-category-search__select no-margin-bottom margin-top";select.dataset.index=(index+1);var option=document.createElement("OPTION");option.textContent="All "+$parent.find(":selected")[0].textContent.toLowerCase().replace(/^all /,' ').replace(/\s\(\d+\)/,'');option.dataset.catId=$parent.find(":selected").data("cat-id");option.dataset.tid=$parent.find(":selected").data("tid");option.dataset.base=1;
2566select.appendChild(option);for(var c=0;c<response.length;++c){var option=document.createElement("OPTION");option.textContent=response[c].name+" ("+response[c].item_count+")";option.dataset.catId=response[c].matrix.id;option.dataset.tid=response[c].matrix.tid;select.appendChild(option);}
2567$(select).insertAfter($parent);$(select).on("change",selectChange);}});}});$(".js-gb-delivery-warning-button").each(function(){var $button=$(this);dg.service.attachDeliveryWarning($button);});dg.ui.cb_item_modal={};dg.ui.cb_item_modal_loading_icon=null;$(".cb-js-item-personalise").each(function(){var $button=$(this);var $button_icon=$button.find(".cb-button__icon:first");$button.on("click",function(){if(!dg.ui.cb){new __cocktailBuilderAction();}
2568var link_table=$button.data("link-table"),link_id=$button.data("link-id"),focus=$button.data("focus");if(!link_table||!link_id)return false;var id=link_table+"_"+link_id;if(dg.ui.cb_item_modal[id]){if(dg.ui.cb_item_modal[id].ready){dg.ui.cb_item_modal[id].item.showModal(focus);}}
2569else{if(dg.ui.cb_item_modal_loading_icon===null){dg.ui.cb_item_modal_loading_icon=dg.cbView.generate('icon',{graphic:'loading'}).el;}
2570if($button_icon.length>0){var button_icon_html=$button.find(".cb-button__icon").html();$button_icon.html(dg.ui.cb_item_modal_loading_icon).prop('disabled',true);}
2571else if($button.data("append-loader")){var loader_container=document.createElement("SPAN");loader_container.className="cb-button__icon";loader_container.appendChild(dg.ui.cb_item_modal_loading_icon);dg.ui.cb_item_modal_loading_icon=loader_container;$button.append(dg.ui.cb_item_modal_loading_icon)}
2572var modal={};modal.link_table=link_table;modal.link_id=link_id;modal.focus=focus;modal.ready=false;modal.onReady=function(){if($button_icon.length>0){$button_icon.html(button_icon_html).prop('disabled',false);}
2573else if($button.data("append-loader")){dg.ui.cb_item_modal_loading_icon.remove();}
2574modal.ready=true;};dg.ui.cb_item_modal[id]=dg.cbView.generate('item-manage-modal',modal);}});});$(".cb-js-button-favourite").each(function(){new __cocktailBuilderFavouriteButton($(this));});$(".cb-js-button-wish-list").each(function(){new __cocktailBuilderWishListButton($(this));});$("a[data-hash-anchor-small]").on("click",function(){if(dg.viewport.media_query==="small"){$(this).attr("href",$(this).attr("href")+"#"+$(this).data("hash-anchor-small"));}
2575return true;});$(".cb-form-login-with").each(function(){var $container=$(this);var $buttons=$container.find(".cb-form-login-with__controls").find(".cb-button[data-control]");var $present_container=$container.find(".cb-form-login-with__present");var $present=$present_container.find("> *");$buttons.each(function(){var $button=$(this);var $target=$container.find($button.data("control"));$button.on("click",function(){$present_container.removeClass("hide");$present.each(function(){$(this).addClass("hide");});$target.removeClass("hide");$buttons.each(function(){$(this).removeClass().addClass("cb-button cb-button--off");});$button.removeClass("cb-button--off").addClass($button.data("active-class"));});});});$(".cb-form-control").each(function(i){__cocktailbuilderFormControl($(this));});$(".cb-form-checkbox").each(function(){__cocktailbuilderFormCheckbox($(this));});$(".cb-block-button").each(function(){var $container=$(this);var $button=$container.find(".cb-block-button__button");$button.on("click",function(){$container.toggleClass("cb-block-button--active");$container.trigger($container.hasClass("cb-block-button--active")?"cb.open":"cb.close");});$container.on("cb.call.open",function(){$container.addClass("cb-block-button--active");});$container.on("cb.call.close",function(){$container.removeClass("cb-block-button--active");});});$(".cb-button").each(function(){var $button=$(this);var $toggle=$button.find(".cb-button__toggle");if($toggle.length>0){var $checkbox=$toggle.find("input[type='checkbox']");evaluateToggle();$button.on("click",function(){$checkbox.prop("checked",!$checkbox.prop("checked")).trigger("change");evaluateToggle();});$checkbox.on("change",evaluateToggle);}
2576function evaluateToggle(){if($checkbox.prop("checked")){$button.removeClass("cb-button--off");}
2577else{$button.addClass("cb-button--off");}}});$(".cb-message-dismiss").each(function(){var $button=$(this);var $message=$button.parents(".cb-section:first");var session_key=$button.data("key");var redir=$button.data("redir");$button.on("click",function(){$button.prop("disabled",true).off();if(session_key){$button.empty().html("Please wait...");dg.cbApi.post('dismiss-message',{key:session_key},function(){if(redir){window.location=redir;}
2578else{$message.remove();}});}
2579else{$message.remove();if(redir){window.location=redir;}}});});if($("#js-yield-group").length>0){dg.ui.cocktail_yield={};dg.ui.cocktail_yield.form=$("#js-yield-form");dg.ui.cocktail_yield.group=$("#js-yield-group");dg.ui.cocktail_yield.buttons=dg.ui.cocktail_yield.group.find("button");dg.ui.cocktail_yield.input_hidden=$("#js-yield-hidden-input");dg.ui.cocktail_yield.label=dg.ui.cocktail_yield.group.find(".cb-button-group__label");dg.ui.cocktail_yield.loading=$("#js-yield-loading");const minYield=1;const maxYield=20;let submitTimeout=null;dg.ui.cocktail_yield.buttons.on("click",function(){const action=$(this).val();let currentValue=parseInt(dg.ui.cocktail_yield.input_hidden.val(),10)||minYield;if(action==="increment"){currentValue=Math.min(currentValue+1,maxYield);}else if(action==="decrement"){currentValue=Math.max(currentValue-1,minYield);}
2580dg.ui.cocktail_yield.input_hidden.val(currentValue);dg.ui.cocktail_yield.label.text(`× ${currentValue}`);dg.ui.cocktail_yield.loading.show();dg.ui.cocktail_yield.loading.html('<svg class="svg-icon svg-icon--loading" style="width: 0.75em; height: 0.75em; margin-left: 3.6rem;"><use xlink:href="#icon-loading"></use></svg>');if(submitTimeout){clearTimeout(submitTimeout);}
2581submitTimeout=setTimeout(()=>{dg.ui.cocktail_yield.form.submit();},1000);});}
2582if($(".shop-item--gratis-collection").length>0){$(".shop-item--gratis-collection").each(function(){var $self=$(this),$radio=$self.find("input[type='radio']"),$siblings=$("input[type='radio'][name='"+$radio.attr("name")+"']").not($radio);$radio.on("change",function(){$siblings.parents(".shop-item--gratis-collection").removeClass("active");if($radio.prop("checked")){$self.addClass("active");}});});}
2583$("[data-onsubmit-open]").each(function(){var $modal=$("#"+$(this).data("onsubmit-open"));if($modal.length>0){$(this).on("submit",function(){$modal.foundation('open');});}});if($(".password-toggle").length>0){$(".password-toggle").each(function(){var $self=$(this),$input=$self.find("input[type='password']");$input.addClass("password-toggle-input");var button=document.createElement("button");button.setAttribute("type","button");button.className="password-toggle-button";var icon=dg.service.generateView('icon',{'graphic':'public','size':'large'});button.append(icon.el);$self.append(button);$(button).on("click",function(){var password_toggle_graphic=$(this).find("use");var type=$input.attr("type")==="password"?"text":"password";$input.attr("type",type);password_toggle_graphic.attr("href","#icon-"+(type==='text'?'private':'public'));});});}
2584if($('#js-button-one-click-subscribe').length>0){let one_click_subscribe_submit=false;$('#js-button-one-click-subscribe').on('click',function(){if(one_click_subscribe_submit!==false)return false;one_click_subscribe_submit=true;let $button=$(this);$button.prop('disabled',true);let icon_container=document.createElement('SPAN');icon_container.className='cb-button__icon';icon_container.appendChild(dg.service.generateView('icon',{'graphic':'loading'}).el);$button.empty().append(icon_container);let one_click_subscribe_response=document.createElement('DIV');one_click_subscribe_response.className='footer__upsell-response';
2584let url=window.location.origin+'/api/dev/frontend/subscribe/global';fetch(url,{method:'POST',mode:'cors'}).then(response=>response.json()).then(body=>{setTimeout(function(){if(body.status=='error'){one_click_subscribe_response.className+=' error';one_click_subscribe_response.innerHTML='Something went wrong trying to create your subscription. Please <a class="cb-link" href="/your-account/newsletters">go here to manually update</a> the newsletters your receive.';}
2585else{one_click_subscribe_response.innerHTML='Success! You have been subscribed to the Difford&rsquo;s Guide newsletter - keep an eye on your inbox for updates.';}
2586$(one_click_subscribe_response).insertBefore($button);$button.remove();},300);}).catch(function(){setTimeout(function(){one_click_subscribe_response.className+=' error';one_click_subscribe_response.innerHTML='Something went wrong trying to create your subscription. Please <a class="cb-link" href="/your-account/newsletters">go here to manually update</a> the newsletters your receive.';$(one_click_subscribe_response).insertBefore($button);$button.remove();},300);});});}
2587if($('#js-container-subscribe-upsell').length>0){$('#js-button-subscribe-upsell-dismiss').on('click',function(){dg.cookies.set('diffords_subscribe_upsell_dismissed',1,30);document.cookie="diffords_subscribe_upsell_counter=; expires=Thu, 01 Jan 1970 00:00:01 GMT; path=/; secure; samesite=lax; domain=."+window.location.host+";"
2588$('#js-container-subscribe-upsell').hide();});}
2589if($('.banner-loader').length>0){checkBannerLoad();window.addEventListener('scroll',checkBannerLoad);window.addEventListener('resize',dg.service.debounce(checkBannerLoad,50));}
2590if($('#js-alert-flash-message').length>0){setTimeout(function(){$('#js-alert-flash-message')[0].remove();},3000);}
2591function checkBannerLoad(){$('.banner-loader--pre').each(function(banner){banner=this;if(dg.service.inViewport(banner)){var pixel=banner.querySelector('.banner-loader__pixel');pixel.src=pixel.dataset.src;pixel.removeAttribute('data-src');banner.classList.remove('banner-loader--pre');}});}
2592if($('.shopify-multi').length>0){$('.shopify-multi').each(function(){var ids=[];var $checkboxes=$(this).find('.shopify-multi__item');var $shopify_cart_button=$(this).find('.shopify-multi__submit');$checkboxes.on('change',collateIds);collateIds();function collateIds(){ids=[];var checked=[];$checkboxes.each(function(){if($(this).prop('checked')){ids.push($(this).val());checked.push($(this));}});var cart_button_href;if(ids.length===1){cart_button_href=checked[0].data('href');}else{cart_button_href="https://diffords.shop/cart/";cart_button_href+=ids.join(':1,')+':1';cart_button_href+='?storefront=true';}
2593$shopify_cart_button.prop('href',cart_button_href);}});}})();function __cocktailBuilderCommonEvents(){$(".cb-form-login-with").each(function(){var $container=$(this);var $buttons=$container.find(".cb-form-login-with__controls").find(".cb-button[data-control]");var $present_container=$container.find(".cb-form-login-with__present");var $present=$present_container.find("> *");$buttons.each(function(){var $button=$(this);var $target=$container.find($button.data("control"));$button.on("click",function(){$present_container.removeClass("hide");$present.each(function(){$(this).addClass("hide");});$target.removeClass("hide");$buttons.each(function(){$(this).removeClass().addClass("cb-button cb-button--off");});$button.removeClass("cb-button--off").addClass($button.data("active-class"));});});});$(".cb-form-control").each(function(i){__cocktailbuilderFormControl($(this));});$(".cb-form-checkbox").each(function(){__cocktailbuilderFormCheckbox($(this));});$(".cb-block-button").each(function(){var $container=$(this);var $button=$container.find(".cb-block-button__button");$button.on("click",function(){$container.toggleClass("cb-block-button--active");$container.trigger($container.hasClass("cb-block-button--active")?"cb.open":"cb.close");});$container.on("cb.call.open",function(){$container.addClass("cb-block-button--active");});$container.on("cb.call.close",function(){$container.removeClass("cb-block-button--active");});});$(".cb-button").each(function(){var $button=$(this);var $toggle=$button.find(".cb-button__toggle");if($toggle.length>0){var $checkbox=$toggle.find("input[type='checkbox']");evaluateToggle();$button.on("click",function(){$checkbox.prop("checked",!$checkbox.prop("checked")).trigger("change");evaluateToggle();});$checkbox.on("change",evaluateToggle);}
2594function evaluateToggle(){if($checkbox.prop("checked")){$button.removeClass("cb-button--off");}
2595else{$button.addClass("cb-button--off");}}});$(".cb-message-dismiss").each(function(){var $button=$(this);var $message=$button.parents(".cb-section:first");var session_key=$button.data("key");var redir=$button.data("redir");$button.on("click",function(){$button.prop("disabled",true).off();if(session_key){$button.empty().html("Please wait...");dg.cbApi.post('dismiss-message',{key:session_key},function(){if(redir){window.location=redir;}
2596else{$message.remove();}});}
2597else{$message.remove();if(redir){window.location=redir;}}});});}

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.