(function(b){b.extend(b.fn,{livequery:function(a,c,e){var d=this,g;b.isFunction(a)&&(e=c,c=a,a=void 0);b.each(b.livequery.queries,function(b,o){if(d.selector==o.selector&&d.context==o.context&&a==o.type&&(!c||c.$lqguid==o.fn.$lqguid)&&(!e||e.$lqguid==o.fn2.$lqguid))return(g=o)&&false});g=g||new b.livequery(this.selector,this.context,a,c,e);g.stopped=false;g.run();return this},expire:function(a,c,e){var d=this;b.isFunction(a)&&(e=c,c=a,a=void 0);b.each(b.livequery.queries,function(g,n){d.selector==
n.selector&&d.context==n.context&&(!a||a==n.type)&&(!c||c.$lqguid==n.fn.$lqguid)&&(!e||e.$lqguid==n.fn2.$lqguid)&&!this.stopped&&b.livequery.stop(n.id)});return this}});b.livequery=function(a,c,e,d,g){this.selector=a;this.context=c;this.type=e;this.fn=d;this.fn2=g;this.elements=[];this.stopped=false;this.id=b.livequery.queries.push(this)-1;d.$lqguid=d.$lqguid||b.livequery.guid++;if(g)g.$lqguid=g.$lqguid||b.livequery.guid++;return this};b.livequery.prototype={stop:function(){var a=this;this.type?this.elements.unbind(this.type,
this.fn):this.fn2&&this.elements.each(function(c,b){a.fn2.apply(b)});this.elements=[];this.stopped=true},run:function(){if(!this.stopped){var a=this,c=this.elements,e=b(this.selector,this.context),d=e.not(c);this.elements=e;this.type?(d.bind(this.type,this.fn),c.length>0&&b.each(c,function(c,d){b.inArray(d,e)<0&&b.event.remove(d,a.type,a.fn)})):(d.each(function(){a.fn.apply(this)}),this.fn2&&c.length>0&&b.each(c,function(c,d){b.inArray(d,e)<0&&a.fn2.apply(d)}))}}};b.extend(b.livequery,{guid:0,queries:[],
queue:[],running:false,timeout:null,checkQueue:function(){if(b.livequery.running&&b.livequery.queue.length)for(var a=b.livequery.queue.length;a--;)b.livequery.queries[b.livequery.queue.shift()].run()},pause:function(){b.livequery.running=false},play:function(){b.livequery.running=true;b.livequery.run()},registerPlugin:function(){b.each(arguments,function(a,c){if(b.fn[c]){var e=b.fn[c];b.fn[c]=function(){var c=e.apply(this,arguments);b.livequery.run();return c}}})},run:function(a){a!=void 0?b.inArray(a,
b.livequery.queue)<0&&b.livequery.queue.push(a):b.each(b.livequery.queries,function(c){b.inArray(c,b.livequery.queue)<0&&b.livequery.queue.push(c)});b.livequery.timeout&&clearTimeout(b.livequery.timeout);b.livequery.timeout=setTimeout(b.livequery.checkQueue,20)},stop:function(a){a!=void 0?b.livequery.queries[a].stop():b.each(b.livequery.queries,function(c){b.livequery.queries[c].stop()})}});b.livequery.registerPlugin("append","prepend","after","before","wrap","attr","removeAttr","addClass","removeClass",
"toggleClass","empty","remove","html");b(function(){b.livequery.play()})})(jQuery);
(function(b){b.fn.extend({autocomplete:function(a,c){var e=typeof a=="string",c=b.extend({},b.Autocompleter.defaults,{url:e?a:null,data:e?null:a,delay:e?b.Autocompleter.defaults.delay:10,max:c&&!c.scroll?10:150},c);c.lengthPerCacheKey=c.lengthPerCacheKey?c.lengthPerCacheKey<c.max?c.max:c.lengthPerCacheKey:c.max;c.highlight=c.highlight||function(c){return c};c.formatMatch=c.formatMatch||c.formatItem;return this.each(function(){new b.Autocompleter(this,c)})},result:function(b){return this.bind("result",
b)},search:function(b){return this.trigger("search",[b])},flushCache:function(){return this.trigger("flushCache")},setOptions:function(b){return this.trigger("setOptions",[b])},unautocomplete:function(){return this.trigger("unautocomplete")}});b.Autocompleter=function(a,c){var e,d,g;function n(){var b=p.selected();if(!b)return false;var a=b.result;l=a;if(c.multiple){var h=w(f.val());h.length>1&&(a=h.slice(0,h.length-1).join(c.multipleSeparator)+c.multipleSeparator+a);a+=c.multipleSeparator}f.val(a);
q("from-selected");f.trigger("result",[b.data,b.value]);return true}function o(b,a){if(h==e&&!c.dropdown)!f.val()&&k&&t("help_text");else if(!(h==d||h==g&&!f.val()&&l=="")){var i=f.val();!a&&i==l&&p.visible()?!i&&!c.dropdown&&k&&t("help_text"):(l=i,i=u(i),i.length>=c.minChars?(f.addClass(c.loadingClass),c.matchCase||(i=i.toLowerCase()),m(i,j,q)):(r(),k&&t("help_text")))}}function w(a){if(!a)return[""];var a=a.split(c.multipleSeparator),h=[];b.each(a,function(c,a){b.trim(a)&&(h[c]=b.trim(a))});return h}
function u(b){if(!c.multiple)return b;b=w(b);return b[b.length-1]}function v(){clearTimeout(s);s=setTimeout(function(){q("whole-word")},50)}function q(b){c.dropdown?p.hide(true):p.hide();clearTimeout(s);r();c.mustMatch&&b!="from-selected"&&f.search(function(a){if(a)c.dropdown&&f.val(a.result);else if(b=="whole-word")c.multiple?(a=w(f.val()).slice(0,-1),f.val(a.join(c.multipleSeparator)+(a.length?c.multipleSeparator:""))):(f.val(""),l="");else{var a=false,h=f.val(),e=null;if(h){do if(c.multiple&&(h=
u(h)),e=i.load(!c.matchCase?h.toLowerCase():h),!e||!e.length)f.val(f.val().slice(0,f.val().length-1)),a=true,h=f.val();while((!e||!e.length)&&h)}a&&(l=l.substr(0,l.length-1),k&&(f.val()||c.minChars==0?(f.val()||(e=i.load("")),p.display(e,f.val()),p.show()):c.dropdown?y():t("no_results")))}})}function j(e,i){if(i&&i.length&&k){r();p.display(i,e);var d=i[0].result;c.autoFill&&u(f.val()).toLowerCase()==e.toLowerCase()&&h!=g&&(f.val(f.val()+d.substring(u(l).length)),b.Autocompleter.Selection(a,l.length,
l.length+d.length));b("body",f.parents()).get(0)&&k&&p.show()}else r(),k&&t("no_results"),c.mustMatch&&q()}function m(h,e,f){c.matchCase||(h=h.toLowerCase());var d=i.load(h);z=h;d&&d.length?e(h,d):h=="suche..."?(p.emptyList(),k&&t("help_text")):typeof c.url=="string"&&c.url.length>0?(clearTimeout(s),s=setTimeout(function(){var f=h;z=h;var d={timestamp:new Date};b.each(c.extraParams,function(b,a){d[b]=typeof a=="function"?a():a});k&&t("loading");b.ajax({mode:"abort",port:"autocomplete"+a.name,dataType:c.dataType,
url:c.url,data:b.extend({query:u(h),limit:c.lengthPerCacheKey},d),success:function(a){var d;if(!(d=c.parse&&c.parse(a))){d=[];for(var a=a.split("\n"),j=0;j<a.length;j++){var g=b.trim(a[j]);g&&(g=g.split("|"),d[d.length]={data:g,value:g[0],result:c.formatResult&&c.formatResult(g,g[0])||g[0]})}}i.add(z,d);f==z&&e(h,d)},error:function(){}})},c.delay)):(p.emptyList(),k&&t("no_results"),c.mustMatch&&f())}function r(){f.removeClass(c.loadingClass)}e=46;g=8;d=16;var f=b(a).attr("autocomplete","off").addClass(c.inputClass),
s,l="",i=b.Autocompleter.Cache(c),k=0,h,x={mouseDownOnSelect:false,from_selection:false},p=b.Autocompleter.Select(c,a,n,x),t=function(a){p.init();p.show(a)},C=function(a){return f.offset().left+f.innerWidth()-parseInt(f.css("padding-right"))<a.pageX&&f.offset().left+f.innerWidth()>a.pageX&&f.offset().top+f.innerHeight()>a.pageY&&f.offset().top<a.pageY},y=function(){var c=i.load("");c&&c.length&&(p.display(c,""),b("body",f.parents()).get(0)&&k&&p.show());setTimeout(function(){b.Autocompleter.Selection(a,
0,a.value.length)},100)};if(c.dropdown){c.dropdown=c.dropdown===true?["dropdownarrow.png","dropdownarrow over.png"]:c.dropdown;c.minChars=0;c.multiple=false;c.mustMatch=true;if(c.matchContains)c.autoFill=false;c.max=b.Autocompleter.defaults.max;c.matchCase=false;c.selectFirst=true;(new Image).src=c.dropdown[1];(new Image).src=c.dropdown[1];f.addClass("dropdown").css({background:"white url("+c.dropdown[0]+") center right no-repeat","padding-right":"20px"});f.mousedown(function(a){if(C(a))if(p.visible())q("whole-word");
else{if(k)return y(),false}else if(k&&!p.visible())return y(),false}).mousemove(function(a){C(a)?f.css({cursor:"default",background:"white url("+c.dropdown[1]+") center right no-repeat"}):(p.visible()||f.css("background","white url("+c.dropdown[0]+") center right no-repeat"),f.css("cursor","text"))}).mouseleave(function(){p.visible()||f.css({background:"white url("+c.dropdown[0]+") center right no-repeat"})}).mouseup(function(){x.mouseDownOnSelect=false})}b(document).mousedown(function(){x.mouseDownOnSelect=
false;q("whole-word")});var B;b.browser.opera&&b(a.form).bind("submit.autocomplete",function(){if(B)return B=false});var A=function(a,b){a.preventDefault();if(p.visible())p[b]();else c.dropdown?y():o(0,true);k<=0&&(k=1)};f.bind((b.browser.opera?"keypress":"keydown")+".autocomplete",function(a){h=a.keyCode;switch(a.keyCode){case 38:A(a,"prev");break;case 40:A(a,"next");break;case 33:A(a,"pageUp");break;case 34:A(a,"pageDown");break;case 37:case 39:case 36:case 35:k<=0&&(k=1);break;case c.multiple&&
b.trim(c.multipleSeparator)==","&&188:case 9:case 13:k<=0&&(k=1);if(n())return a.preventDefault(),B=true,false;break;default:clearTimeout(s),s=setTimeout(function(){o(0,false)},10),k<=0&&(k=1)}}).focus(function(){k++;x.from_selection||(c.dropdown?p.visible()?b.Autocompleter.Selection(a,a.value.length,a.value.length):y():(o(0,false),c.autoFill||b.Autocompleter.Selection(a,a.value.length,a.value.length)));x.from_selection=false}).blur(function(){k=0;if(h==e||h==d||h==g)h=void 0;x.mouseDownOnSelect||
v()}).mousedown(function(a){a.stopPropagation()}).mouseup(function(a){c.autoFill&&f.val()&&!l&&(a.preventDefault(),b(this).css("cursor","text"))}).bind("search",function(){function a(b,c){var d;if(c&&c.length)for(var e=0;e<c.length;e++)if(c[e].result.toLowerCase()==b.toLowerCase()){d=c[e];break}typeof h=="function"?h(d):f.trigger("result",d&&[d.data,d.value])}var h=arguments.length>1?arguments[1]:null;b.each(c.multiple?w(f.val()):[f.val()],function(b,c){c!="suche..."&&m(c,a,a)})}).bind("flushCache",
function(){i.flush()}).bind("setOptions",function(a,h){b.extend(c,h);"data"in h&&i.populate()}).bind("unautocomplete",function(){p.unbind();f.unbind();b(a.form).unbind(".autocomplete")});var z=null};b.Autocompleter.defaults={inputClass:"ac_input",resultsClass:"ac_results",loadingClass:"ac_loading",minChars:1,delay:400,matchCase:false,matchSubset:true,matchContains:true,cacheLength:10,max:100,mustMatch:false,extraParams:{},selectFirst:true,formatItem:function(a){return a[0]},formatMatch:null,autoFill:false,
width:0,multiple:false,multipleSeparator:",",highlight:function(a,c){for(var e=b.trim(c).split(/\s+|-/g),d=0;d<e.length;d++)e[d]&&(a=a.replace(RegExp("(?![^&;]+;)(?!<[^<>]*)("+e[d].replace(/([\^\$\(\)\[\]\{\}\*\.\+\?\|\\])/gi,"\\$1")+")(?![^<>]*>)(?![^&;]+;)","gi"),"<strong>$1</strong>"));return a},dropdown:"",scroll:true,scrollHeight:180,help_text:'<div class="help_text">F&uuml;r Vorschl&auml;ge beginnen Sie zu tippen</div>',no_results:'<div class="no_results">Keine Ergebnisse gefunden</div>',loading:'<div class="loading">Ergebnisse werden geladen...</div>'};
b.Autocompleter.Cache=function(a){function c(c,d){for(var e=b.trim(d).split("-"),g=0;g<e.length;g++)if(b.trim(e[g]))return a.matchCase||(c=c.toLowerCase()),e=c.indexOf(d),e==-1?false:e==0||a.matchContains}function e(b,c){o>a.cacheLength&&g();n[b]||o++;n[b]=c}function d(){if(!a.data)return false;var c={},d=0;if(!a.url)a.cacheLength=1;c[""]=[];for(var g=0,n=a.data.length;g<n;g++){var j=a.data[g],j=typeof j=="string"?[j]:j,m=a.formatMatch(j,g+1,a.data.length);if(m!==false){var o=m.charAt(0).toLowerCase();
c[o]||(c[o]=[]);j={value:m,data:j,result:a.formatResult&&a.formatResult(j)||m};c[o].push(j);d++<a.max&&c[""].push(j)}}b.each(c,function(c,b){a.cacheLength++;e(c,b)})}function g(){n={};o=0}var n={},o=0;setTimeout(d,25);return{flush:g,add:e,populate:d,load:function(d){if(!a.cacheLength||!o)return null;if(!a.url&&a.matchContains){var e=[],g;for(g in n)if(g.length>0){var q=n[g];b.each(q,function(a,b){c(b.value,d)&&e.push(b)})}return e}else if(n[d])return n[d];else if(a.matchSubset)for(g=d.length-1;g>=
a.minChars;g--)if(q=n[d.substr(0,g)]){e=[];b.each(q,function(a,b){c(b.value,d)&&(e[e.length]=b)});if(e.length<q.length&&!(q.length<a.lengthPerCacheKey))break;return e}return null}}};b.Autocompleter.Select=function(a,c,e,d){var g;function n(a){a=u(a);a.nodeName&&a.nodeName.toUpperCase()=="LI"&&(m=b("li",i).removeClass(g).index(a),b(a).addClass(g))}function o(){d.mouseDownOnSelect=true;setTimeout(function(){c.focus()},50);return false}function w(){m=-1;if(s){l=b("<div/>").hide().addClass(a.resultsClass).css("position",
"absolute").appendTo(document.body);for(var h=function(){return false},f=0;f<k.length;f++)typeof a[k[f]]=="string"&&(a[k[f]]=b(a[k[f]])),a[k[f]].appendTo(l),a[k[f]].addClass("ac-special-result "+k[f]),a[k[f]].mousedown(o).mouseup(function(){d.mouseDownOnSelect=false;c.focus();return false}).click(h).bind("selectstart",h).mousemove(function(){b(this).css("cursor","default")}),a[k[f]].hide();i=b("<ul/>").appendTo(l).mouseover(n).mousedown(o).bind("selectstart",function(){return false}).mouseup(function(h){d.mouseDownOnSelect=
false;h=u(h);if(!h.nodeName&&a.scroll)return c.focus(),false;b(h).addClass(g);e();d.from_selection=true;b.Autocompleter.Selection(c,c.value.length,c.value.length);setTimeout(function(){d.from_selection=false},200);return false}).mouseleave(function(){a.selectFirst?(b("li",i).removeClass(g),j&&j.slice(0,1).addClass(g),m=0):(b("li",i).removeClass(g),m=-1)});a.width>0&&l.css("width",a.width);s=false}}function u(a){for(a=a.target;a&&a.tagName!="LI";)a=a.parentNode;return!a?[]:a}function v(b){if(j&&(j.slice(m,
m+1).removeClass(g),m+=b,m<0?m=j.size()-1:m>=j.size()&&(m=0),b=j.slice(m,m+1).addClass(g),a.scroll)){var c=0;j.slice(0,m).each(function(){c+=this.offsetHeight});c+b[0].offsetHeight-i.scrollTop()>i[0].clientHeight?i.scrollTop(c+b[0].offsetHeight-i.innerHeight()):c<i.scrollTop()&&i.scrollTop(c)}}function q(a){n(a);b(this).unbind("mousemove")}g="ac_over";var j,m=-1,r,f="",s=true,l,i,k=["loading","no_results","help_text"];return{init:function(){w();i.empty()},display:function(c,d){w();r=c;f=d;i.empty();
for(var e=a.max&&a.max<r.length?a.max:r.length,k=0;k<e;k++)if(r[k]){var l=a.formatItem(r[k].data,k+1,e,r[k].value,f);if(l!==false){l=b("<div/>").html(a.highlight(l,f));l.css("overflow","hidden");var n=b("<li/>").addClass(k%2==0?"ac_even":"ac_odd").appendTo(i)[0];b(n).append(l);b.data(n,"ac_data",r[k])}}j=i.find("li");a.selectFirst&&(j.slice(0,1).addClass(g),m=0);b.fn.bgiframe&&i.bgiframe()},next:function(){v(1);i.mousemove(q)},prev:function(){v(-1);i.mousemove(q)},pageUp:function(){m!=0&&m-8<0?v(-m):
v(-8);i.mousemove(q)},pageDown:function(){j&&m!=j.size()-1&&m+8>j.size()?v(j.size()-1-m):v(8);i.mousemove(q)},hide:function(d){a.dropdown&&b(c).css({background:"white url("+a.dropdown[0]+") center right no-repeat"});b(".ac-special-result",l).hide();l&&l.hide();!d&&j&&(j.removeClass(g),m=-1)},visible:function(){return l&&l.is(":visible")},current:function(){return this.visible()&&j&&(j.filter("."+g)[0]||a.selectFirst&&j[0])},show:function(d){a.dropdown&&b(c).css({background:"white url("+a.dropdown[1]+
") center right no-repeat"});b(".ac-special-result",l).hide();d&&typeof d=="string"&&a[d].show();d=b(c).offset();l.css({width:typeof a.width=="string"||a.width>0?a.width:b(c).width(),top:d.top+c.offsetHeight,left:d.left}).show();if(a.scroll&&(i.scrollTop(0),i.css({maxHeight:a.scrollHeight,overflow:"auto"}),b.browser.msie&&typeof document.body.style.maxHeight==="undefined")){var e=0;j&&j.each(function(){e+=this.offsetHeight});d=e>a.scrollHeight;i.css("height",d?a.scrollHeight:e);!d&&j&&j.width(i.width()-
parseInt(j.css("padding-left"))-parseInt(j.css("padding-right")))}},selected:function(){var a=j&&j.filter("."+g).removeClass(g);return a&&a.length&&b.data(a[0],"ac_data")},emptyList:function(){i&&i.empty()},unbind:function(){l&&l.remove()}}};b.Autocompleter.Selection=function(a,c,b){if(a.createTextRange){var d=a.createTextRange();d.collapse(true);d.moveStart("character",c);d.moveEnd("character",b);d.select()}else if(a.setSelectionRange)a.setSelectionRange(c,b);else if(a.selectionStart)a.selectionStart=
c,a.selectionEnd=b;a.focus()}})(jQuery);
$(document).ready(function(){$('input[type="text"][src]').livequery(function(){for(var b=["multipleValues","selectFirst","autoFill","mustMatch","matchContains"],a=0;a<b.length;a++)eval("var "+b[a]+" = false;");for(a=0;a<b.length;a++)$(this).hasClass(b[a].replace(/[A-Z]/,"-"+b[a].match(/[A-Z]/)[0].toLowerCase()))&&eval(b[a]+" = true;");b=$($.Autocompleter.defaults.help_text);$("form",$(this).parents()).length&&$(this).next().length&&$(this).next().hasClass("help-text")&&b.append($(this).next().clone(true));
$(this).autocomplete($(this).attr("src"),{cacheLength:10,max:10,width:298,scrollHeight:250,multiple:multipleValues,selectFirst:selectFirst,autoFill:autoFill,mustMatch:mustMatch,matchContains:matchContains,parse:function(a){return a},dataType:"json",formatItem:function(a,b,d,g){return g},help_text:b});$(this).result(function(a,b){if(b.link)document.location.href=b.link});$(this).addClass("autocompleting")})});

