(function(b){var a=0;b.widget("ui.tooltip",{options:{items:"[title]",content:function(){return b(this).attr("title")},position:{my:"left center",at:"right center",offset:"15 0"}},_create:function(){var c=this;this.tooltip=b("<div></div>").attr("id","ui-tooltip-"+a++).attr("role","tooltip").attr("aria-hidden","true").addClass("ui-tooltip ui-widget ui-corner-all ui-widget-content").appendTo(document.body).hide();this.tooltipContent=b("<div></div>").addClass("ui-tooltip-content").appendTo(this.tooltip);this.opacity=this.tooltip.css("opacity");this.element.bind("focus.tooltip mouseover.tooltip",function(d){c.open(d)}).bind("blur.tooltip mouseout.tooltip",function(d){c.close(d)})},enable:function(){this.options.disabled=false},disable:function(){this.options.disabled=true},_destroy:function(){this.tooltip.remove()},widget:function(){return this.element.pushStack(this.tooltip.get())},open:function(e){var f=b(e&&e.target||this.element).closest(this.options.items);if(!f.length){return}if(this.current&&this.current[0]==f[0]){return}var c=this;this.current=f;this.currentTitle=f.attr("title");var d=this.options.content.call(f[0],function(g){setTimeout(function(){if(c.current==f){c._open(e,f,g)}},13)});if(d){c._open(e,f,d)}},_open:function(d,e,c){if(!c){return}e.attr("title","");if(this.options.disabled){return}this.tooltipContent.html(c);this.tooltip.css({top:0,left:0}).show().position(b.extend({of:e},this.options.position)).hide();this.tooltip.attr("aria-hidden","false");e.attr("aria-describedby",this.tooltip.attr("id"));this.tooltip.stop(false,true).fadeIn();this._trigger("open",d)},close:function(c){if(!this.current){return}var d=this.current;this.current=null;d.attr("title",this.currentTitle);if(this.options.disabled){return}d.removeAttr("aria-describedby");this.tooltip.attr("aria-hidden","true");this.tooltip.stop(false,true).fadeOut();this._trigger("close",c)}});b.ui.tooltip.version="@VERSION"})(jQuery);(function(a){a.fn.replaceText=function(d,e,f){return this.each(function(){var c=this.firstChild,b,h,i=[];if(c){do{if(c.nodeType===3){b=c.nodeValue;h=b.replace(d,e);if(h!==b){if(!f&&/</.test(h)){a(c).before(h);i.push(c)}else{c.nodeValue=h}}}}while(c=c.nextSibling)}i.length&&a(i).remove()})}})(jQuery);(function(V){var E=V.fn.domManip,S="_tmplitem",F=/^[^<]*(<[\w\W]+>)[^>]*$|\{\{\! /,U={},Q={},R,G={key:0,data:{}},O=0,T=0,K=[];function P(f,h,b,a){var j={data:a||(h?h.data:{}),_wrap:h?h._wrap:null,tmpl:null,parent:h||null,nodes:[],calls:B,nest:z,wrap:y,html:A,update:C};f&&V.extend(j,f,{nodes:[],parent:h});if(b){j.tmpl=b;j._ctnt=j._ctnt||j.tmpl(V,j);j.key=++O;(K.length?Q:U)[O]=j}return j}V.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){V.fn[a]=function(r){var q=[],o=V(r),e,p,c,d,f=this.length===1&&this[0].parentNode;R=U||{};if(f&&f.nodeType===11&&f.childNodes.length===1&&o.length===1){o[b](this[0]);q=this}else{for(p=0,c=o.length;p<c;p++){T=p;e=(p>0?this.clone(true):this).get();V.fn[b].apply(V(o[p]),e);q=q.concat(e)}T=0;q=this.pushStack(q,a,o.selector)}d=R;R=null;V.tmpl.complete(d);return q}});V.fn.extend({tmpl:function(e,f,a){return V.tmpl(this[0],e,f,a)},tmplItem:function(){return V.tmplItem(this[0])},template:function(a){return V.template(a,this[0])},domManip:function(n,a,b){if(n[0]&&n[0].nodeType){var m=V.makeArray(arguments),k=n.length,c=0,e;while(c<k&&!(e=V.data(n[c++],"tmplItem"))){}if(k>1){m[0]=[V.makeArray(n)]}if(e&&T){m[2]=function(d){V.tmpl.afterManip(this,d,b)}}E.apply(this,m)}else{E.apply(this,arguments)}T=0;!R&&V.tmpl.complete(U);return this}});V.extend({tmpl:function(i,f,g,l){var b,a=!l;if(a){l=G;i=V.template[i]||V.template(null,i);Q={}}else{if(!i){i=l.tmpl;U[l.key]=l;l.nodes=[];l.wrapped&&I(l,l.wrapped);return V(N(l,null,l.tmpl(V,l)))}}if(!i){return[]}if(typeof f==="function"){f=f.call(l||{})}g&&g.wrapped&&I(g,g.wrapped);b=V.isArray(f)?V.map(f,function(c){return c?P(g,l,i,c):null}):[P(g,l,i,f)];return a?V(N(l,null,b)):b},tmplItem:function(a){var d;if(a instanceof V){a=a[0]}while(a&&a.nodeType===1&&!(d=V.data(a,"tmplItem"))&&(a=a.parentNode)){}return d||G},template:function(d,a){if(a){if(typeof a==="string"){a=H(a)}else{if(a instanceof V){a=a[0]||{}}}if(a.nodeType){a=V.data(a,"tmpl")||V.data(a,"tmpl",H(a.innerHTML))}return typeof d==="string"?(V.template[d]=a):a}return d?typeof d!=="string"?V.template(null,d):V.template[d]||V.template(null,F.test(d)?d:V(d)):null},encode:function(b){return(""+b).split("<").join("&lt;").split(">").join("&gt;").split('"').join("&#34;").split("'").join("&#39;")}});V.extend(V.tmpl,{tag:{tmpl:{_default:{$2:"null"},open:"if($notnull_1){_=_.concat($item.nest($1,$2));}"},wrap:{_default:{$2:"null"},open:"$item.calls(_,$1,$2);_=[];",close:"call=$item.calls();_=call._.concat($item.wrap(call,_));"},each:{_default:{$2:"$index, $value"},open:"if($notnull_1){$.each($1a,function($2){with(this){",close:"}});}"},"if":{open:"if(($notnull_1) && $1a){",close:"}"},"else":{_default:{$1:"true"},open:"}else if(($notnull_1) && $1a){"},html:{open:"if($notnull_1){_.push($1a);}"},"=":{_default:{$1:"$data"},open:"if($notnull_1){_.push($.encode($1a));}"},"!":{open:""}},complete:function(){U={}},afterManip:function(c,a,h){var g=a.nodeType===11?V.makeArray(a.childNodes):a.nodeType===1?[a]:[];h.call(c,a);J(g);T++}});function N(i,d,h){var a,j=h?V.map(h,function(b){return typeof b==="string"?i.key?b.replace(/(<\w+)(?=[\s>])(?![^>]*_tmplitem)([^>]*)/g,"$1 "+S+'="'+i.key+'" $2'):b:N(b,i,b._ctnt)}):i;if(d){return j}j=j.join("");j.replace(/^\s*([^<\s][^<]*)?(<[\w\W]+>)([^>]*[^>\s])?\s*$/,function(b,l,g,k){a=V(g).get();J(a);if(l){a=M(l).concat(a)}if(k){a=a.concat(M(k))}});return a?a:M(j)}function M(d){var a=document.createElement("div");a.innerHTML=d;return V.makeArray(a.childNodes)}function H(a){return new Function("jQuery","$item","var $=jQuery,call,_=[],$data=$item.data;with($data){_.push('"+V.trim(a).replace(/([\\'])/g,"\\$1").replace(/[\r\t\n]/g," ").replace(/\$\{([^\}]*)\}/g,"{{= $1}}").replace(/\{\{(\/?)(\w+|.)(?:\(((?:[^\}]|\}(?!\}))*?)?\))?(?:\s+(.*?)?)?(\(((?:[^\}]|\}(?!\}))*?)\))?\s*\}\}/g,function(k,n,o,u,w,v,t){var p=V.tmpl.tag[o],q,s,r;if(!p){throw"Template command not found: "+o}q=p._default||[];if(v&&!/\w$/.test(w)){w+=v;v=""}if(w){w=L(w);t=t?","+L(t)+")":v?")":"";s=v?w.indexOf(".")>-1?w+v:"("+w+").call($item"+t:w;r=v?s:"(typeof("+w+")==='function'?("+w+").call($item):("+w+"))"}else{r=s=q.$1||"null"}u=L(u);return"');"+p[n?"close":"open"].split("$notnull_1").join(w?"typeof("+w+")!=='undefined' && ("+w+")!=null":"true").split("$1a").join(r).split("$1").join(s).split("$2").join(u?u.replace(/\s*([^\(]+)\s*(\((.*?)\))?/g,function(g,h,e,f){f=f?","+f+")":e?")":"";return f?"("+h+").call($item"+f:g}):q.$2||"")+"_.push('"})+"');}return _;")}function I(d,a){d._wrap=N(d,true,V.isArray(a)?a:[F.test(a)?a:V(a).html()]).join("")}function L(b){return b?b.replace(/\\'/g,"'").replace(/\\\\/g,"\\"):null}function D(c){var d=document.createElement("div");d.appendChild(c.cloneNode(true));return d.innerHTML}function J(b){var c="_"+T,g,h,f={},r,a,q;for(r=0,a=b.length;r<a;r++){if((g=b[r]).nodeType!==1){continue}h=g.getElementsByTagName("*");for(q=h.length-1;q>=0;q--){d(h[q])}d(g)}function d(s){var v,t=s,n,u,l;if(l=s.getAttribute(S)){while(t.parentNode&&(t=t.parentNode).nodeType===1&&!(v=t.getAttribute(S))){}if(v!==l){t=t.parentNode?t.nodeType===11?0:t.getAttribute(S)||0:0;if(!(u=U[l])){u=Q[l];u=P(u,U[t]||Q[t],null,true);u.key=++O;U[O]=u}T&&w(l)}s.removeAttribute(S)}else{if(T&&(u=V.data(s,"tmplItem"))){w(u.key);U[u.key]=u;t=V.data(s.parentNode,"tmplItem");t=t?t.key:0}}if(u){n=u;while(n&&n.key!=t){n.nodes.push(s);n=n.parent}delete u._ctnt;delete u._wrap;V.data(s,"tmplItem",u)}function w(e){e=e+c;u=f[e]=f[e]||P(u,U[u.parent.key+c]||u.parent,null,true)}}}function B(f,g,h,e){if(!f){return K.pop()}K.push({_:f,tmpl:g,item:this,data:h,options:e})}function z(e,f,a){return V.tmpl(V.template(e),f,a,this)}function y(a,e){var f=a.options||{};f.wrapped=e;return V.tmpl(V.template(a.tmpl),a.data,f,a.item)}function A(e,f){var a=this._wrap;return V.map(V(V.isArray(a)?a.join(""):a).filter(e||"*"),function(b){return f?b.innerText||b.textContent:b.outerHTML||D(b)})}function C(){var a=this.nodes;V.tmpl(null,null,null,this).insertBefore(a[0]);V(a).remove()}})(jQuery);jQuery(document).ready(function(a){a(".menu_btn[target]").each(function(b,c){var d=a(c).attr("target");a(c).click(function(){window.location=d})});a("#menu_on").hide().each(function(){var b=a(this).text();if(b===""){b="home"}a("#menu_"+b).removeClass("menu_off").addClass("menu_on")});if(a("#menu_deposit").hasClass("menu_on")){a("#submenu_deposit").show()}if(a("#menu_request").hasClass("menu_on")){a("#submenu_request").show()}if(a("#menu_ordering").hasClass("menu_on")){a("#submenu_ordering").show()}if(a("#menu_tools").hasClass("menu_on")){a("#submenu_tools").show()}if(a("#menu_about").hasClass("menu_on")){a("#submenu_about").show()}a("iframe.auto-adjust").load(function(){if(a(this).contents().find("body")){var c=a(this).contents().find("body").width();var e=a(this).contents().find("body").height();var d=(c-a("#container_body").width())/2;a("#container_body").width(c+20);var f=a("#container_main").offset().left;var b=a("#container_main").offset();if(f<d+20){f=20}else{f=f-d}b.left=f;a("#container_main").offset(b)}})});jQuery(document).ready(function(b){b("#no-js-warning").hide();function d(e){if(b("#allow-js-alert").text()=="0"){return true}var f=b(this).attr("message");if(f===undefined||f===""){f="Are you sure you want to continue?"}return confirm(f)}function a(e){var f=b(this).attr("require");if(f!==undefined&&f!==""){if(b("input[name='"+f+"']:checked").length===0){alert("Please select items first");return false}}return true}b(".confirm-on-submit").submit(d);b(".confirm-on-click").click(d);b(".require-checked-on-submit").submit(a);b(".require-checked-on-click").click(a);b(".submit-button").click(function(e){e.preventDefault();b(this).parents("form").submit()});b(".print-link").click(function(e){e.preventDefault();window.print()});b("#message-dialog").show();window.setTimeout(function(){b("#message-dialog").hide()},8000);b("#message-dialog-close a").click(function(e){e.preventDefault();b("#message-dialog").hide()});b(".ahah").each(function(){b(this).removeClass("ahah");b(this).load(b(this).attr("target"))});b(".help-text").each(function(){var f=this;var e=b('<p><a href="#">Close</a></p>').find("a").click(function(g){g.preventDefault();b(f).hide()});b(f).prepend(e)}).hide();b(".help-link").click(function(e){e.preventDefault();var g=b(e.target).attr("help");b("#"+g).appendTo(b(e.target).parent()).show()});b(".checkall").click(function(){b(this).parents("form").find(":checkbox").attr("checked",true)});b(".checknone").click(function(){b(this).parents("form").find(":checkbox").attr("checked",false)});b(":checkbox").click(function(g){var l=this;if(g.shiftKey){var j=b(g.target).parents("tr");var f=b(":checkbox",j).index(l);var i=b(g.target).parents("table");var e=b("tr",i).index(j);var h=b(g.target).attr("checked");var k=true;b(b("tr:lt("+e+")",i).get().reverse()).each(function(){if(k){var m=b(this).find(":checkbox:eq("+f+")").attr("checked");if(h==m){k=false}else{b(this).find(":checkbox:eq("+f+")").attr("checked",h)}}})}});b(".toggle-link").click(function(e){e.preventDefault();b("#"+b(this).attr("toggle")).toggle()});b(".also-toggle").click(function(e){b("#"+b(this).attr("toggle")).toggle()});b(".need-csrf").append(b("#csrf-token").clone().removeAttr("id"));b(".maybe-empty").each(function(){var e=b.trim(b(this).text());if(e.length===0){var f=b(this).attr("ifempty");if(!f){f="None"}b(this).append("<em>"+f+"</em>")}});b(".ajax").click(function(f){f.preventDefault();var g=b(this).attr("href");var e=b(this).attr("switch-on").split(" ");var i=b(this).attr("switch-off").split(" ");var j=b(this).attr("change");var h=b(this).attr("change-to");b.ajax({url:g,success:function(){for(var k=0;k<i.length;k++){if(i[k]!==""){b("#"+i[k]).hide()}}for(var k=0;k<e.length;k++){if(e[k]!==""){b("#"+e[k]).fadeIn()}}if(j!==""){b("#"+j).text(h)}}})});b("iframe.auto-adjust").load(function(){if(b(this).contents().find("body")){var e=b(this).contents().find("body").width();var f=b(this).contents().find("body").height();b(this).width(e+20);b(this).height(f+20)}});var c="instance_id_None";b(".more-inputs").each(function(){var e=this;b("."+c,e).hide();b("."+c,e).first().show().removeClass(c);b(".show-more",e).each(function(){var g=this;var f=b(g).parents(".more-inputs").find("."+c);if(f.length===0){b(g).remove()}});b(".show-more",e).click(function(g){g.preventDefault();var h=this;b(h).parents(".more-inputs").find("."+c).first().show().removeClass(c);var f=b(h).parents(".more-inputs").find("."+c);if(f.length===0){b(h).remove()}})});b(".sort-table").each(function(){var f=this;var e=b(f).attr("sort").split(",");b("tr:gt(0)",f).sortElements(function(p,o){for(var l=0;l<e.length;l++){var j=1;var k=e[l];if(k[0]=="-"){k=k.substring(1);j=-1}var n=b("td:eq("+k+")",p).text();var m=b("td:eq("+k+")",o).text();var h=parseInt(n,10);var g=parseInt(m,10);if(h&&g){n=h;m=g}if(n>m){return j}else{if(n<m){return -1*j}}}return -1})});b(".summarize-table").each(function(){var r=this;var u=b(r).attr("summarize").split(",");for(var n=0;n<u.length;n++){var f=u[n];var q=b("tr:eq(0) th:eq("+f+")",r).text();var p=[];var t=[];b("tr:gt(0)",r).each(function(){var j=this;var k=b("td:eq("+f+")",j);if(k&&b(k).text()){var i=b.trim(b(k).text());p.push(i);t.push(i)}});b.unique(t);var m=[];var o=[];for(var l=0;l<t.length;l++){var h=0;for(var g=0;g<m.length;g++){if(m[g]===t[l]){h=1}}if(h){continue}var e=0;for(var g=0;g<p.length;g++){if(p[g]===t[l]){e++}}m.push(t[l]);o.push(t[l]+" ("+e+")")}b("<p>"+q+": "+o.join(", ")+"</p>").insertBefore(b(r))}});b(".spinner-after-post").click(function(e){var f=this;b('<img src="/static/images/spinner.gif" />').insertAfter(f);b(f).hide()});b(".green-button, .red-button, .button-1, .button-2").click(function(e){var f=b("a",this).attr("href");if(f){window.location=f}})});jQuery(document).ready(function(a){a(".add-to-cart-link").each(function(){var b=this;var c=a(b).attr("href");var d=a(b).attr("item");a(b).click(function(e){e.preventDefault();a.ajax({url:"/shopping/cart?ajax=1&item="+d,success:function(g){var f=window.location;window.location=f},error:function(h,f,g){window.location=c}})})})});jQuery.cookie=function(d,e,b){if(arguments.length>1&&String(e)!=="[object Object]"){b=jQuery.extend({},b);if(e===null||e===undefined){b.expires=-1}if(typeof b.expires==="number"){var g=b.expires,c=b.expires=new Date();c.setDate(c.getDate()+g)}e=String(e);return(document.cookie=[encodeURIComponent(d),"=",b.raw?e:cookie_encode(e),b.expires?"; expires="+b.expires.toUTCString():"",b.path?"; path="+b.path:"",b.domain?"; domain="+b.domain:"",b.secure?"; secure":""].join(""))}b=e||{};var a,f=b.raw?function(h){return h}:decodeURIComponent;return(a=new RegExp("(?:^|; )"+encodeURIComponent(d)+"=([^;]*)").exec(document.cookie))?f(a[1]):null};function cookie_encode(b){var a=encodeURIComponent(b);var c=a.replace(/(%7B|%7D|%3A|%22|%23|%5B|%5D)/g,function(d){return decodeURIComponent(d)});return c}var JSON;if(!JSON){JSON={}}(function(){function f(n){return n<10?"0"+n:n}if(typeof Date.prototype.toJSON!=="function"){Date.prototype.toJSON=function(key){return isFinite(this.valueOf())?this.getUTCFullYear()+"-"+f(this.getUTCMonth()+1)+"-"+f(this.getUTCDate())+"T"+f(this.getUTCHours())+":"+f(this.getUTCMinutes())+":"+f(this.getUTCSeconds())+"Z":null};String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf()}}var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},rep;function quote(string){escapable.lastIndex=0;return escapable.test(string)?'"'+string.replace(escapable,function(a){var c=meta[a];return typeof c==="string"?c:"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+string+'"'}function str(key,holder){var i,k,v,length,mind=gap,partial,value=holder[key];if(value&&typeof value==="object"&&typeof value.toJSON==="function"){value=value.toJSON(key)}if(typeof rep==="function"){value=rep.call(holder,key,value)}switch(typeof value){case"string":return quote(value);case"number":return isFinite(value)?String(value):"null";case"boolean":case"null":return String(value);case"object":if(!value){return"null"}gap+=indent;partial=[];if(Object.prototype.toString.apply(value)==="[object Array]"){length=value.length;for(i=0;i<length;i+=1){partial[i]=str(i,value)||"null"}v=partial.length===0?"[]":gap?"[\n"+gap+partial.join(",\n"+gap)+"\n"+mind+"]":"["+partial.join(",")+"]";gap=mind;return v}if(rep&&typeof rep==="object"){length=rep.length;for(i=0;i<length;i+=1){k=rep[i];if(typeof k==="string"){v=str(k,value);if(v){partial.push(quote(k)+(gap?": ":":")+v)}}}}else{for(k in value){if(Object.hasOwnProperty.call(value,k)){v=str(k,value);if(v){partial.push(quote(k)+(gap?": ":":")+v)}}}}v=partial.length===0?"{}":gap?"{\n"+gap+partial.join(",\n"+gap)+"\n"+mind+"}":"{"+partial.join(",")+"}";gap=mind;return v}}if(typeof JSON.stringify!=="function"){JSON.stringify=function(value,replacer,space){var i;gap="";indent="";if(typeof space==="number"){for(i=0;i<space;i+=1){indent+=" "}}else{if(typeof space==="string"){indent=space}}rep=replacer;if(replacer&&typeof replacer!=="function"&&(typeof replacer!=="object"||typeof replacer.length!=="number")){throw new Error("JSON.stringify")}return str("",{"":value})}}if(typeof JSON.parse!=="function"){JSON.parse=function(text,reviver){var j;function walk(holder,key){var k,v,value=holder[key];if(value&&typeof value==="object"){for(k in value){if(Object.hasOwnProperty.call(value,k)){v=walk(value,k);if(v!==undefined){value[k]=v}else{delete value[k]}}}}return reviver.call(holder,key,value)}text=String(text);cx.lastIndex=0;if(cx.test(text)){text=text.replace(cx,function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)})}if(/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,""))){j=eval("("+text+")");return typeof reviver==="function"?walk({"":j},""):j}throw new SyntaxError("JSON.parse")}}}());if(!window.e$){window.e$={version:"0.1"}}(function(c,a){var d=function(g,f){var g=g.split("&");var e={};c.each(g,function(h,j){var i=j.split("=");if(i.length==2&&i[0]&&i[1]){e[i[0]]=(f)?unescape(i[1]):i[1]}});return e};var b=function(e){return e.toLowerCase().replace(/\b[a-z]/g,function(f){return f.toUpperCase()})};if(!Object.keys){Object.keys=function(g){var f=[];for(var e in g){if(g.hasOwnProperty(e)){f.push(e)}}return f}}c.extend(a,{unserialise:d,upper:b})})($,e$);(function(b,a){var c={hash:"#",delimiter:"-",empty:"#unfiltered",_getHashObject:function(){var d=window.location.hash;return(d.length===0)?{}:a.unserialise(d.substring(1))},_setHash:function(d){b(Object.keys(d)).each(function(e,f){if(!d[f]){delete d[f]}});if(Object.keys(d).length===0){this.clear()}else{window.location.hash=this.hash+b.param(d)}},add:function(d,e){var g=this.get(d);if(g){var f=g.split(this.delimiter);if(b.inArray(e,g.split(this.delimiter))===-1){f.push(e)}g=f.join(this.delimiter)}else{g=e}this.put(d,g)},contains:function(d,e){var f=this.get(d);if(f){return b.inArray(e.toString(),f.split(this.delimiter))>=0}return false},put:function(d,e){var f=this._getHashObject();f[d]=e;this._setHash(f)},get:function(d){return this._getHashObject()[d]},remove:function(d,e){var g=this.get(d);if(g){var f=g.split(this.delimiter);f.splice(b.inArray(e.toString(),f),1);if(f.length>0){this.put(d,f.join(this.delimiter))}else{this.clear(d)}}},clear:function(d){var e=this._getHashObject();delete e[d];this._setHash(e)},empty:function(){window.location.hash=this.empty}};b.extend(a,{hash:c})})(jQuery,e$);(function(c,a){var b={element:null,backgroundColor:"#CCC",opacity:0.8,zIndex:999,init:function(d){c.extend(this,d);this.element=c('<div id="es_overlay">').css({position:"fixed",left:0,top:0,backgroundColor:this.backgroundColor,opacity:this.opacity,zIndex:this.zIndex,width:"100%",height:"100%",margin:0,padding:0,display:"none"});this.element.appendTo("body")},show:function(d){this.element.fadeIn(d)},hide:function(d){this.element.fadeOut(d)},toggle:function(d){this.element.fadeToggle(d)}};b.init();c.extend(a,{overlay:b})})(jQuery,e$);(function(c,a){var b={_pageHashKey:"page",_countHashKey:"count",_disabledCSS:"disabled",_size:10,total:0,current:1,numPages:0,first:null,previous:null,next:null,last:null,count:null,pageSelect:null,template:'<a href="#first" class="first" title="First Page">first</a>&nbsp;<a href="#previous" class="previous" title="Previous Page">previous</a>&nbsp;<a href="#next" class="next" title="Next Page">next</a>&nbsp;<a href="#last" class="last" title="Last Page">last</a>&nbsp;Page: <select id="pageNumber"></select>&nbsp;Size: <select id="count"><option value="10" selected="selected">10</option><option value="25">25</option><option value="50">50</option><option value="100">100</option></select>',init:function(d){var g=c(d);c.tmpl(this.template,{current:this.current}).appendTo(g);this.count=g.find("select#count");this.count.change(function(j){b._size=parseInt(b.count.val());b.updateCurrent(1);b._updateCountHash();a.search.query()});this.pageSelect=g.find("select#pageNumber");this.pageSelect.change(function(j){b.updateCurrent(parseInt(b.pageSelect.val()));a.search.query()});this.first=g.find("a.first");this.first.click(function(j){j.preventDefault();if(b.current===1){return}else{b.updateCurrent(1);a.search.query()}});this.previous=g.find("a.previous");this.previous.click(function(j){j.preventDefault();if(b.current===1){return}else{b.updateCurrent(b.current-1);a.search.query()}});this.next=g.find("a.next");this.next.click(function(j){j.preventDefault();if(b.current===b.numPages){return}else{b.updateCurrent(b.current+1);a.search.query()}});this.last=g.find("a.last");this.last.click(function(j){j.preventDefault();if(b.current===b.numPages){return}else{b.updateCurrent(b.numPages);a.search.query()}});var h=a.hash.get(this._countHashKey);if(h){var f=parseInt(h);this._size=(f<=0)?10:f;b._updateCountHash();this.count.val(this._size)}var e=a.hash.get(this._pageHashKey);if(e){var i=parseInt(e);this.current=(i<=0)?1:i;b._updatePageHash()}this.refresh(this.total)},refresh:function(f){this.total=f;this.numPages=Math.ceil(this.total/this._size);if(this.current===1){this.first.addClass(this._disabledCSS);this.previous.addClass(this._disabledCSS)}else{this.first.removeClass(this._disabledCSS);this.previous.removeClass(this._disabledCSS)}if(this.current===this.numPages){this.next.addClass(this._disabledCSS);this.last.addClass(this._disabledCSS)}else{this.next.removeClass(this._disabledCSS);this.last.removeClass(this._disabledCSS)}this.pageSelect.empty();for(var d=1;d<=this.numPages;d++){var e=(d===this.current)?true:false;c("<option>").attr({value:d,selected:e}).html(d).appendTo(this.pageSelect)}},size:function(){return this._size},from:function(){return this._size*(this.current-1)},updateCurrent:function(d){this.current=d;this._updatePageHash()},_updatePageHash:function(){a.hash.put(this._pageHashKey,this.current)},_updateCountHash:function(){a.hash.put(this._countHashKey,this._size)}};b.init("#pagination");c.extend(a,{pagination:b})})(jQuery,e$);(function(c,a){var b={filters:null,_hashKeys:[],expandoOpenImage:"/static/images/expando_open.gif",expandoClosedImage:"/static/images/expando_closed.gif",templates:{title:'<div class="title">Filter: <span class="clearAll">(<a href="#clear" id="clear_all_filters" title="Clear Filters">clear all</a>)</span></div>',filter:'<div class="filter" ftype="${id}" id="filter_${id}"><a class="expando" title="Filter by ${title}" id="filter_${id}_expando_img" href="#expando"><img src="/static/images/expando_closed.gif"/></a><a class="expando" title="Filter by ${title}" id="filter_${id}_expando" href="#expando">${title}</a>&nbsp;<a class="clear" id="filter_${id}_clear" href="#clear" title="Clear" style="display:none;">clear</a><div class="options" style="display:none;"></div></div>',option:'<input id="input_${group}_${id}" value="${value}" name="${fieldName}" type="${type}"{{if checked}} checked="checked"{{/if}}><label for="input_${group}_${id}" id="l_${group}_${id}"{{if checked}} class="selected"{{/if}}>${name}<span class="count">[${count}]</span></label><br/>'},resistanceNames:["","Ampicillin","Kanamycin","Tetracycline","Chloramphenicol","Streptomycin","Hygromycin","Gentamycin","Bleocin (Zeocin)","Spectinomycin","Ampicillin and Chloramphenicol","Ampicillin and Tetracycline","Ampicillin and Kanamycin"],temperatureToName:function(d){return d+"&deg;C"},resistanceIdToName:function(d){if(d<this.resistanceNames.length){return this.resistanceNames[d]}else{return"Unknown"}},piToName:function(d){return a.upper(d)},init:function(d){this.filters=c(d);c.tmpl(this.templates.title).appendTo(this.filters);this.filters.find("span.clearAll a").click(function(e){e.preventDefault();c(b._hashKeys).each(function(f,g){a.hash.clear(g)});b.filters.find(".options").slideUp();b.filters.find(".clear").hide();b.filters.find(".expando img").attr("src",b.expandoClosedImage);b.filters.find("input:checked").attr("checked",false);b.filters.find(".options label").removeClass("selected");a.pagination.updateCurrent(1);a.search.query()})},add:function(f,h,k,j,e,g){var d=c.tmpl(this.templates.filter,{id:k,title:h});this._hashKeys.push(e);d.find(".expando").click(function(l){l.preventDefault();if(d.find(".clear").is(":visible")){d.find(".expando img").attr("src",b.expandoClosedImage)}else{d.find(".expando img").attr("src",b.expandoOpenImage)}d.find(".options").slideToggle();d.find(".clear").toggle()});d.find(".clear").click(function(l){l.preventDefault();d.find("input:checked").attr("checked",false);d.find(".options label").removeClass("selected");a.hash.clear(e);a.pagination.updateCurrent(1);a.search.query()});var i=false;c(g).each(function(l,m){var n=a.hash.contains(e,m.id);if(n){i=true}var p=c.tmpl(b.templates.option,{id:m.id,type:f,name:m.name,group:k,fieldName:j,value:m.id,count:m.count,checked:n});p.change(function(o){o.preventDefault();var q=c(o.currentTarget);if(q.is(":checked")){if(f==="checkbox"){a.hash.add(e,m.id)}else{a.hash.put(e,m.id)}if(f==="radio"){q.parent().find("label").removeClass("selected")}q.next("label").addClass("selected")}else{a.hash.remove(e,m.id);q.next("label").removeClass("selected")}a.pagination.updateCurrent(1);a.search.query()});p.appendTo(d.find(".options"))});d.appendTo(this.filters);if(i){d.find(".options").slideToggle();d.find(".clear").toggle()}},get:function(g){var j=[];var h=[];var f=[];c("#es_filters .options input:checked").each(function(l,n){var p=c(n);var r=p.attr("name");if(g&&g==r){return}var o=p.attr("value");if(r==="vector_type_id"){af={name:r,arr:[]};f.push(af);var k={};k[r]=o;af.arr.push({term:k})}else{var q=null;for(var m=0;m<h.length;m++){if(h[m].name===r){q=h[m]}}if(!q){q={name:r,arr:[]};h.push(q)}var k={};k[r]=o;q.arr.push({term:k})}});if(h.length!==0){var d=[];for(var e=0;e<h.length;e++){j.push({or:h[e].arr})}}if(f.length!==0){var d=[];for(var e=0;e<f.length;e++){j.push({and:f[e].arr})}}if(j.length===0){j.push({query:{match_all:{}}})}return{bool:{must:j}}},update:function(d){this._updateCount(d,"flame");this._updateCount(d,"plasmid_type_id");this._updateCount(d,"species_id");this._updateCount(d,"clone_method_id");this._updateCount(d,"vector_type_id")},_updateCount:function(g,e){c("#filter_"+e+" .count").html("[]");var f=g[e].terms;for(var d=0;d<f.length;d++){c("#l_"+e+"_"+f[d].term+" .count").html("["+f[d].count+"]")}c('.count:contains("[]")').html("[0]")},fromFacet:function(g,h,k,f,j,e){c("#es_filters .filter[ftype="+k+"]").remove();for(var d=0;d<j.terms.length;d++){j.terms[d]["id"]=j.terms[d].term;j.terms[d]["name"]=e.call(this,j.terms[d].term)}this.add(g,h,k,k,f,j.terms)}};b.init("#es_filters");b.add("checkbox","Expression/Use","vector_type_id","vector_type_id","vector",[{id:"1",name:"Mammalian Expression"},{id:"3",name:"Bacterial Expression"},{id:"5",name:"Yeast Expression"},{id:"7",name:"Worm Expression"},{id:"9",name:"Insect Expression"},{id:"10",name:"RNAi"},{id:"2",name:"Lentiviral"},{id:"4",name:"Retroviral"},{id:"6",name:"Adenoviral"},{id:"11",name:"Mouse Targeting"},{id:"8",name:"Luciferase"},{id:"12",name:"Cre/Lox"}]);b.add("checkbox","Popularity","flame","flame","flame",[{id:"low",name:"Low"},{id:"medium",name:"Medium"},{id:"high",name:"High"}]);b.add("checkbox","Species","species_id","species_id","species",[{id:"9606",name:"H. sapiens (human)"},{id:"10090",name:"M. musculus (mouse)"},{id:"10116",name:"R. novegicus (rat)"},{id:"9031",name:"G. gallus (chicken)"},{id:"9913",name:"B. taurus (bovine)"},{id:"8355",name:"X. Laevis (frog)"},{id:"7955",name:"D. rerio (zebrafish)"},{id:"7227",name:"D. Melanogaster (fly)"},{id:"6239",name:"C. elegans (nematode)"},{id:"4932",name:"S. cerevisiae (budding yeast)"},{id:"4896",name:"S. pombe (fission yeast)"},{id:"3702",name:"A. thaliana (mustard weed)"}]);b.add("radio","Cloning Method","clone_method_id","clone_method_id","method",[{id:"1",name:"Restriction Enzyme"},{id:"2",name:"Gateway Cloning"},{id:"3",name:"TOPO Cloning"},{id:"4",name:"Ligation Independent Cloning"}]);c.extend(a,{filter:b})})(jQuery,e$);(function(c,a){var b={sort:null,_delimiter:"_",_sort:"sort",asc:"asc",desc:"desc",templates:{sort:'<div class="title">Sort: <span class="clearAll">(<a id="clearAllSortsLink" href="#clear" title="Clear Sorts">clear all</a>)</div><div class="options"></div>',opt:'<div class="sort" id="sort_${name}" stype="${type}" sname="${sname}" sorder="${order}"><span class="order">(<span class="val">${order}</span>)</span><span class="name">${name}</span><span class="direction">(<a id="reverse_${type}" href="#reverse" class="directionLink" title="Reverse Sort">${dir}</a>)</span><span class="remove">(<a id="remove_${type}" href="#remove" class="removeLink" title="Remove Sort">remove</a>)</span></div>',add:'<div class="add"><select id="addSort"></select>&nbsp;<span><a id="addSortLink" href="#add" class="addLink" title="Add Sort">add</a></span></div>',addOpt:'<option value="${value}">${name}</option>'},sorts:{score:{type:"_score",name:"Search Score",added:false},flame:{type:"flame_id",name:"Popularity",added:false},id:{type:"id",name:"Plasmid ID",added:false}},init:function(e){this.sort=c(e);c.tmpl(this.templates.sort).appendTo(this.sort);var d=a.hash.get(this._sort);if(d){var j=d.split(a.hash.delimiter);for(var g=0;g<j.length;g++){var k=j[g].split(this._delimiter);if(k.length===3){this.add(k[0],parseInt(k[1]),k[2])}}}var l=c.tmpl(this.templates.add);for(var f in this.sorts){var h=c.tmpl(this.templates.addOpt,{value:f,name:this.sorts[f].name});if(this.sorts[f].added){h.attr("disabled",true)}h.appendTo(c(l).find("#addSort"))}l.appendTo(this.sort);this.sort.find(".clearAll a").click(this.clear);this.sort.find(".add .addLink").click(this._addSort);this.sort.find("div.options").sortable({update:this.update})},add:function(h,d,e){var f=this.sorts[h];if(f){var i=c.tmpl(this.templates.opt,{type:f.type,name:f.name,sname:h,order:d,dir:e});i.find(".directionLink").click(this._reverseDirection);i.find(".removeLink").click(this.remove);var g=this.sort.find('.options .sort[sorder="'+(d+1)+'"]');if(g.length>0){i.insertBefore(g)}else{i.appendTo(this.sort.find(".options"))}a.hash.add(this._sort,this._hash(h,d,e));f.added=true}},remove:function(h){h.preventDefault();var g=c(h.currentTarget);var f=g.parents("div:first");var d=f.find("span.order span.val").html();var e=f.find("span.direction a.directionLink").html();g.parents("div:first").remove();c('#addSort option[value="'+f.attr("sname")+'"]').attr("disabled",false);b._fixSortOrders();b._updateHash();a.pagination.updateCurrent(1);a.search.query()},update:function(d,e){b.sort.find("div.options div.sort").each(function(f,g){c(g).find(".order .val").html(parseInt(f+1))});b._updateHash();a.pagination.updateCurrent(1);a.search.query()},clear:function(d){d.preventDefault();a.hash.clear(b._sort);c(".options .sort").remove();c('#addSort option[disabled=""]').attr("disabled",false);a.pagination.updateCurrent(1);a.search.query()},_fixSortOrders:function(){c(".options .order .val").each(function(d,e){c(e).html(1+d)})},_hash:function(e,d,f){return e+b._delimiter+d+b._delimiter+f},_updateHash:function(){a.hash.clear(this._sort);c(".options .sort").each(function(d,f){var e=c(f);a.hash.add(b._sort,b._hash(e.attr("sname"),e.find(".order .val").html(),e.find(".direction .directionLink").html()))})},get:function(){var d=[];b.sort.find("div.options div.sort").each(function(f,h){var g={};var i=c(h);g[i.attr("stype")]={order:i.find(".directionLink").html()};d.push(g)});if(d.length===0){d.push({_score:{order:this.desc}})}return d},_reverseDirection:function(g){g.preventDefault();var f=c(g.currentTarget);var h=f.html();if(h===b.asc){f.html(b.desc)}else{f.html(b.asc)}var e=f.parents("div:first").attr("sname");var d=f.parents("div:first").find("span.order span.val").html();a.hash.remove(b._sort,b._hash(e,d,h));a.hash.add(b._sort,b._hash(e,d,f.html()));a.pagination.updateCurrent(1);a.search.query()},_addSort:function(e){e.preventDefault();var d=c(".add #addSort option:selected");if(d.length>0){b.add(d.attr("value"),b._getNextOrder(),b.desc);d.attr("disabled",true);d.attr("selected",false);a.pagination.updateCurrent(1);a.search.query()}},_getNextOrder:function(){var d=c(".options .order .val:last");if(d.length>0){return 1+parseInt(d.html())}else{return 1}}};b.init("#sort");c.extend(a,{sort:b})})(jQuery,e$);(function(c,a){var b={searchBox:null,submitButton:null,giraffeDialog:null,results:null,facets:{plasmid_type_id:{terms:{field:"plasmid.type_id"},global:true},flame:{terms:{field:"flame"},global:true},bacterial_resistance_id:{terms:{field:"bacterial_resistance_id",size:15},global:true},species_id:{terms:{field:"species_id",size:15},global:true},clone_method_id:{terms:{field:"clone_method_id"},global:true},vector_type_id:{terms:{field:"vector_type_id",size:15},global:true}},ajax_data:{url:"/search/es/plasmid/",type:"POST",dataType:"json",data:null,success:function(d){a.search._onSuccess(d)},error:function(d){a.search._onError(d)}},fadeDelay:250,templates:{search:'<input id="es_search" type="text" name="es_search" /><input id="es_submit" type="submit" value="Search" /><div id="giraffe_dialog"><div id="giraffe_dialog_map" class="giraffe_canvas"></div></div>',stats:'<div id="es_stats">${start}-${finish} of ${total} results in ${took}ms</div>',kit:'<div id="es_hit_${id}" class="es_hit es_kit"><a href="/${id}/" title="Kit ${catalog_item_name}" class="strong">Kit ${id}</a>: <a href="/${id}/" title="Kit ${catalog_item_name}">${catalog_item_name}</a>{{if flame}}<img class="flame" src="/static/images/flames_{{if flame == "medium"}}med{{else}}${flame}{{/if}}.gif" alt="${flame}" title="${flame}"></img>{{/if}}<br/>{{if pi}}<span class="strong">PI</span>: <a href="/browse/pi/${pi.id}" title="${pi.lastname} Plasmids">${pi.firstname} ${pi.lastname}</a>{{/if}}<br/></div>',result:'<div id="es_hit_${id}" class="es_hit"><a href="/${id}/" title="${plasmid.name}" class="strong">Plasmid ${id}</a>: <a href="/${id}/" title="${plasmid.name}">${plasmid.name}</a>{{if flame}}<img class="flame" src="/static/images/flames_{{if flame == "medium"}}med{{else}}${flame}{{/if}}.gif" alt="${flame}" title="${flame}"></img>{{/if}}<br/><span class="strong">Article</span>: <a href="/browse/article/${article.id}/" title="{{if article.pubmed_so}}${article.pubmed_so}{{/if}}{{if article.pubmed_authors}}&nbsp;(${article.pubmed_authors}){{/if}}">${article.title}</a>{{if article.pubmed_id}}&nbsp;(<a href="http://pubmed.org/${article.pubmed_id}/" title="PubMed Article Link">PubMed</a>){{/if}}<br/><span class="strong">Type</span>: ${plasmid.type_str}<br/>{{if cloning.backbone}}<span class="strong">Backbone</span>: ${cloning.backbone}<br/>{{/if}}{{if cloning.vector_types}}<span class="strong">Expression/Use</span>: {{each cloning.vector_types}}${$value.vector_type_name}{{if $index < (cloning.vector_types.length-1)}}, {{/if}}{{/each}}<br/>{{/if}}{{each inserts}}{{if species_display}}<span class="strong">Species</span>: ${species_display}<br/>{{/if}}{{/each}}{{if pi}}<span class="strong">PI</span>: <a href="/browse/pi/${pi.id}" title="${pi.lastname} Plasmids">${pi.firstname} ${pi.lastname}</a>{{/if}}<br/></div>',empty:'<div class="es_empty">No results found. Remove filters and/or broaden your search.</div>',hints:'<div class="es_hints"><span>Search Addgene:</span><ul><li>AND and OR to combine search terms</li><li>NOT to exclude search terms</li><li>* for wildcard</li><li>Quotes for phrases</li></ul></div>'},_query:function(e){var d={query_string:{query:(e),default_operator:"AND"}};var h={query:d};var g={filtered:{filter:a.filter.get(),query:d}};this.facets.flame["facet_filter"]=h;this.facets.plasmid_type_id["facet_filter"]=h;this.facets.species_id["facet_filter"]=h;this.facets.clone_method_id["facet_filter"]=h;this.facets.vector_type_id["facet_filter"]={query:g};this.facets.bacterial_resistance_id["facet_filter"]=h;return JSON.stringify({from:a.pagination.from(),size:a.pagination.size(),explain:true,track_scores:true,sort:a.sort.get(),facets:this.facets,query:g})},_onSuccess:function(d){this._updateResults(d.took,d.hits.total,d.hits.hits);this._updatePagination(d.hits.total);this._updateFilters(d.facets)},_updateResults:function(j,k,g){this.results.fadeOut(this.fadeDelay);this.results.empty();if(g.length>0){var e=a.pagination.from()<k?a.pagination.from():0;var l=(e+g.length)>k?g.length:e+g.length;c.tmpl(this.templates.stats,{start:e+1,finish:l,took:j,total:k}).appendTo(this.results);for(var h=0;h<g.length;h++){var d=g[h]._source;var m=d.is_kit?this.templates.kit:this.templates.result;var f=c.tmpl(m,d);f.appendTo(this.results);f.data(d);c("#es_hit_"+d.id+" .mapLink").click(this._mapLinkHandler)}c(".es_hit:last").css({borderBottom:"none"})}else{c.tmpl(this.templates.empty).appendTo(this.results);this._showHints()}this._showResults()},_showResults:function(){this.results.fadeIn(this.fadeDelay)},_mapLinkHandler:function(i){i.preventDefault();var d=c(i.currentTarget).parent().data();var g=GiraffeDraw();if(d.sequence.length>0){var f=c(i.currentTarget).parent().data().sequence[0].sequence_giraffe_id;c.ajax({url:"/giraffe/blat/"+f+"/default?sc=1",success:function(e){g.read(e);g.CircularMap({map_dom_id:"giraffe_dialog_map",plasmid_name:d.plasmid.name,map_width:640,map_height:590,draw_plasmid_size:true,draw_tic_mark:true,cutters:[1,2,3,4,5]})}})}else{g.read([d.plasmid.estimated_size,d.plasmid.features]);g.CircularMap({map_dom_id:"giraffe_dialog_map",plasmid_name:d.plasmid.name,map_width:640,map_height:590,draw_plasmid_size:true,draw_tic_mark:true,cutters:[1,2,3,4,5]})}a.search.giraffeDialog.dialog("option","title","Plasmid "+d.plasmid.name+" Map");a.search.giraffeDialog.dialog("open")},_updatePagination:function(d){a.pagination.refresh(d)},_updateFilters:function(d){a.filter.update(d);a.filter.fromFacet("checkbox","Resistance","bacterial_resistance_id","res",d.bacterial_resistance_id,a.filter.resistanceIdToName)},_onError:function(d){console.debug("error:",d)},init:function(d,h){var e=c.tmpl(this.templates.search);e.appendTo(c(d));if(window.location.search.length>1&&window.location.search.indexOf("q=")!=-1&&!a.hash.get("p")){var f=window.location.search.substring(1);window.location.hash=f;a.hash.put("p","true")}this.giraffeDialog=c("div#giraffe_dialog");this.giraffeDialog.dialog({autoOpen:false,width:670,height:640,draggable:false,resizable:false});this.giraffeDialog.bind("dialogopen",function(i,j){a.overlay.show()});this.giraffeDialog.bind("dialogclose",function(i,j){a.overlay.hide()});this.results=c(h);this.searchBox=c("input#es_search");this.searchBox.keypress(function(i){if(i.keyCode===13){a.pagination.updateCurrent(1);a.search.query();a.suggest.close()}});this.submitButton=c("input#es_submit");this.submitButton.click(function(i){a.pagination.updateCurrent(1);a.search.query()});var g=a.hash.get("q");if(g){this.searchBox.val(g);this.query()}else{this._showHints()}c("#search_submit_id").click(function(i){i.preventDefault();window.location.href="/search?q="+(c("#search_q_id").val())});c("#search_q_id").keypress(function(i){if(i.keyCode===13){window.location.href="/search?q="+(c("#search_q_id").val())}});c("#browse_search_submit_id").click(function(i){i.preventDefault();window.location.href="/search?q="+(c("#browse_search_q_id").val())})},_showHints:function(){c.tmpl(this.templates.hints).appendTo(this.results);this._showResults()},query:function(){var d=this.searchBox.val();if(d){a.hash.put("q",d);this.ajax_data.data="q="+this._query(d);c.ajax(this.ajax_data)}else{a.hash.clear("q");this.results.fadeOut(this.fadeDelay);this.results.empty();this._showHints()}}};b.init("#search","#results");c.extend(a,{search:b})})(jQuery,e$);(function(b,a){var c={size:15,input:null,init:function(d){this.input=b(d);this.input.autocomplete({source:[]});this.input.bind("autocompletesearch",this._onSearch)},_onSearch:function(d,e){if(d.originalEvent){b.ajax({url:"/search/es/suggest/",type:"POST",dataType:"json",data:"q="+a.suggest._getSuggestSearchData(),success:function(g){var f=[];b(g.hits.hits).each(function(h,i){f.push(i._source.token)});a.suggest.input.autocomplete("option","source",f);a.suggest.input.autocomplete("search")},error:function(f){console.log("error: ",f)}})}},_getSuggestSearchData:function(){var e={size:this.size,query:{filtered:{filter:{bool:{must:[{query:{match_all:{}}}]}},query:{match_all:{}}}}};var d=this.input.val();if(d!==""){e.query.filtered.query={text:{_all:{query:d,type:"phrase_prefix",operator:"and"}}}}return JSON.stringify(e)},_onSelect:function(d,e){},close:function(){a.suggest.input.autocomplete("close")}};c.init("#es_search");b.extend(a,{suggest:c})})(jQuery,e$);
