Array.prototype.index=function(a){for(var c=0,g=this.length;c0&&b<=5&&u.fadeTo("fast",0.5).fadeTo("fast",1)},s=function(b){if(b.isEmpty())return"none";if(b.total>g&&b.allocations.length>1)return"support";return"ok"};this.insert=function(b){f.val(b);f.select()};this.fullResultsCallback=function(b){var n=s(b);v.attr("class",n);l.hide();e.hide();m.fadeTo(166,1);n=b.total;u.text(n);o(n);if(b.isEmpty()){y.empty();e.show()}else if(b.total> g&&b.allocations.length>1){i&&q(b);l.show(b)}else{q(b);j&&l.show(b)}};this.liveResultsCallback=function(b){var n=s(b);v.attr("class",n);b=b.total;u.text(b);o(b)};this.allocationChosen=function(b){b=b.data.query;a.insert(b);a.allocationChosen(b)};this.addinationClicked=function(b){a.addinationClicked(d(),b)};(function(){f.keyup(function(b){if(d()==""){h();a.searchTextCleared()}else m.fadeTo(166,1);a.searchTextEntered(d(),b)});u.click(function(){a.searchButtonClicked(d())});r.click(function(){a.searchButtonClicked(d())}); m.click(function(){h();a.clearButtonClicked();f.focus()})})();f.focus()};var PickyBackend=function(a){var c=function(g,i,j){var f=j||{};f=$.extend({query:g},j);$.getJSON(a,f,function(m){i&&i(new PickyData(m))})};this.search=function(g,i,j,f){c(g,function(m){i&&i(f,m)},j)}},LiveBackend=function(a){var c=a.live||alert("A live backend path must be provided."),g=new PickyBackend(c);this.search=function(i,j,f,m){m=m||{};var r=new Date;m.live=r;f=$.extend({ids:a.liveResults||0,offset:0},f);g.search(i,function(u,v){if(!u.live||u.live==r)j&&j(v,i)},f,m)}},FullBackend=function(a){var c= a.full||alert("A full backend path must be provided."),g=new PickyBackend(c);this.search=function(i,j,f,m){m=m||{};var r=new Date;m.full=r;f=$.extend({ids:a.fullResults||20,offset:0},f);g.search(i,function(u,v){if(!u.full||u.full==r)j&&j(v,i)},f,m)}};var PickyController=function(a){var c=new PickyView(this,a),g=a.backends,i=a.beforeInsert||function(b){return b},j=a.before||function(b){return b},f=a.success||function(b){return b},m=a.after||function(b){return b},r=a.searchOnEmpty||false,u=a.liveRendered||false,v=a.liveSearchInterval||180,w,y=function(b){return(b=b&&b.match(/q=([^&]+)/))&&decodeURIComponent(b[1].replace(/\+/g," "))||""};this.extractQuery=y;var e=function(){var b=window.History&&window.History.getState();return y(b&&b.url)};this.lastFullQuery= e;var k=function(b,n,z,A){var x=j(n,A);if(x!=undefined)n=x;w=[b,n,z,A];x=n;if(x!=e()){x=!r&&x==""?"/":"?q="+encodeURIComponent(x);window.History&&window.History.getState()&&window.History.pushState&&window.History.pushState(null,null,x)}if(!r&&n=="")c.reset();else(b=g[b])&&b.search(n,z,A)};this.resend=function(){w&&k.apply(this,w)};var l=function(b,n){(b=f(b,n))&&c.fullResultsCallback(b);m(b,n)},p=function(b,n){clearInterval(d);k("full",b,l,n||{})};a=function(b,n){(b=f(b,n))&&c.liveResultsCallback(b); m(b,n)};var h=u?l:a,d,q=function(){var b=c.text();k("live",b,h,{});clearInterval(d)};d=setInterval(q,v);clearInterval(d);var o=function(b,n,z){var A=i(b);if(A!=undefined)b=A;c.insert(b);z&&p(b,n)};this.insert=o;this.clearButtonClicked=function(){clearInterval(d)};this.searchTextCleared=function(){clearInterval(d)};var s=[1,2,3,4,5,6,7,9,10,11,12,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31];this.searchTextEntered=function(b,n){if($.inArray(n.keyCode,s)<0)if(n.keyCode==13)p(b);else{clearInterval(d); d=setInterval(q,v)}};this.searchButtonClicked=function(b){p(b)};this.allocationChosen=function(b){p(b)};this.addinationClicked=function(b,n){p(b,{offset:n.data.offset})};window.History&&window.History.Adapter.bind(window,"statechange",function(){var b=window.History.getState();b=y(b.url);b!=undefined&&b!=(w&&w.length>1&&w[1])&&o(b,{},true)})};var PickyI18n={},PickyClient=function(a){PickyI18n.locale=$("html").attr("lang").split("-")[0]||"en";a.locale=a.locale||PickyI18n.locale;a.qualifiers=a.qualifiers||{};a.explanations=a.explanations||{};a.choices=a.choices||{};var c=a.backends;if(c){c.live||alert("Both a full and live backend must be provided.");c.full||alert("Both a full and live backend must be provided.")}else a.backends={live:new LiveBackend(a),full:new FullBackend(a)};c=a.enclosingSelector||".picky";var g=a.formSelector||c+" form"; a.form=$(g);a.input=$(a.inputSelector||g+" input[type=search]");a.reset=$(a.resetSelector||g+" div.reset");a.button=$(a.buttonSelector||g+" input[type=button]");a.counter=$(a.counterSelector||g+" div.status");a.results=$(a.resultsSelector||c+" div.results");a.noResults=$(a.noResultsSelector||c+" div.no_results");a.moreSelector=a.moreSelector||c+" div.results div.addination:last";a.allocations=$(a.allocationsSelector||c+" .allocations");a.shownAllocations=$(a.shownAllocations||a.allocations.find(".shown")); a.showMoreAllocations=$(a.showMoreAllocations||a.allocations.find(".more"));a.hiddenAllocations=$(a.hiddenAllocations||a.allocations.find(".hidden"));a.maxSuggestions=a.maxSuggestions||3;a.results=$(a.resultsSelector||c+" div.results");a.resultsDivider=a.resultsDivider||"";a.nonPartial=a.nonPartial||[];a.wrapResults=a.wrapResults||"
    ";var i=a.controller&&new a.controller(a)||new PickyController(a);var j=this.insert=function(f,m,r){i.insert(f,m||{},r||true)};this.resend=i.resend;this.insertFromURL= function(f){if(f)j(f);else(f=i.lastFullQuery())&&j(f)}};var PickyAddination=function(a,c){this.remove=function(){c.find(".addination").remove()};this.render=function(g){var i=g.total,j,f=g.renderedAmount();j=g.offset+f;f=j+f;g=g.total;if(g"+t("results.addination.more")+"");i.bind("click",{offset:j.offset},a.addinationClicked);return i}else return""}};var PickyResultsRenderer=function(a,c){var g=c.locale,i=c.explanations||{},j=c.explanationDelimiter||{ch:"und",de:"und",en:"and",fr:"et",it:"e"},f=c.explanationTokenDelimiter||{},m=c.explanationTokenCallback,r=c.resultsDivider,u=c.wrapResults,v=c.nonPartial,w=function(h){var d=h[h.length-1];if(d===undefined)return[];h=h.slice(0,h.length-1);if(h==[])h=[h];if(!v.include(d[0]))if(d[1].match(/[^\*~]$/))d[1]+="*";h.push(d);return h};this.asteriskifyLastToken=w;var y=function(h){for(var d=i[g]||{},q=[], o,s=0,b=h.length;s"+h+"",d].join(" ")};this.strongify=e;var k=function(h,d,q){var o=m&&m(h,q);return o?o:e(d,q.join((f[g]||{})[h]||" "))},l=function(h,d){var q=j[g]||"&",o="",s=[],b=[];y(w(d)).each(function(n,z){var A=z[0],x=z[1],B=z[2];B=B.replace(/[\w,]+:(.+)/,"$1");if(o==""||A==o){s.push(B);o=A;lastExplainedCategory=x}else{var C=k(o,lastExplainedCategory,s);s=[];s.push(B); o=A;lastExplainedCategory=x;b.push(C)}});b.push(k(o,lastExplainedCategory,s));b=b.join(" "+q+" ");return b=''+h+" "+b+""};this.explain=l;var p=function(h,d){var q='
    ';q+=l(d.type,d.combination);if(h.offset>0)q+='';q+="
    ";return q};this.renderHeader=p;this.render=function(h,d){d.allocations.each(function(q,o){if(o.entries.length>0){h.append(p(d, o)).append(o.entries.join(r));h.children("li").wrapAll(u)}});h.append(a.render(d))}};function AllocationRenderer(a){function c(e){var k={},l={},p={},h=[],d,q;d=0;for(q=e.length;d=0;d--)e.remove(h[d]);return e}function g(e){e.map(function(k){return"%"+(k+1)+"$s"});return e.join(" ")}function i(e){if(e.length==0)return"";e=c(e);for(var k=[],l=0,p=e.length;l=0;e--){b=k[e];if(b.length>0)break}b=b[b.length-1];y.include(b[0])||(b[1]=b[1].valueOf()+"*");return k}function f(e){var k=[];j(e).each(function(l,p){var h=i(p);h&&k.push(h)});return k.join(" ")}var m=a.locale,r=a.qualifiers&&a.qualifiers[m]|| {},u=a.explanations&&a.explanations[m]||{},v=a.groups||[],w=a.choices&&a.choices[m]||{},y=a.nonPartial||[];this.explanation=this.query=this.text="";this.contract=c;this.makeUpMissingFormat=g;this.rendered=i;this.groupify=j;this.querify=function(e){var k=[],l,p,h;for(h in e){l=e[h][0];l=r[l]||l;p=(p=e[h][1])||"";p=p.charAt(p.length-1)=="*"?"*":"";k[h]=l+":"+e[h][2]+p}return k.join(" ")};this.suggestify=f;this.render=function(e){return f(e.combination)}};var PickyAllocationsCloud=function(a,c){var g=c.allocations,i=c.shownAllocations,j=c.showMoreAllocations,f=c.hiddenAllocations,m=c.maxSuggestions,r=function(){g.hide()},u=function(e){r();a.allocationChosen(e)},v=new AllocationRenderer(c),w=function(e){var k=[];e.each(function(l,p){var h=v.querify(p.combination),d=v.render(p);d=$('
  1. '+d+'
    '+p.count+"
  2. ");d.bind("click",{query:h},u);k.push(d)});return k},y=function(e){if(e.length==0)return g.hide(); i.empty();j.hide();f.empty().hide();if(e.length>m){$.each(e.slice(0,m-1),function(k,l){i.append(l)});$.each(e.slice(m-1),function(k,l){f.append(l)});j.show()}else $.each(e,function(k,l){i.append(l)});return g.show()};j.click(function(){j.hide();f.show()});this.hide=r;this.show=function(e){y(w(e.allocations));g.show()}};