var pandoraData = {
					premiumDomain:1,
					website:'KLICKTEL',
					domain: 'klickinfo.de',
					apiDomain: 'api.klicktel.de',
					facebookAppId:'122956161070675',
					apiDuoDomain: 'apiduo.klicktel.de',
					server: 'LIVE'
				}
var Prototype={Version:"1.6.0.3",Browser:{IE:!!(window.attachEvent&&navigator.userAgent.indexOf("Opera")===-1),Opera:navigator.userAgent.indexOf("Opera")>-1,WebKit:navigator.userAgent.indexOf("AppleWebKit/")>-1,Gecko:navigator.userAgent.indexOf("Gecko")>-1&&navigator.userAgent.indexOf("KHTML")===-1,MobileSafari:!!navigator.userAgent.match(/Apple.*Mobile.*Safari/)},BrowserFeatures:{XPath:!!document.evaluate,SelectorsAPI:!!document.querySelector,ElementExtensions:!!window.HTMLElement,SpecificElementExtensions:document.createElement("div")["__proto__"]&&document.createElement("div")["__proto__"]!==document.createElement("form")["__proto__"]},ScriptFragment:"<script[^>]*>([\\S\\s]*?)<\/script>",JSONFilter:/^\/\*-secure-([\s\S]*)\*\/\s*$/,emptyFunction:function(){},K:function(A){return A}};if(Prototype.Browser.MobileSafari){Prototype.BrowserFeatures.SpecificElementExtensions=false}var Class={create:function(){var E=null,D=$A(arguments);if(Object.isFunction(D[0])){E=D.shift()}function A(){this.initialize.apply(this,arguments)}Object.extend(A,Class.Methods);A.superclass=E;A.subclasses=[];if(E){var B=function(){};B.prototype=E.prototype;A.prototype=new B;E.subclasses.push(A)}for(var C=0;C<D.length;C++){A.addMethods(D[C])}if(!A.prototype.initialize){A.prototype.initialize=Prototype.emptyFunction}A.prototype.constructor=A;return A}};Class.Methods={addMethods:function(G){var C=this.superclass&&this.superclass.prototype;var B=Object.keys(G);if(!Object.keys({toString:true}).length){B.push("toString","valueOf")}for(var A=0,D=B.length;A<D;A++){var F=B[A],E=G[F];if(C&&Object.isFunction(E)&&E.argumentNames().first()=="$super"){var H=E;E=(function(I){return function(){return C[I].apply(this,arguments)}})(F).wrap(H);E.valueOf=H.valueOf.bind(H);E.toString=H.toString.bind(H)}this.prototype[F]=E}return this}};var Abstract={};Object.extend=function(A,C){for(var B in C){A[B]=C[B]}return A};Object.extend(Object,{inspect:function(A){try{if(Object.isUndefined(A)){return"undefined"}if(A===null){return"null"}return A.inspect?A.inspect():String(A)}catch(B){if(B instanceof RangeError){return"..."}throw B}},toJSON:function(A){var C=typeof A;switch(C){case"undefined":case"function":case"unknown":return ;case"boolean":return A.toString()}if(A===null){return"null"}if(A.toJSON){return A.toJSON()}if(Object.isElement(A)){return }var B=[];for(var E in A){var D=Object.toJSON(A[E]);if(!Object.isUndefined(D)){B.push(E.toJSON()+": "+D)}}return"{"+B.join(", ")+"}"},toQueryString:function(A){return $H(A).toQueryString()},toHTML:function(A){return A&&A.toHTML?A.toHTML():String.interpret(A)},keys:function(A){var B=[];for(var C in A){B.push(C)}return B},values:function(B){var A=[];for(var C in B){A.push(B[C])}return A},clone:function(A){return Object.extend({},A)},isElement:function(A){return !!(A&&A.nodeType==1)},isArray:function(A){return A!=null&&typeof A=="object"&&"splice" in A&&"join" in A},isHash:function(A){return A instanceof Hash},isFunction:function(A){return typeof A=="function"},isString:function(A){return typeof A=="string"},isNumber:function(A){return typeof A=="number"},isUndefined:function(A){return typeof A=="undefined"}});Object.extend(Function.prototype,{argumentNames:function(){var A=this.toString().match(/^[\s\(]*function[^(]*\(([^\)]*)\)/)[1].replace(/\s+/g,"").split(",");return A.length==1&&!A[0]?[]:A},bind:function(){if(arguments.length<2&&Object.isUndefined(arguments[0])){return this}var A=this,C=$A(arguments),B=C.shift();return function(){return A.apply(B,C.concat($A(arguments)))}},bindAsEventListener:function(){var A=this,C=$A(arguments),B=C.shift();return function(D){return A.apply(B,[D||window.event].concat(C))}},curry:function(){if(!arguments.length){return this}var A=this,B=$A(arguments);return function(){return A.apply(this,B.concat($A(arguments)))}},delay:function(){var A=this,B=$A(arguments),C=B.shift()*1000;return window.setTimeout(function(){return A.apply(A,B)},C)},defer:function(){var A=[0.01].concat($A(arguments));return this.delay.apply(this,A)},wrap:function(B){var A=this;return function(){return B.apply(this,[A.bind(this)].concat($A(arguments)))}},methodize:function(){if(this._methodized){return this._methodized}var A=this;return this._methodized=function(){return A.apply(null,[this].concat($A(arguments)))}}});Date.prototype.toJSON=function(){return'"'+this.getUTCFullYear()+"-"+(this.getUTCMonth()+1).toPaddedString(2)+"-"+this.getUTCDate().toPaddedString(2)+"T"+this.getUTCHours().toPaddedString(2)+":"+this.getUTCMinutes().toPaddedString(2)+":"+this.getUTCSeconds().toPaddedString(2)+'Z"'};var Try={these:function(){var C;for(var B=0,D=arguments.length;B<D;B++){var A=arguments[B];try{C=A();break}catch(E){}}return C}};RegExp.prototype.match=RegExp.prototype.test;RegExp.escape=function(A){return String(A).replace(/([.*+?^=!:${}()|[\]\/\\])/g,"\\$1")};var PeriodicalExecuter=Class.create({initialize:function(B,A){this.callback=B;this.frequency=A;this.currentlyExecuting=false;this.registerCallback()},registerCallback:function(){this.timer=setInterval(this.onTimerEvent.bind(this),this.frequency*1000)},execute:function(){this.callback(this)},stop:function(){if(!this.timer){return }clearInterval(this.timer);this.timer=null},onTimerEvent:function(){if(!this.currentlyExecuting){try{this.currentlyExecuting=true;this.execute()}finally{this.currentlyExecuting=false}}}});Object.extend(String,{interpret:function(A){return A==null?"":String(A)},specialChar:{"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r","\\":"\\\\"}});Object.extend(String.prototype,{gsub:function(E,C){var A="",D=this,B;C=arguments.callee.prepareReplacement(C);while(D.length>0){if(B=D.match(E)){A+=D.slice(0,B.index);A+=String.interpret(C(B));D=D.slice(B.index+B[0].length)}else{A+=D,D=""}}return A},sub:function(C,A,B){A=this.gsub.prepareReplacement(A);B=Object.isUndefined(B)?1:B;return this.gsub(C,function(D){if(--B<0){return D[0]}return A(D)})},scan:function(B,A){this.gsub(B,A);return String(this)},truncate:function(B,A){B=B||30;A=Object.isUndefined(A)?"...":A;return this.length>B?this.slice(0,B-A.length)+A:String(this)},strip:function(){return this.replace(/^\s+/,"").replace(/\s+$/,"")},stripTags:function(){return this.replace(/<\/?[^>]+>/gi,"")},stripScripts:function(){return this.replace(new RegExp(Prototype.ScriptFragment,"img"),"")},extractScripts:function(){var B=new RegExp(Prototype.ScriptFragment,"img");var A=new RegExp(Prototype.ScriptFragment,"im");return(this.match(B)||[]).map(function(C){return(C.match(A)||["",""])[1]})},evalScripts:function(){return this.extractScripts().map(function(script){return eval(script)})},escapeHTML:function(){var A=arguments.callee;A.text.data=this;return A.div.innerHTML},unescapeHTML:function(){var A=new Element("div");A.innerHTML=this.stripTags();return A.childNodes[0]?(A.childNodes.length>1?$A(A.childNodes).inject("",function(B,C){return B+C.nodeValue}):A.childNodes[0].nodeValue):""},toQueryParams:function(B){var A=this.strip().match(/([^?#]*)(#.*)?$/);if(!A){return{}}return A[1].split(B||"&").inject({},function(E,F){if((F=F.split("="))[0]){var C=decodeURIComponent(F.shift());var D=F.length>1?F.join("="):F[0];if(D!=undefined){D=decodeURIComponent(D)}if(C in E){if(!Object.isArray(E[C])){E[C]=[E[C]]}E[C].push(D)}else{E[C]=D}}return E})},toArray:function(){return this.split("")},succ:function(){return this.slice(0,this.length-1)+String.fromCharCode(this.charCodeAt(this.length-1)+1)},times:function(A){return A<1?"":new Array(A+1).join(this)},camelize:function(){var D=this.split("-"),A=D.length;if(A==1){return D[0]}var C=this.charAt(0)=="-"?D[0].charAt(0).toUpperCase()+D[0].substring(1):D[0];for(var B=1;B<A;B++){C+=D[B].charAt(0).toUpperCase()+D[B].substring(1)}return C},capitalize:function(){return this.charAt(0).toUpperCase()+this.substring(1).toLowerCase()},underscore:function(){return this.gsub(/::/,"/").gsub(/([A-Z]+)([A-Z][a-z])/,"#{1}_#{2}").gsub(/([a-z\d])([A-Z])/,"#{1}_#{2}").gsub(/-/,"_").toLowerCase()},dasherize:function(){return this.gsub(/_/,"-")},inspect:function(B){var A=this.gsub(/[\x00-\x1f\\]/,function(C){var D=String.specialChar[C[0]];return D?D:"\\u00"+C[0].charCodeAt().toPaddedString(2,16)});if(B){return'"'+A.replace(/"/g,'\\"')+'"'}return"'"+A.replace(/'/g,"\\'")+"'"},toJSON:function(){return this.inspect(true)},unfilterJSON:function(A){return this.sub(A||Prototype.JSONFilter,"#{1}")},isJSON:function(){var A=this;if(A.blank()){return false}A=this.replace(/\\./g,"@").replace(/"[^"\\\n\r]*"/g,"");return(/^[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]*$/).test(A)},evalJSON:function(sanitize){var json=this.unfilterJSON();try{if(!sanitize||json.isJSON()){return eval("("+json+")")}}catch(e){}throw new SyntaxError("Badly formed JSON string: "+this.inspect())},include:function(A){return this.indexOf(A)>-1},startsWith:function(A){return this.indexOf(A)===0},endsWith:function(A){var B=this.length-A.length;return B>=0&&this.lastIndexOf(A)===B},empty:function(){return this==""},blank:function(){return/^\s*$/.test(this)},interpolate:function(A,B){return new Template(this,B).evaluate(A)}});if(Prototype.Browser.WebKit||Prototype.Browser.IE){Object.extend(String.prototype,{escapeHTML:function(){return this.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")},unescapeHTML:function(){return this.stripTags().replace(/&amp;/g,"&").replace(/&lt;/g,"<").replace(/&gt;/g,">")}})}String.prototype.gsub.prepareReplacement=function(B){if(Object.isFunction(B)){return B}var A=new Template(B);return function(C){return A.evaluate(C)}};String.prototype.parseQuery=String.prototype.toQueryParams;Object.extend(String.prototype.escapeHTML,{div:document.createElement("div"),text:document.createTextNode("")});String.prototype.escapeHTML.div.appendChild(String.prototype.escapeHTML.text);var Template=Class.create({initialize:function(A,B){this.template=A.toString();this.pattern=B||Template.Pattern},evaluate:function(A){if(Object.isFunction(A.toTemplateReplacements)){A=A.toTemplateReplacements()}return this.template.gsub(this.pattern,function(D){if(A==null){return""}var F=D[1]||"";if(F=="\\"){return D[2]}var B=A,G=D[3];var E=/^([^.[]+|\[((?:.*?[^\\])?)\])(\.|\[|$)/;D=E.exec(G);if(D==null){return F}while(D!=null){var C=D[1].startsWith("[")?D[2].gsub("\\\\]","]"):D[1];B=B[C];if(null==B||""==D[3]){break}G=G.substring("["==D[3]?D[1].length:D[0].length);D=E.exec(G)}return F+String.interpret(B)})}});Template.Pattern=/(^|.|\r|\n)(#\{(.*?)\})/;var $break={};var Enumerable={each:function(C,B){var A=0;try{this._each(function(E){C.call(B,E,A++)})}catch(D){if(D!=$break){throw D}}return this},eachSlice:function(D,C,B){var A=-D,E=[],F=this.toArray();if(D<1){return F}while((A+=D)<F.length){E.push(F.slice(A,A+D))}return E.collect(C,B)},all:function(C,B){C=C||Prototype.K;var A=true;this.each(function(E,D){A=A&&!!C.call(B,E,D);if(!A){throw $break}});return A},any:function(C,B){C=C||Prototype.K;var A=false;this.each(function(E,D){if(A=!!C.call(B,E,D)){throw $break}});return A},collect:function(C,B){C=C||Prototype.K;var A=[];this.each(function(E,D){A.push(C.call(B,E,D))});return A},detect:function(C,B){var A;this.each(function(E,D){if(C.call(B,E,D)){A=E;throw $break}});return A},findAll:function(C,B){var A=[];this.each(function(E,D){if(C.call(B,E,D)){A.push(E)}});return A},grep:function(D,C,B){C=C||Prototype.K;var A=[];if(Object.isString(D)){D=new RegExp(D)}this.each(function(F,E){if(D.match(F)){A.push(C.call(B,F,E))}});return A},include:function(A){if(Object.isFunction(this.indexOf)){if(this.indexOf(A)!=-1){return true}}var B=false;this.each(function(C){if(C==A){B=true;throw $break}});return B},inGroupsOf:function(B,A){A=Object.isUndefined(A)?null:A;return this.eachSlice(B,function(C){while(C.length<B){C.push(A)}return C})},inject:function(A,C,B){this.each(function(E,D){A=C.call(B,A,E,D)});return A},invoke:function(B){var A=$A(arguments).slice(1);return this.map(function(C){return C[B].apply(C,A)})},max:function(C,B){C=C||Prototype.K;var A;this.each(function(E,D){E=C.call(B,E,D);if(A==null||E>=A){A=E}});return A},min:function(C,B){C=C||Prototype.K;var A;this.each(function(E,D){E=C.call(B,E,D);if(A==null||E<A){A=E}});return A},partition:function(D,B){D=D||Prototype.K;var C=[],A=[];this.each(function(F,E){(D.call(B,F,E)?C:A).push(F)});return[C,A]},pluck:function(B){var A=[];this.each(function(C){A.push(C[B])});return A},reject:function(C,B){var A=[];this.each(function(E,D){if(!C.call(B,E,D)){A.push(E)}});return A},sortBy:function(B,A){return this.map(function(D,C){return{value:D,criteria:B.call(A,D,C)}}).sort(function(F,E){var D=F.criteria,C=E.criteria;return D<C?-1:D>C?1:0}).pluck("value")},toArray:function(){return this.map()},zip:function(){var B=Prototype.K,A=$A(arguments);if(Object.isFunction(A.last())){B=A.pop()}var C=[this].concat(A).map($A);return this.map(function(E,D){return B(C.pluck(D))})},size:function(){return this.toArray().length},inspect:function(){return"#<Enumerable:"+this.toArray().inspect()+">"}};Object.extend(Enumerable,{map:Enumerable.collect,find:Enumerable.detect,select:Enumerable.findAll,filter:Enumerable.findAll,member:Enumerable.include,entries:Enumerable.toArray,every:Enumerable.all,some:Enumerable.any});function $A(C){if(!C){return[]}if(C.toArray){return C.toArray()}var B=C.length||0,A=new Array(B);while(B--){A[B]=C[B]}return A}if(Prototype.Browser.WebKit){$A=function(C){if(!C){return[]}if(!(typeof C==="function"&&typeof C.length==="number"&&typeof C.item==="function")&&C.toArray){return C.toArray()}var B=C.length||0,A=new Array(B);while(B--){A[B]=C[B]}return A}}Array.from=$A;Object.extend(Array.prototype,Enumerable);if(!Array.prototype._reverse){Array.prototype._reverse=Array.prototype.reverse}Object.extend(Array.prototype,{_each:function(B){for(var A=0,C=this.length;A<C;A++){B(this[A])}},clear:function(){this.length=0;return this},first:function(){return this[0]},last:function(){return this[this.length-1]},compact:function(){return this.select(function(A){return A!=null})},flatten:function(){return this.inject([],function(B,A){return B.concat(Object.isArray(A)?A.flatten():[A])})},without:function(){var A=$A(arguments);return this.select(function(B){return !A.include(B)})},reverse:function(A){return(A!==false?this:this.toArray())._reverse()},reduce:function(){return this.length>1?this:this[0]},uniq:function(A){return this.inject([],function(D,C,B){if(0==B||(A?D.last()!=C:!D.include(C))){D.push(C)}return D})},intersect:function(A){return this.uniq().findAll(function(B){return A.detect(function(C){return B===C})})},clone:function(){return[].concat(this)},size:function(){return this.length},inspect:function(){return"["+this.map(Object.inspect).join(", ")+"]"},toJSON:function(){var A=[];this.each(function(B){var C=Object.toJSON(B);if(!Object.isUndefined(C)){A.push(C)}});return"["+A.join(", ")+"]"}});if(Object.isFunction(Array.prototype.forEach)){Array.prototype._each=Array.prototype.forEach}if(!Array.prototype.indexOf){Array.prototype.indexOf=function(C,A){A||(A=0);var B=this.length;if(A<0){A=B+A}for(;A<B;A++){if(this[A]===C){return A}}return -1}}if(!Array.prototype.lastIndexOf){Array.prototype.lastIndexOf=function(B,A){A=isNaN(A)?this.length:(A<0?this.length+A:A)+1;var C=this.slice(0,A).reverse().indexOf(B);return(C<0)?C:A-C-1}}Array.prototype.toArray=Array.prototype.clone;function $w(A){if(!Object.isString(A)){return[]}A=A.strip();return A?A.split(/\s+/):[]}if(Prototype.Browser.Opera){Array.prototype.concat=function(){var E=[];for(var B=0,C=this.length;B<C;B++){E.push(this[B])}for(var B=0,C=arguments.length;B<C;B++){if(Object.isArray(arguments[B])){for(var A=0,D=arguments[B].length;A<D;A++){E.push(arguments[B][A])}}else{E.push(arguments[B])}}return E}}Object.extend(Number.prototype,{toColorPart:function(){return this.toPaddedString(2,16)},succ:function(){return this+1},times:function(B,A){$R(0,this,true).each(B,A);return this},toPaddedString:function(C,B){var A=this.toString(B||10);return"0".times(C-A.length)+A},toJSON:function(){return isFinite(this)?this.toString():"null"}});$w("abs round ceil floor").each(function(A){Number.prototype[A]=Math[A].methodize()});function $H(A){return new Hash(A)}var Hash=Class.create(Enumerable,(function(){function A(B,C){if(Object.isUndefined(C)){return B}return B+"="+encodeURIComponent(String.interpret(C))}return{initialize:function(B){this._object=Object.isHash(B)?B.toObject():Object.clone(B)},_each:function(C){for(var B in this._object){var D=this._object[B],E=[B,D];E.key=B;E.value=D;C(E)}},set:function(B,C){return this._object[B]=C},get:function(B){if(this._object[B]!==Object.prototype[B]){return this._object[B]}},unset:function(B){var C=this._object[B];delete this._object[B];return C},toObject:function(){return Object.clone(this._object)},keys:function(){return this.pluck("key")},values:function(){return this.pluck("value")},index:function(C){var B=this.detect(function(D){return D.value===C});return B&&B.key},merge:function(B){return this.clone().update(B)},update:function(B){return new Hash(B).inject(this,function(C,D){C.set(D.key,D.value);return C})},toQueryString:function(){return this.inject([],function(D,E){var C=encodeURIComponent(E.key),B=E.value;if(B&&typeof B=="object"){if(Object.isArray(B)){return D.concat(B.map(A.curry(C)))}}else{D.push(A(C,B))}return D}).join("&")},inspect:function(){return"#<Hash:{"+this.map(function(B){return B.map(Object.inspect).join(": ")}).join(", ")+"}>"},toJSON:function(){return Object.toJSON(this.toObject())},clone:function(){return new Hash(this)}}})());Hash.prototype.toTemplateReplacements=Hash.prototype.toObject;Hash.from=$H;var ObjectRange=Class.create(Enumerable,{initialize:function(C,A,B){this.start=C;this.end=A;this.exclusive=B},_each:function(A){var B=this.start;while(this.include(B)){A(B);B=B.succ()}},include:function(A){if(A<this.start){return false}if(this.exclusive){return A<this.end}return A<=this.end}});var $R=function(C,A,B){return new ObjectRange(C,A,B)};var Ajax={getTransport:function(){return Try.these(function(){return new XMLHttpRequest()},function(){return new ActiveXObject("Msxml2.XMLHTTP")},function(){return new ActiveXObject("Microsoft.XMLHTTP")})||false},activeRequestCount:0};Ajax.Responders={responders:[],_each:function(A){this.responders._each(A)},register:function(A){if(!this.include(A)){this.responders.push(A)}},unregister:function(A){this.responders=this.responders.without(A)},dispatch:function(D,B,C,A){this.each(function(E){if(Object.isFunction(E[D])){try{E[D].apply(E,[B,C,A])}catch(F){}}})}};Object.extend(Ajax.Responders,Enumerable);Ajax.Responders.register({onCreate:function(){Ajax.activeRequestCount++},onComplete:function(){Ajax.activeRequestCount--}});Ajax.Base=Class.create({initialize:function(A){this.options={method:"post",asynchronous:true,contentType:"application/x-www-form-urlencoded",encoding:"UTF-8",parameters:"",evalJSON:true,evalJS:true};Object.extend(this.options,A||{});this.options.method=this.options.method.toLowerCase();if(Object.isString(this.options.parameters)){this.options.parameters=this.options.parameters.toQueryParams()}else{if(Object.isHash(this.options.parameters)){this.options.parameters=this.options.parameters.toObject()}}}});Ajax.Request=Class.create(Ajax.Base,{_complete:false,initialize:function($super,B,A){$super(A);this.transport=Ajax.getTransport();this.request(B)},request:function(B){this.url=B;this.method=this.options.method;var D=Object.clone(this.options.parameters);if(!["get","post"].include(this.method)){D._method=this.method;this.method="post"}this.parameters=D;if(D=Object.toQueryString(D)){if(this.method=="get"){this.url+=(this.url.include("?")?"&":"?")+D}else{if(/Konqueror|Safari|KHTML/.test(navigator.userAgent)){D+="&_="}}}try{var A=new Ajax.Response(this);if(this.options.onCreate){this.options.onCreate(A)}Ajax.Responders.dispatch("onCreate",this,A);this.transport.open(this.method.toUpperCase(),this.url,this.options.asynchronous);if(this.options.asynchronous){this.respondToReadyState.bind(this).defer(1)}this.transport.onreadystatechange=this.onStateChange.bind(this);this.setRequestHeaders();this.body=this.method=="post"?(this.options.postBody||D):null;this.transport.send(this.body);if(!this.options.asynchronous&&this.transport.overrideMimeType){this.onStateChange()}}catch(C){this.dispatchException(C)}},onStateChange:function(){var A=this.transport.readyState;if(A>1&&!((A==4)&&this._complete)){this.respondToReadyState(this.transport.readyState)}},setRequestHeaders:function(){var E={"X-Requested-With":"XMLHttpRequest","X-Prototype-Version":Prototype.Version,Accept:"text/javascript, text/html, application/xml, text/xml, */*"};if(this.method=="post"){E["Content-type"]=this.options.contentType+(this.options.encoding?"; charset="+this.options.encoding:"");if(this.transport.overrideMimeType&&(navigator.userAgent.match(/Gecko\/(\d{4})/)||[0,2005])[1]<2005){E.Connection="close"}}if(typeof this.options.requestHeaders=="object"){var C=this.options.requestHeaders;if(Object.isFunction(C.push)){for(var B=0,D=C.length;B<D;B+=2){E[C[B]]=C[B+1]}}else{$H(C).each(function(F){E[F.key]=F.value})}}for(var A in E){this.transport.setRequestHeader(A,E[A])}},success:function(){var A=this.getStatus();return !A||(A>=200&&A<300)},getStatus:function(){try{return this.transport.status||0}catch(A){return 0}},respondToReadyState:function(A){var C=Ajax.Request.Events[A],B=new Ajax.Response(this);if(C=="Complete"){try{this._complete=true;(this.options["on"+B.status]||this.options["on"+(this.success()?"Success":"Failure")]||Prototype.emptyFunction)(B,B.headerJSON)}catch(D){this.dispatchException(D)}var E=B.getHeader("Content-type");if(this.options.evalJS=="force"||(this.options.evalJS&&this.isSameOrigin()&&E&&E.match(/^\s*(text|application)\/(x-)?(java|ecma)script(;.*)?\s*$/i))){this.evalResponse()}}try{(this.options["on"+C]||Prototype.emptyFunction)(B,B.headerJSON);Ajax.Responders.dispatch("on"+C,this,B,B.headerJSON)}catch(D){this.dispatchException(D)}if(C=="Complete"){this.transport.onreadystatechange=Prototype.emptyFunction}},isSameOrigin:function(){var A=this.url.match(/^\s*https?:\/\/[^\/]*/);return !A||(A[0]=="#{protocol}//#{domain}#{port}".interpolate({protocol:location.protocol,domain:document.domain,port:location.port?":"+location.port:""}))},getHeader:function(A){try{return this.transport.getResponseHeader(A)||null}catch(B){return null}},evalResponse:function(){try{return eval((this.transport.responseText||"").unfilterJSON())}catch(e){this.dispatchException(e)}},dispatchException:function(A){(this.options.onException||Prototype.emptyFunction)(this,A);Ajax.Responders.dispatch("onException",this,A)}});Ajax.Request.Events=["Uninitialized","Loading","Loaded","Interactive","Complete"];Ajax.Response=Class.create({initialize:function(C){this.request=C;var D=this.transport=C.transport,A=this.readyState=D.readyState;if((A>2&&!Prototype.Browser.IE)||A==4){this.status=this.getStatus();this.statusText=this.getStatusText();this.responseText=String.interpret(D.responseText);this.headerJSON=this._getHeaderJSON()}if(A==4){var B=D.responseXML;this.responseXML=Object.isUndefined(B)?null:B;this.responseJSON=this._getResponseJSON()}},status:0,statusText:"",getStatus:Ajax.Request.prototype.getStatus,getStatusText:function(){try{return this.transport.statusText||""}catch(A){return""}},getHeader:Ajax.Request.prototype.getHeader,getAllHeaders:function(){try{return this.getAllResponseHeaders()}catch(A){return null}},getResponseHeader:function(A){return this.transport.getResponseHeader(A)},getAllResponseHeaders:function(){return this.transport.getAllResponseHeaders()},_getHeaderJSON:function(){var A=this.getHeader("X-JSON");if(!A){return null}A=decodeURIComponent(escape(A));try{return A.evalJSON(this.request.options.sanitizeJSON||!this.request.isSameOrigin())}catch(B){this.request.dispatchException(B)}},_getResponseJSON:function(){var A=this.request.options;if(!A.evalJSON||(A.evalJSON!="force"&&!(this.getHeader("Content-type")||"").include("application/json"))||this.responseText.blank()){return null}try{return this.responseText.evalJSON(A.sanitizeJSON||!this.request.isSameOrigin())}catch(B){this.request.dispatchException(B)}}});Ajax.Updater=Class.create(Ajax.Request,{initialize:function($super,A,C,B){this.container={success:(A.success||A),failure:(A.failure||(A.success?null:A))};B=Object.clone(B);var D=B.onComplete;B.onComplete=(function(E,F){this.updateContent(E.responseText);if(Object.isFunction(D)){D(E,F)}}).bind(this);$super(C,B)},updateContent:function(D){var C=this.container[this.success()?"success":"failure"],A=this.options;if(!A.evalScripts){D=D.stripScripts()}if(C=$(C)){if(A.insertion){if(Object.isString(A.insertion)){var B={};B[A.insertion]=D;C.insert(B)}else{A.insertion(C,D)}}else{C.update(D)}}}});Ajax.PeriodicalUpdater=Class.create(Ajax.Base,{initialize:function($super,A,C,B){$super(B);this.onComplete=this.options.onComplete;this.frequency=(this.options.frequency||2);this.decay=(this.options.decay||1);this.updater={};this.container=A;this.url=C;this.start()},start:function(){this.options.onComplete=this.updateComplete.bind(this);this.onTimerEvent()},stop:function(){this.updater.options.onComplete=undefined;clearTimeout(this.timer);(this.onComplete||Prototype.emptyFunction).apply(this,arguments)},updateComplete:function(A){if(this.options.decay){this.decay=(A.responseText==this.lastText?this.decay*this.options.decay:1);this.lastText=A.responseText}this.timer=this.onTimerEvent.bind(this).delay(this.decay*this.frequency)},onTimerEvent:function(){this.updater=new Ajax.Updater(this.container,this.url,this.options)}});function $(B){if(arguments.length>1){for(var A=0,D=[],C=arguments.length;A<C;A++){D.push($(arguments[A]))}return D}if(Object.isString(B)){B=document.getElementById(B)}return Element.extend(B)}if(Prototype.BrowserFeatures.XPath){document._getElementsByXPath=function(F,A){var C=[];var E=document.evaluate(F,$(A)||document,null,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null);for(var B=0,D=E.snapshotLength;B<D;B++){C.push(Element.extend(E.snapshotItem(B)))}return C}}if(!window.Node){var Node={}}if(!Node.ELEMENT_NODE){Object.extend(Node,{ELEMENT_NODE:1,ATTRIBUTE_NODE:2,TEXT_NODE:3,CDATA_SECTION_NODE:4,ENTITY_REFERENCE_NODE:5,ENTITY_NODE:6,PROCESSING_INSTRUCTION_NODE:7,COMMENT_NODE:8,DOCUMENT_NODE:9,DOCUMENT_TYPE_NODE:10,DOCUMENT_FRAGMENT_NODE:11,NOTATION_NODE:12})}(function(){var A=this.Element;this.Element=function(D,C){C=C||{};D=D.toLowerCase();var B=Element.cache;if(Prototype.Browser.IE&&C.name){D="<"+D+' name="'+C.name+'">';delete C.name;return Element.writeAttribute(document.createElement(D),C)}if(!B[D]){B[D]=Element.extend(document.createElement(D))}return Element.writeAttribute(B[D].cloneNode(false),C)};Object.extend(this.Element,A||{});if(A){this.Element.prototype=A.prototype}}).call(window);Element.cache={};Element.Methods={visible:function(A){return $(A).style.display!="none"},toggle:function(A){A=$(A);Element[Element.visible(A)?"hide":"show"](A);return A},hide:function(A){A=$(A);A.style.display="none";return A},show:function(A){A=$(A);A.style.display="";return A},remove:function(A){A=$(A);A.parentNode.removeChild(A);return A},update:function(A,B){A=$(A);if(B&&B.toElement){B=B.toElement()}if(Object.isElement(B)){return A.update().insert(B)}B=Object.toHTML(B);A.innerHTML=B.stripScripts();B.evalScripts.bind(B).defer();return A},replace:function(B,C){B=$(B);if(C&&C.toElement){C=C.toElement()}else{if(!Object.isElement(C)){C=Object.toHTML(C);var A=B.ownerDocument.createRange();A.selectNode(B);C.evalScripts.bind(C).defer();C=A.createContextualFragment(C.stripScripts())}}B.parentNode.replaceChild(C,B);return B},insert:function(C,E){C=$(C);if(Object.isString(E)||Object.isNumber(E)||Object.isElement(E)||(E&&(E.toElement||E.toHTML))){E={bottom:E}}var D,F,B,G;for(var A in E){D=E[A];A=A.toLowerCase();F=Element._insertionTranslations[A];if(D&&D.toElement){D=D.toElement()}if(Object.isElement(D)){F(C,D);continue}D=Object.toHTML(D);B=((A=="before"||A=="after")?C.parentNode:C).tagName.toUpperCase();G=Element._getContentFromAnonymousElement(B,D.stripScripts());if(A=="top"||A=="after"){G.reverse()}G.each(F.curry(C));D.evalScripts.bind(D).defer()}return C},wrap:function(B,C,A){B=$(B);if(Object.isElement(C)){$(C).writeAttribute(A||{})}else{if(Object.isString(C)){C=new Element(C,A)}else{C=new Element("div",C)}}if(B.parentNode){B.parentNode.replaceChild(C,B)}C.appendChild(B);return C},inspect:function(B){B=$(B);var A="<"+B.tagName.toLowerCase();$H({id:"id",className:"class"}).each(function(F){var E=F.first(),C=F.last();var D=(B[E]||"").toString();if(D){A+=" "+C+"="+D.inspect(true)}});return A+">"},recursivelyCollect:function(A,C){A=$(A);var B=[];while(A=A[C]){if(A.nodeType==1){B.push(Element.extend(A))}}return B},ancestors:function(A){return $(A).recursivelyCollect("parentNode")},descendants:function(A){return $(A).select("*")},firstDescendant:function(A){A=$(A).firstChild;while(A&&A.nodeType!=1){A=A.nextSibling}return $(A)},immediateDescendants:function(A){if(!(A=$(A).firstChild)){return[]}while(A&&A.nodeType!=1){A=A.nextSibling}if(A){return[A].concat($(A).nextSiblings())}return[]},previousSiblings:function(A){return $(A).recursivelyCollect("previousSibling")},nextSiblings:function(A){return $(A).recursivelyCollect("nextSibling")},siblings:function(A){A=$(A);return A.previousSiblings().reverse().concat(A.nextSiblings())},match:function(B,A){if(Object.isString(A)){A=new Selector(A)}return A.match($(B))},up:function(B,D,A){B=$(B);if(arguments.length==1){return $(B.parentNode)}var C=B.ancestors();return Object.isNumber(D)?C[D]:Selector.findElement(C,D,A)},down:function(B,C,A){B=$(B);if(arguments.length==1){return B.firstDescendant()}return Object.isNumber(C)?B.descendants()[C]:Element.select(B,C)[A||0]},previous:function(B,D,A){B=$(B);if(arguments.length==1){return $(Selector.handlers.previousElementSibling(B))}var C=B.previousSiblings();return Object.isNumber(D)?C[D]:Selector.findElement(C,D,A)},next:function(C,D,B){C=$(C);if(arguments.length==1){return $(Selector.handlers.nextElementSibling(C))}var A=C.nextSiblings();return Object.isNumber(D)?A[D]:Selector.findElement(A,D,B)},select:function(){var A=$A(arguments),B=$(A.shift());return Selector.findChildElements(B,A)},adjacent:function(){var A=$A(arguments),B=$(A.shift());return Selector.findChildElements(B.parentNode,A).without(B)},identify:function(B){B=$(B);var C=B.readAttribute("id"),A=arguments.callee;if(C){return C}do{C="anonymous_element_"+A.counter++}while($(C));B.writeAttribute("id",C);return C},readAttribute:function(C,A){C=$(C);if(Prototype.Browser.IE){var B=Element._attributeTranslations.read;if(B.values[A]){return B.values[A](C,A)}if(B.names[A]){A=B.names[A]}if(A.include(":")){return(!C.attributes||!C.attributes[A])?null:C.attributes[A].value}}return C.getAttribute(A)},writeAttribute:function(E,C,F){E=$(E);var B={},D=Element._attributeTranslations.write;if(typeof C=="object"){B=C}else{B[C]=Object.isUndefined(F)?true:F}for(var A in B){C=D.names[A]||A;F=B[A];if(D.values[A]){C=D.values[A](E,F)}if(F===false||F===null){E.removeAttribute(C)}else{if(F===true){E.setAttribute(C,C)}else{E.setAttribute(C,F)}}}return E},getHeight:function(A){return $(A).getDimensions().height},getWidth:function(A){return $(A).getDimensions().width},classNames:function(A){return new Element.ClassNames(A)},hasClassName:function(A,B){if(!(A=$(A))){return }var C=A.className;return(C.length>0&&(C==B||new RegExp("(^|\\s)"+B+"(\\s|$)").test(C)))},addClassName:function(A,B){if(!(A=$(A))){return }if(!A.hasClassName(B)){A.className+=(A.className?" ":"")+B}return A},removeClassName:function(A,B){if(!(A=$(A))){return }A.className=A.className.replace(new RegExp("(^|\\s+)"+B+"(\\s+|$)")," ").strip();return A},toggleClassName:function(A,B){if(!(A=$(A))){return }return A[A.hasClassName(B)?"removeClassName":"addClassName"](B)},cleanWhitespace:function(B){B=$(B);var C=B.firstChild;while(C){var A=C.nextSibling;if(C.nodeType==3&&!/\S/.test(C.nodeValue)){B.removeChild(C)}C=A}return B},empty:function(A){return $(A).innerHTML.blank()},descendantOf:function(B,A){B=$(B),A=$(A);if(B.compareDocumentPosition){return(B.compareDocumentPosition(A)&8)===8}if(A.contains){return A.contains(B)&&A!==B}while(B=B.parentNode){if(B==A){return true}}return false},scrollTo:function(A){A=$(A);var B=A.cumulativeOffset();window.scrollTo(B[0],B[1]);return A},getStyle:function(B,C){B=$(B);C=C=="float"?"cssFloat":C.camelize();var D=B.style[C];if(!D||D=="auto"){var A=document.defaultView.getComputedStyle(B,null);D=A?A[C]:null}if(C=="opacity"){return D?parseFloat(D):1}return D=="auto"?null:D},getOpacity:function(A){return $(A).getStyle("opacity")},setStyle:function(B,C){B=$(B);var E=B.style,A;if(Object.isString(C)){B.style.cssText+=";"+C;return C.include("opacity")?B.setOpacity(C.match(/opacity:\s*(\d?\.?\d*)/)[1]):B}for(var D in C){if(D=="opacity"){B.setOpacity(C[D])}else{E[(D=="float"||D=="cssFloat")?(Object.isUndefined(E.styleFloat)?"cssFloat":"styleFloat"):D]=C[D]}}return B},setOpacity:function(A,B){A=$(A);A.style.opacity=(B==1||B==="")?"":(B<0.00001)?0:B;return A},getDimensions:function(C){C=$(C);var G=C.getStyle("display");if(G!="none"&&G!=null){return{width:C.offsetWidth,height:C.offsetHeight}}var B=C.style;var F=B.visibility;var D=B.position;var A=B.display;B.visibility="hidden";B.position="absolute";B.display="block";var H=C.clientWidth;var E=C.clientHeight;B.display=A;B.position=D;B.visibility=F;return{width:H,height:E}},makePositioned:function(A){A=$(A);var B=Element.getStyle(A,"position");if(B=="static"||!B){A._madePositioned=true;A.style.position="relative";if(Prototype.Browser.Opera){A.style.top=0;A.style.left=0}}return A},undoPositioned:function(A){A=$(A);if(A._madePositioned){A._madePositioned=undefined;A.style.position=A.style.top=A.style.left=A.style.bottom=A.style.right=""}return A},makeClipping:function(A){A=$(A);if(A._overflow){return A}A._overflow=Element.getStyle(A,"overflow")||"auto";if(A._overflow!=="hidden"){A.style.overflow="hidden"}return A},undoClipping:function(A){A=$(A);if(!A._overflow){return A}A.style.overflow=A._overflow=="auto"?"":A._overflow;A._overflow=null;return A},cumulativeOffset:function(B){var A=0,C=0;do{A+=B.offsetTop||0;C+=B.offsetLeft||0;B=B.offsetParent}while(B);return Element._returnOffset(C,A)},positionedOffset:function(B){var A=0,D=0;do{A+=B.offsetTop||0;D+=B.offsetLeft||0;B=B.offsetParent;if(B){if(B.tagName.toUpperCase()=="BODY"){break}var C=Element.getStyle(B,"position");if(C!=="static"){break}}}while(B);return Element._returnOffset(D,A)},absolutize:function(B){B=$(B);if(B.getStyle("position")=="absolute"){return B}var D=B.positionedOffset();var F=D[1];var E=D[0];var C=B.clientWidth;var A=B.clientHeight;B._originalLeft=E-parseFloat(B.style.left||0);B._originalTop=F-parseFloat(B.style.top||0);B._originalWidth=B.style.width;B._originalHeight=B.style.height;B.style.position="absolute";B.style.top=F+"px";B.style.left=E+"px";B.style.width=C+"px";B.style.height=A+"px";return B},relativize:function(A){A=$(A);if(A.getStyle("position")=="relative"){return A}A.style.position="relative";var C=parseFloat(A.style.top||0)-(A._originalTop||0);var B=parseFloat(A.style.left||0)-(A._originalLeft||0);A.style.top=C+"px";A.style.left=B+"px";A.style.height=A._originalHeight;A.style.width=A._originalWidth;return A},cumulativeScrollOffset:function(B){var A=0,C=0;do{A+=B.scrollTop||0;C+=B.scrollLeft||0;B=B.parentNode}while(B);return Element._returnOffset(C,A)},getOffsetParent:function(A){if(A.offsetParent){return $(A.offsetParent)}if(A==document.body){return $(A)}while((A=A.parentNode)&&A!=document.body){if(Element.getStyle(A,"position")!="static"){return $(A)}}return $(document.body)},viewportOffset:function(D){var A=0,C=0;var B=D;do{A+=B.offsetTop||0;C+=B.offsetLeft||0;if(B.offsetParent==document.body&&Element.getStyle(B,"position")=="absolute"){break}}while(B=B.offsetParent);B=D;do{if(!Prototype.Browser.Opera||(B.tagName&&(B.tagName.toUpperCase()=="BODY"))){A-=B.scrollTop||0;C-=B.scrollLeft||0}}while(B=B.parentNode);return Element._returnOffset(C,A)},clonePosition:function(B,D){var A=Object.extend({setLeft:true,setTop:true,setWidth:true,setHeight:true,offsetTop:0,offsetLeft:0},arguments[2]||{});D=$(D);var E=D.viewportOffset();B=$(B);var F=[0,0];var C=null;if(Element.getStyle(B,"position")=="absolute"){C=B.getOffsetParent();F=C.viewportOffset()}if(C==document.body){F[0]-=document.body.offsetLeft;F[1]-=document.body.offsetTop}if(A.setLeft){B.style.left=(E[0]-F[0]+A.offsetLeft)+"px"}if(A.setTop){B.style.top=(E[1]-F[1]+A.offsetTop)+"px"}if(A.setWidth){B.style.width=D.offsetWidth+"px"}if(A.setHeight){B.style.height=D.offsetHeight+"px"}return B}};Element.Methods.identify.counter=1;Object.extend(Element.Methods,{getElementsBySelector:Element.Methods.select,childElements:Element.Methods.immediateDescendants});Element._attributeTranslations={write:{names:{className:"class",htmlFor:"for"},values:{}}};if(Prototype.Browser.Opera){Element.Methods.getStyle=Element.Methods.getStyle.wrap(function(D,B,C){switch(C){case"left":case"top":case"right":case"bottom":if(D(B,"position")==="static"){return null}case"height":case"width":if(!Element.visible(B)){return null}var E=parseInt(D(B,C),10);if(E!==B["offset"+C.capitalize()]){return E+"px"}var A;if(C==="height"){A=["border-top-width","padding-top","padding-bottom","border-bottom-width"]}else{A=["border-left-width","padding-left","padding-right","border-right-width"]}return A.inject(E,function(F,G){var H=D(B,G);return H===null?F:F-parseInt(H,10)})+"px";default:return D(B,C)}});Element.Methods.readAttribute=Element.Methods.readAttribute.wrap(function(C,A,B){if(B==="title"){return A.title}return C(A,B)})}else{if(Prototype.Browser.IE){Element.Methods.getOffsetParent=Element.Methods.getOffsetParent.wrap(function(C,B){B=$(B);try{B.offsetParent}catch(E){return $(document.body)}var A=B.getStyle("position");if(A!=="static"){return C(B)}B.setStyle({position:"relative"});var D=C(B);B.setStyle({position:A});return D});$w("positionedOffset viewportOffset").each(function(A){Element.Methods[A]=Element.Methods[A].wrap(function(E,C){C=$(C);try{C.offsetParent}catch(G){return Element._returnOffset(0,0)}var B=C.getStyle("position");if(B!=="static"){return E(C)}var D=C.getOffsetParent();if(D&&D.getStyle("position")==="fixed"){D.setStyle({zoom:1})}C.setStyle({position:"relative"});var F=E(C);C.setStyle({position:B});return F})});Element.Methods.cumulativeOffset=Element.Methods.cumulativeOffset.wrap(function(B,A){try{A.offsetParent}catch(C){return Element._returnOffset(0,0)}return B(A)});Element.Methods.getStyle=function(A,B){A=$(A);B=(B=="float"||B=="cssFloat")?"styleFloat":B.camelize();var C=A.style[B];if(!C&&A.currentStyle){C=A.currentStyle[B]}if(B=="opacity"){if(C=(A.getStyle("filter")||"").match(/alpha\(opacity=(.*)\)/)){if(C[1]){return parseFloat(C[1])/100}}return 1}if(C=="auto"){if((B=="width"||B=="height")&&(A.getStyle("display")!="none")){return A["offset"+B.capitalize()]+"px"}return null}return C};Element.Methods.setOpacity=function(B,E){function F(G){return G.replace(/alpha\([^\)]*\)/gi,"")}B=$(B);var A=B.currentStyle;if((A&&!A.hasLayout)||(!A&&B.style.zoom=="normal")){B.style.zoom=1}var D=B.getStyle("filter"),C=B.style;if(E==1||E===""){(D=F(D))?C.filter=D:C.removeAttribute("filter");return B}else{if(E<0.00001){E=0}}C.filter=F(D)+"alpha(opacity="+(E*100)+")";return B};Element._attributeTranslations={read:{names:{"class":"className","for":"htmlFor"},values:{_getAttr:function(A,B){return A.getAttribute(B,2)},_getAttrNode:function(A,C){var B=A.getAttributeNode(C);return B?B.value:""},_getEv:function(A,B){B=A.getAttribute(B);return B?B.toString().slice(23,-2):null},_flag:function(A,B){return $(A).hasAttribute(B)?B:null},style:function(A){return A.style.cssText.toLowerCase()},title:function(A){return A.title}}}};Element._attributeTranslations.write={names:Object.extend({cellpadding:"cellPadding",cellspacing:"cellSpacing"},Element._attributeTranslations.read.names),values:{checked:function(A,B){A.checked=!!B},style:function(A,B){A.style.cssText=B?B:""}}};Element._attributeTranslations.has={};$w("colSpan rowSpan vAlign dateTime accessKey tabIndex encType maxLength readOnly longDesc frameBorder").each(function(A){Element._attributeTranslations.write.names[A.toLowerCase()]=A;Element._attributeTranslations.has[A.toLowerCase()]=A});(function(A){Object.extend(A,{href:A._getAttr,src:A._getAttr,type:A._getAttr,action:A._getAttrNode,disabled:A._flag,checked:A._flag,readonly:A._flag,multiple:A._flag,onload:A._getEv,onunload:A._getEv,onclick:A._getEv,ondblclick:A._getEv,onmousedown:A._getEv,onmouseup:A._getEv,onmouseover:A._getEv,onmousemove:A._getEv,onmouseout:A._getEv,onfocus:A._getEv,onblur:A._getEv,onkeypress:A._getEv,onkeydown:A._getEv,onkeyup:A._getEv,onsubmit:A._getEv,onreset:A._getEv,onselect:A._getEv,onchange:A._getEv})})(Element._attributeTranslations.read.values)}else{if(Prototype.Browser.Gecko&&/rv:1\.8\.0/.test(navigator.userAgent)){Element.Methods.setOpacity=function(A,B){A=$(A);A.style.opacity=(B==1)?0.999999:(B==="")?"":(B<0.00001)?0:B;return A}}else{if(Prototype.Browser.WebKit){Element.Methods.setOpacity=function(A,B){A=$(A);A.style.opacity=(B==1||B==="")?"":(B<0.00001)?0:B;if(B==1){if(A.tagName.toUpperCase()=="IMG"&&A.width){A.width++;A.width--}else{try{var D=document.createTextNode(" ");A.appendChild(D);A.removeChild(D)}catch(C){}}}return A};Element.Methods.cumulativeOffset=function(B){var A=0,C=0;do{A+=B.offsetTop||0;C+=B.offsetLeft||0;if(B.offsetParent==document.body){if(Element.getStyle(B,"position")=="absolute"){break}}B=B.offsetParent}while(B);return Element._returnOffset(C,A)}}}}}if(Prototype.Browser.IE||Prototype.Browser.Opera){Element.Methods.update=function(B,C){B=$(B);if(C&&C.toElement){C=C.toElement()}if(Object.isElement(C)){return B.update().insert(C)}C=Object.toHTML(C);var A=B.tagName.toUpperCase();if(A in Element._insertionTranslations.tags){$A(B.childNodes).each(function(D){B.removeChild(D)});Element._getContentFromAnonymousElement(A,C.stripScripts()).each(function(D){B.appendChild(D)})}else{B.innerHTML=C.stripScripts()}C.evalScripts.bind(C).defer();return B}}if("outerHTML" in document.createElement("div")){Element.Methods.replace=function(C,E){C=$(C);if(E&&E.toElement){E=E.toElement()}if(Object.isElement(E)){C.parentNode.replaceChild(E,C);return C}E=Object.toHTML(E);var D=C.parentNode,B=D.tagName.toUpperCase();if(Element._insertionTranslations.tags[B]){var F=C.next();var A=Element._getContentFromAnonymousElement(B,E.stripScripts());D.removeChild(C);if(F){A.each(function(G){D.insertBefore(G,F)})}else{A.each(function(G){D.appendChild(G)})}}else{C.outerHTML=E.stripScripts()}E.evalScripts.bind(E).defer();return C}}Element._returnOffset=function(B,C){var A=[B,C];A.left=B;A.top=C;return A};Element._getContentFromAnonymousElement=function(C,B){var D=new Element("div"),A=Element._insertionTranslations.tags[C];if(A){D.innerHTML=A[0]+B+A[1];A[2].times(function(){D=D.firstChild})}else{D.innerHTML=B}return $A(D.childNodes)};Element._insertionTranslations={before:function(A,B){A.parentNode.insertBefore(B,A)},top:function(A,B){A.insertBefore(B,A.firstChild)},bottom:function(A,B){A.appendChild(B)},after:function(A,B){A.parentNode.insertBefore(B,A.nextSibling)},tags:{TABLE:["<table>","</table>",1],TBODY:["<table><tbody>","</tbody></table>",2],TR:["<table><tbody><tr>","</tr></tbody></table>",3],TD:["<table><tbody><tr><td>","</td></tr></tbody></table>",4],SELECT:["<select>","</select>",1]}};(function(){Object.extend(this.tags,{THEAD:this.tags.TBODY,TFOOT:this.tags.TBODY,TH:this.tags.TD})}).call(Element._insertionTranslations);Element.Methods.Simulated={hasAttribute:function(A,C){C=Element._attributeTranslations.has[C]||C;var B=$(A).getAttributeNode(C);return !!(B&&B.specified)}};Element.Methods.ByTag={};Object.extend(Element,Element.Methods);if(!Prototype.BrowserFeatures.ElementExtensions&&document.createElement("div")["__proto__"]){window.HTMLElement={};window.HTMLElement.prototype=document.createElement("div")["__proto__"];Prototype.BrowserFeatures.ElementExtensions=true}Element.extend=(function(){if(Prototype.BrowserFeatures.SpecificElementExtensions){return Prototype.K}var A={},B=Element.Methods.ByTag;var C=Object.extend(function(F){if(!F||F._extendedByPrototype||F.nodeType!=1||F==window){return F}var D=Object.clone(A),E=F.tagName.toUpperCase(),H,G;if(B[E]){Object.extend(D,B[E])}for(H in D){G=D[H];if(Object.isFunction(G)&&!(H in F)){F[H]=G.methodize()}}F._extendedByPrototype=Prototype.emptyFunction;return F},{refresh:function(){if(!Prototype.BrowserFeatures.ElementExtensions){Object.extend(A,Element.Methods);Object.extend(A,Element.Methods.Simulated)}}});C.refresh();return C})();Element.hasAttribute=function(A,B){if(A.hasAttribute){return A.hasAttribute(B)}return Element.Methods.Simulated.hasAttribute(A,B)};Element.addMethods=function(C){var I=Prototype.BrowserFeatures,D=Element.Methods.ByTag;if(!C){Object.extend(Form,Form.Methods);Object.extend(Form.Element,Form.Element.Methods);Object.extend(Element.Methods.ByTag,{FORM:Object.clone(Form.Methods),INPUT:Object.clone(Form.Element.Methods),SELECT:Object.clone(Form.Element.Methods),TEXTAREA:Object.clone(Form.Element.Methods)})}if(arguments.length==2){var B=C;C=arguments[1]}if(!B){Object.extend(Element.Methods,C||{})}else{if(Object.isArray(B)){B.each(H)}else{H(B)}}function H(F){F=F.toUpperCase();if(!Element.Methods.ByTag[F]){Element.Methods.ByTag[F]={}}Object.extend(Element.Methods.ByTag[F],C)}function A(L,K,F){F=F||false;for(var N in L){var M=L[N];if(!Object.isFunction(M)){continue}if(!F||!(N in K)){K[N]=M.methodize()}}}function E(L){var F;var K={OPTGROUP:"OptGroup",TEXTAREA:"TextArea",P:"Paragraph",FIELDSET:"FieldSet",UL:"UList",OL:"OList",DL:"DList",DIR:"Directory",H1:"Heading",H2:"Heading",H3:"Heading",H4:"Heading",H5:"Heading",H6:"Heading",Q:"Quote",INS:"Mod",DEL:"Mod",A:"Anchor",IMG:"Image",CAPTION:"TableCaption",COL:"TableCol",COLGROUP:"TableCol",THEAD:"TableSection",TFOOT:"TableSection",TBODY:"TableSection",TR:"TableRow",TH:"TableCell",TD:"TableCell",FRAMESET:"FrameSet",IFRAME:"IFrame"};if(K[L]){F="HTML"+K[L]+"Element"}if(window[F]){return window[F]}F="HTML"+L+"Element";if(window[F]){return window[F]}F="HTML"+L.capitalize()+"Element";if(window[F]){return window[F]}window[F]={};window[F].prototype=document.createElement(L)["__proto__"];return window[F]}if(I.ElementExtensions){A(Element.Methods,HTMLElement.prototype);A(Element.Methods.Simulated,HTMLElement.prototype,true)}if(I.SpecificElementExtensions){for(var J in Element.Methods.ByTag){var G=E(J);if(Object.isUndefined(G)){continue}A(D[J],G.prototype)}}Object.extend(Element,Element.Methods);delete Element.ByTag;if(Element.extend.refresh){Element.extend.refresh()}Element.cache={}};document.viewport={getDimensions:function(){var A={},C=Prototype.Browser;$w("width height").each(function(E){var B=E.capitalize();if(C.WebKit&&!document.evaluate){A[E]=self["inner"+B]}else{if(C.Opera&&parseFloat(window.opera.version())<9.5){A[E]=document.body["client"+B]}else{A[E]=document.documentElement["client"+B]}}});return A},getWidth:function(){return this.getDimensions().width},getHeight:function(){return this.getDimensions().height},getScrollOffsets:function(){return Element._returnOffset(window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft,window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop)}};var Selector=Class.create({initialize:function(A){this.expression=A.strip();if(this.shouldUseSelectorsAPI()){this.mode="selectorsAPI"}else{if(this.shouldUseXPath()){this.mode="xpath";this.compileXPathMatcher()}else{this.mode="normal";this.compileMatcher()}}},shouldUseXPath:function(){if(!Prototype.BrowserFeatures.XPath){return false}var A=this.expression;if(Prototype.Browser.WebKit&&(A.include("-of-type")||A.include(":empty"))){return false}if((/(\[[\w-]*?:|:checked)/).test(A)){return false}return true},shouldUseSelectorsAPI:function(){if(!Prototype.BrowserFeatures.SelectorsAPI){return false}if(!Selector._div){Selector._div=new Element("div")}try{Selector._div.querySelector(this.expression)}catch(A){return false}return true},compileMatcher:function(){var e=this.expression,ps=Selector.patterns,h=Selector.handlers,c=Selector.criteria,le,p,m;if(Selector._cache[e]){this.matcher=Selector._cache[e];return }this.matcher=["this.matcher = function(root) {","var r = root, h = Selector.handlers, c = false, n;"];while(e&&le!=e&&(/\S/).test(e)){le=e;for(var i in ps){p=ps[i];if(m=e.match(p)){this.matcher.push(Object.isFunction(c[i])?c[i](m):new Template(c[i]).evaluate(m));e=e.replace(m[0],"");break}}}this.matcher.push("return h.unique(n);\n}");eval(this.matcher.join("\n"));Selector._cache[this.expression]=this.matcher},compileXPathMatcher:function(){var E=this.expression,F=Selector.patterns,B=Selector.xpath,D,A;if(Selector._cache[E]){this.xpath=Selector._cache[E];return }this.matcher=[".//*"];while(E&&D!=E&&(/\S/).test(E)){D=E;for(var C in F){if(A=E.match(F[C])){this.matcher.push(Object.isFunction(B[C])?B[C](A):new Template(B[C]).evaluate(A));E=E.replace(A[0],"");break}}}this.xpath=this.matcher.join("");Selector._cache[this.expression]=this.xpath},findElements:function(A){A=A||document;var C=this.expression,B;switch(this.mode){case"selectorsAPI":if(A!==document){var D=A.id,E=$(A).identify();C="#"+E+" "+C}B=$A(A.querySelectorAll(C)).map(Element.extend);A.id=D;return B;case"xpath":return document._getElementsByXPath(this.xpath,A);default:return this.matcher(A)}},match:function(H){this.tokens=[];var L=this.expression,A=Selector.patterns,E=Selector.assertions;var B,D,F;while(L&&B!==L&&(/\S/).test(L)){B=L;for(var I in A){D=A[I];if(F=L.match(D)){if(E[I]){this.tokens.push([I,Object.clone(F)]);L=L.replace(F[0],"")}else{return this.findElements(document).include(H)}}}}var K=true,C,J;for(var I=0,G;G=this.tokens[I];I++){C=G[0],J=G[1];if(!Selector.assertions[C](H,J)){K=false;break}}return K},toString:function(){return this.expression},inspect:function(){return"#<Selector:"+this.expression.inspect()+">"}});Object.extend(Selector,{_cache:{},xpath:{descendant:"//*",child:"/*",adjacent:"/following-sibling::*[1]",laterSibling:"/following-sibling::*",tagName:function(A){if(A[1]=="*"){return""}return"[local-name()='"+A[1].toLowerCase()+"' or local-name()='"+A[1].toUpperCase()+"']"},className:"[contains(concat(' ', @class, ' '), ' #{1} ')]",id:"[@id='#{1}']",attrPresence:function(A){A[1]=A[1].toLowerCase();return new Template("[@#{1}]").evaluate(A)},attr:function(A){A[1]=A[1].toLowerCase();A[3]=A[5]||A[6];return new Template(Selector.xpath.operators[A[2]]).evaluate(A)},pseudo:function(A){var B=Selector.xpath.pseudos[A[1]];if(!B){return""}if(Object.isFunction(B)){return B(A)}return new Template(Selector.xpath.pseudos[A[1]]).evaluate(A)},operators:{"=":"[@#{1}='#{3}']","!=":"[@#{1}!='#{3}']","^=":"[starts-with(@#{1}, '#{3}')]","$=":"[substring(@#{1}, (string-length(@#{1}) - string-length('#{3}') + 1))='#{3}']","*=":"[contains(@#{1}, '#{3}')]","~=":"[contains(concat(' ', @#{1}, ' '), ' #{3} ')]","|=":"[contains(concat('-', @#{1}, '-'), '-#{3}-')]"},pseudos:{"first-child":"[not(preceding-sibling::*)]","last-child":"[not(following-sibling::*)]","only-child":"[not(preceding-sibling::* or following-sibling::*)]",empty:"[count(*) = 0 and (count(text()) = 0)]",checked:"[@checked]",disabled:"[(@disabled) and (@type!='hidden')]",enabled:"[not(@disabled) and (@type!='hidden')]",not:function(B){var H=B[6],G=Selector.patterns,A=Selector.xpath,E,C;var F=[];while(H&&E!=H&&(/\S/).test(H)){E=H;for(var D in G){if(B=H.match(G[D])){C=Object.isFunction(A[D])?A[D](B):new Template(A[D]).evaluate(B);F.push("("+C.substring(1,C.length-1)+")");H=H.replace(B[0],"");break}}}return"[not("+F.join(" and ")+")]"},"nth-child":function(A){return Selector.xpath.pseudos.nth("(count(./preceding-sibling::*) + 1) ",A)},"nth-last-child":function(A){return Selector.xpath.pseudos.nth("(count(./following-sibling::*) + 1) ",A)},"nth-of-type":function(A){return Selector.xpath.pseudos.nth("position() ",A)},"nth-last-of-type":function(A){return Selector.xpath.pseudos.nth("(last() + 1 - position()) ",A)},"first-of-type":function(A){A[6]="1";return Selector.xpath.pseudos["nth-of-type"](A)},"last-of-type":function(A){A[6]="1";return Selector.xpath.pseudos["nth-last-of-type"](A)},"only-of-type":function(A){var B=Selector.xpath.pseudos;return B["first-of-type"](A)+B["last-of-type"](A)},nth:function(E,C){var F,G=C[6],B;if(G=="even"){G="2n+0"}if(G=="odd"){G="2n+1"}if(F=G.match(/^(\d+)$/)){return"["+E+"= "+F[1]+"]"}if(F=G.match(/^(-?\d*)?n(([+-])(\d+))?/)){if(F[1]=="-"){F[1]=-1}var D=F[1]?Number(F[1]):1;var A=F[2]?Number(F[2]):0;B="[((#{fragment} - #{b}) mod #{a} = 0) and ((#{fragment} - #{b}) div #{a} >= 0)]";return new Template(B).evaluate({fragment:E,a:D,b:A})}}}},criteria:{tagName:'n = h.tagName(n, r, "#{1}", c);      c = false;',className:'n = h.className(n, r, "#{1}", c);    c = false;',id:'n = h.id(n, r, "#{1}", c);           c = false;',attrPresence:'n = h.attrPresence(n, r, "#{1}", c); c = false;',attr:function(A){A[3]=(A[5]||A[6]);return new Template('n = h.attr(n, r, "#{1}", "#{3}", "#{2}", c); c = false;').evaluate(A)},pseudo:function(A){if(A[6]){A[6]=A[6].replace(/"/g,'\\"')}return new Template('n = h.pseudo(n, "#{1}", "#{6}", r, c); c = false;').evaluate(A)},descendant:'c = "descendant";',child:'c = "child";',adjacent:'c = "adjacent";',laterSibling:'c = "laterSibling";'},patterns:{laterSibling:/^\s*~\s*/,child:/^\s*>\s*/,adjacent:/^\s*\+\s*/,descendant:/^\s/,tagName:/^\s*(\*|[\w\-]+)(\b|$)?/,id:/^#([\w\-\*]+)(\b|$)/,className:/^\.([\w\-\*]+)(\b|$)/,pseudo:/^:((first|last|nth|nth-last|only)(-child|-of-type)|empty|checked|(en|dis)abled|not)(\((.*?)\))?(\b|$|(?=\s|[:+~>]))/,attrPresence:/^\[((?:[\w]+:)?[\w]+)\]/,attr:/\[((?:[\w-]*:)?[\w-]+)\s*(?:([!^$*~|]?=)\s*((['"])([^\4]*?)\4|([^'"][^\]]*?)))?\]/},assertions:{tagName:function(A,B){return B[1].toUpperCase()==A.tagName.toUpperCase()},className:function(A,B){return Element.hasClassName(A,B[1])},id:function(A,B){return A.id===B[1]},attrPresence:function(A,B){return Element.hasAttribute(A,B[1])},attr:function(B,C){var A=Element.readAttribute(B,C[1]);return A&&Selector.operators[C[2]](A,C[5]||C[6])}},handlers:{concat:function(B,A){for(var C=0,D;D=A[C];C++){B.push(D)}return B},mark:function(A){var D=Prototype.emptyFunction;for(var B=0,C;C=A[B];B++){C._countedByPrototype=D}return A},unmark:function(A){for(var B=0,C;C=A[B];B++){C._countedByPrototype=undefined}return A},index:function(A,D,G){A._countedByPrototype=Prototype.emptyFunction;if(D){for(var B=A.childNodes,E=B.length-1,C=1;E>=0;E--){var F=B[E];if(F.nodeType==1&&(!G||F._countedByPrototype)){F.nodeIndex=C++}}}else{for(var E=0,C=1,B=A.childNodes;F=B[E];E++){if(F.nodeType==1&&(!G||F._countedByPrototype)){F.nodeIndex=C++}}}},unique:function(B){if(B.length==0){return B}var D=[],E;for(var C=0,A=B.length;C<A;C++){if(!(E=B[C])._countedByPrototype){E._countedByPrototype=Prototype.emptyFunction;D.push(Element.extend(E))}}return Selector.handlers.unmark(D)},descendant:function(A){var D=Selector.handlers;for(var C=0,B=[],E;E=A[C];C++){D.concat(B,E.getElementsByTagName("*"))}return B},child:function(A){var E=Selector.handlers;for(var D=0,C=[],F;F=A[D];D++){for(var B=0,G;G=F.childNodes[B];B++){if(G.nodeType==1&&G.tagName!="!"){C.push(G)}}}return C},adjacent:function(A){for(var C=0,B=[],E;E=A[C];C++){var D=this.nextElementSibling(E);if(D){B.push(D)}}return B},laterSibling:function(A){var D=Selector.handlers;for(var C=0,B=[],E;E=A[C];C++){D.concat(B,Element.nextSiblings(E))}return B},nextElementSibling:function(A){while(A=A.nextSibling){if(A.nodeType==1){return A}}return null},previousElementSibling:function(A){while(A=A.previousSibling){if(A.nodeType==1){return A}}return null},tagName:function(A,H,C,B){var I=C.toUpperCase();var E=[],G=Selector.handlers;if(A){if(B){if(B=="descendant"){for(var F=0,D;D=A[F];F++){G.concat(E,D.getElementsByTagName(C))}return E}else{A=this[B](A)}if(C=="*"){return A}}for(var F=0,D;D=A[F];F++){if(D.tagName.toUpperCase()===I){E.push(D)}}return E}else{return H.getElementsByTagName(C)}},id:function(B,A,H,F){var G=$(H),D=Selector.handlers;if(!G){return[]}if(!B&&A==document){return[G]}if(B){if(F){if(F=="child"){for(var C=0,E;E=B[C];C++){if(G.parentNode==E){return[G]}}}else{if(F=="descendant"){for(var C=0,E;E=B[C];C++){if(Element.descendantOf(G,E)){return[G]}}}else{if(F=="adjacent"){for(var C=0,E;E=B[C];C++){if(Selector.handlers.previousElementSibling(G)==E){return[G]}}}else{B=D[F](B)}}}}for(var C=0,E;E=B[C];C++){if(E==G){return[G]}}return[]}return(G&&Element.descendantOf(G,A))?[G]:[]},className:function(B,A,C,D){if(B&&D){B=this[D](B)}return Selector.handlers.byClassName(B,A,C)},byClassName:function(C,B,F){if(!C){C=Selector.handlers.descendant([B])}var H=" "+F+" ";for(var E=0,D=[],G,A;G=C[E];E++){A=G.className;if(A.length==0){continue}if(A==F||(" "+A+" ").include(H)){D.push(G)}}return D},attrPresence:function(C,B,A,G){if(!C){C=B.getElementsByTagName("*")}if(C&&G){C=this[G](C)}var E=[];for(var D=0,F;F=C[D];D++){if(Element.hasAttribute(F,A)){E.push(F)}}return E},attr:function(A,I,H,J,C,B){if(!A){A=I.getElementsByTagName("*")}if(A&&B){A=this[B](A)}var K=Selector.operators[C],F=[];for(var E=0,D;D=A[E];E++){var G=Element.readAttribute(D,H);if(G===null){continue}if(K(G,J)){F.push(D)}}return F},pseudo:function(B,C,E,A,D){if(B&&D){B=this[D](B)}if(!B){B=A.getElementsByTagName("*")}return Selector.pseudos[C](B,E,A)}},pseudos:{"first-child":function(B,F,A){for(var D=0,C=[],E;E=B[D];D++){if(Selector.handlers.previousElementSibling(E)){continue}C.push(E)}return C},"last-child":function(B,F,A){for(var D=0,C=[],E;E=B[D];D++){if(Selector.handlers.nextElementSibling(E)){continue}C.push(E)}return C},"only-child":function(B,G,A){var E=Selector.handlers;for(var D=0,C=[],F;F=B[D];D++){if(!E.previousElementSibling(F)&&!E.nextElementSibling(F)){C.push(F)}}return C},"nth-child":function(B,C,A){return Selector.pseudos.nth(B,C,A)},"nth-last-child":function(B,C,A){return Selector.pseudos.nth(B,C,A,true)},"nth-of-type":function(B,C,A){return Selector.pseudos.nth(B,C,A,false,true)},"nth-last-of-type":function(B,C,A){return Selector.pseudos.nth(B,C,A,true,true)},"first-of-type":function(B,C,A){return Selector.pseudos.nth(B,"1",A,false,true)},"last-of-type":function(B,C,A){return Selector.pseudos.nth(B,"1",A,true,true)},"only-of-type":function(B,D,A){var C=Selector.pseudos;return C["last-of-type"](C["first-of-type"](B,D,A),D,A)},getIndices:function(B,A,C){if(B==0){return A>0?[A]:[]}return $R(1,C).inject([],function(D,E){if(0==(E-A)%B&&(E-A)/B>=0){D.push(E)}return D})},nth:function(A,L,N,K,C){if(A.length==0){return[]}if(L=="even"){L="2n+0"}if(L=="odd"){L="2n+1"}var J=Selector.handlers,I=[],B=[],E;J.mark(A);for(var H=0,D;D=A[H];H++){if(!D.parentNode._countedByPrototype){J.index(D.parentNode,K,C);B.push(D.parentNode)}}if(L.match(/^\d+$/)){L=Number(L);for(var H=0,D;D=A[H];H++){if(D.nodeIndex==L){I.push(D)}}}else{if(E=L.match(/^(-?\d*)?n(([+-])(\d+))?/)){if(E[1]=="-"){E[1]=-1}var O=E[1]?Number(E[1]):1;var M=E[2]?Number(E[2]):0;var P=Selector.pseudos.getIndices(O,M,A.length);for(var H=0,D,F=P.length;D=A[H];H++){for(var G=0;G<F;G++){if(D.nodeIndex==P[G]){I.push(D)}}}}}J.unmark(A);J.unmark(B);return I},empty:function(B,F,A){for(var D=0,C=[],E;E=B[D];D++){if(E.tagName=="!"||E.firstChild){continue}C.push(E)}return C},not:function(A,D,I){var G=Selector.handlers,J,C;var H=new Selector(D).findElements(I);G.mark(H);for(var F=0,E=[],B;B=A[F];F++){if(!B._countedByPrototype){E.push(B)}}G.unmark(H);return E},enabled:function(B,F,A){for(var D=0,C=[],E;E=B[D];D++){if(!E.disabled&&(!E.type||E.type!=="hidden")){C.push(E)}}return C},disabled:function(B,F,A){for(var D=0,C=[],E;E=B[D];D++){if(E.disabled){C.push(E)}}return C},checked:function(B,F,A){for(var D=0,C=[],E;E=B[D];D++){if(E.checked){C.push(E)}}return C}},operators:{"=":function(B,A){return B==A},"!=":function(B,A){return B!=A},"^=":function(B,A){return B==A||B&&B.startsWith(A)},"$=":function(B,A){return B==A||B&&B.endsWith(A)},"*=":function(B,A){return B==A||B&&B.include(A)},"$=":function(B,A){return B.endsWith(A)},"*=":function(B,A){return B.include(A)},"~=":function(B,A){return(" "+B+" ").include(" "+A+" ")},"|=":function(B,A){return("-"+(B||"").toUpperCase()+"-").include("-"+(A||"").toUpperCase()+"-")}},split:function(B){var A=[];B.scan(/(([\w#:.~>+()\s-]+|\*|\[.*?\])+)\s*(,|$)/,function(C){A.push(C[1].strip())});return A},matchElements:function(F,G){var E=$$(G),D=Selector.handlers;D.mark(E);for(var C=0,B=[],A;A=F[C];C++){if(A._countedByPrototype){B.push(A)}}D.unmark(E);return B},findElement:function(B,C,A){if(Object.isNumber(C)){A=C;C=false}return Selector.matchElements(B,C||"*")[A||0]},findChildElements:function(E,G){G=Selector.split(G.join(","));var D=[],F=Selector.handlers;for(var C=0,B=G.length,A;C<B;C++){A=new Selector(G[C].strip());F.concat(D,A.findElements(E))}return(B>1)?F.unique(D):D}});if(Prototype.Browser.IE){Object.extend(Selector.handlers,{concat:function(B,A){for(var C=0,D;D=A[C];C++){if(D.tagName!=="!"){B.push(D)}}return B},unmark:function(A){for(var B=0,C;C=A[B];B++){C.removeAttribute("_countedByPrototype")}return A}})}function $$(){return Selector.findChildElements(document,$A(arguments))}var Form={reset:function(A){$(A).reset();return A},serializeElements:function(G,B){if(typeof B!="object"){B={hash:!!B}}else{if(Object.isUndefined(B.hash)){B.hash=true}}var C,F,A=false,E=B.submit;var D=G.inject({},function(H,I){if(!I.disabled&&I.name){C=I.name;F=$(I).getValue();if(F!=null&&I.type!="file"&&(I.type!="submit"||(!A&&E!==false&&(!E||C==E)&&(A=true)))){if(C in H){if(!Object.isArray(H[C])){H[C]=[H[C]]}H[C].push(F)}else{H[C]=F}}}return H});return B.hash?D:Object.toQueryString(D)}};Form.Methods={serialize:function(B,A){return Form.serializeElements(Form.getElements(B),A)},getElements:function(A){return $A($(A).getElementsByTagName("*")).inject([],function(B,C){if(Form.Element.Serializers[C.tagName.toLowerCase()]){B.push(Element.extend(C))}return B})},getInputs:function(G,C,D){G=$(G);var A=G.getElementsByTagName("input");if(!C&&!D){return $A(A).map(Element.extend)}for(var E=0,H=[],F=A.length;E<F;E++){var B=A[E];if((C&&B.type!=C)||(D&&B.name!=D)){continue}H.push(Element.extend(B))}return H},disable:function(A){A=$(A);Form.getElements(A).invoke("disable");return A},enable:function(A){A=$(A);Form.getElements(A).invoke("enable");return A},findFirstElement:function(B){var C=$(B).getElements().findAll(function(D){return"hidden"!=D.type&&!D.disabled});var A=C.findAll(function(D){return D.hasAttribute("tabIndex")&&D.tabIndex>=0}).sortBy(function(D){return D.tabIndex}).first();return A?A:C.find(function(D){return["input","select","textarea"].include(D.tagName.toLowerCase())})},focusFirstElement:function(A){A=$(A);A.findFirstElement().activate();return A},request:function(B,A){B=$(B),A=Object.clone(A||{});var D=A.parameters,C=B.readAttribute("action")||"";if(C.blank()){C=window.location.href}A.parameters=B.serialize(true);if(D){if(Object.isString(D)){D=D.toQueryParams()}Object.extend(A.parameters,D)}if(B.hasAttribute("method")&&!A.method){A.method=B.method}return new Ajax.Request(C,A)}};Form.Element={focus:function(A){$(A).focus();return A},select:function(A){$(A).select();return A}};Form.Element.Methods={serialize:function(A){A=$(A);if(!A.disabled&&A.name){var B=A.getValue();if(B!=undefined){var C={};C[A.name]=B;return Object.toQueryString(C)}}return""},getValue:function(A){A=$(A);var B=A.tagName.toLowerCase();return Form.Element.Serializers[B](A)},setValue:function(A,B){A=$(A);var C=A.tagName.toLowerCase();Form.Element.Serializers[C](A,B);return A},clear:function(A){$(A).value="";return A},present:function(A){return $(A).value!=""},activate:function(A){A=$(A);try{A.focus();if(A.select&&(A.tagName.toLowerCase()!="input"||!["button","reset","submit"].include(A.type))){A.select()}}catch(B){}return A},disable:function(A){A=$(A);A.disabled=true;return A},enable:function(A){A=$(A);A.disabled=false;return A}};var Field=Form.Element;var $F=Form.Element.Methods.getValue;Form.Element.Serializers={input:function(A,B){switch(A.type.toLowerCase()){case"checkbox":case"radio":return Form.Element.Serializers.inputSelector(A,B);default:return Form.Element.Serializers.textarea(A,B)}},inputSelector:function(A,B){if(Object.isUndefined(B)){return A.checked?A.value:null}else{A.checked=!!B}},textarea:function(A,B){if(Object.isUndefined(B)){return A.value}else{A.value=B}},select:function(C,F){if(Object.isUndefined(F)){return this[C.type=="select-one"?"selectOne":"selectMany"](C)}else{var B,D,G=!Object.isArray(F);for(var A=0,E=C.length;A<E;A++){B=C.options[A];D=this.optionValue(B);if(G){if(D==F){B.selected=true;return }}else{B.selected=F.include(D)}}}},selectOne:function(B){var A=B.selectedIndex;return A>=0?this.optionValue(B.options[A]):null},selectMany:function(D){var A,E=D.length;if(!E){return null}for(var C=0,A=[];C<E;C++){var B=D.options[C];if(B.selected){A.push(this.optionValue(B))}}return A},optionValue:function(A){return Element.extend(A).hasAttribute("value")?A.value:A.text}};Abstract.TimedObserver=Class.create(PeriodicalExecuter,{initialize:function($super,A,B,C){$super(C,B);this.element=$(A);this.lastValue=this.getValue()},execute:function(){var A=this.getValue();if(Object.isString(this.lastValue)&&Object.isString(A)?this.lastValue!=A:String(this.lastValue)!=String(A)){this.callback(this.element,A);this.lastValue=A}}});Form.Element.Observer=Class.create(Abstract.TimedObserver,{getValue:function(){return Form.Element.getValue(this.element)}});Form.Observer=Class.create(Abstract.TimedObserver,{getValue:function(){return Form.serialize(this.element)}});Abstract.EventObserver=Class.create({initialize:function(A,B){this.element=$(A);this.callback=B;this.lastValue=this.getValue();if(this.element.tagName.toLowerCase()=="form"){this.registerFormCallbacks()}else{this.registerCallback(this.element)}},onElementEvent:function(){var A=this.getValue();if(this.lastValue!=A){this.callback(this.element,A);this.lastValue=A}},registerFormCallbacks:function(){Form.getElements(this.element).each(this.registerCallback,this)},registerCallback:function(A){if(A.type){switch(A.type.toLowerCase()){case"checkbox":case"radio":Event.observe(A,"click",this.onElementEvent.bind(this));break;default:Event.observe(A,"change",this.onElementEvent.bind(this));break}}}});Form.Element.EventObserver=Class.create(Abstract.EventObserver,{getValue:function(){return Form.Element.getValue(this.element)}});Form.EventObserver=Class.create(Abstract.EventObserver,{getValue:function(){return Form.serialize(this.element)}});if(!window.Event){var Event={}}Object.extend(Event,{KEY_BACKSPACE:8,KEY_TAB:9,KEY_RETURN:13,KEY_ESC:27,KEY_LEFT:37,KEY_UP:38,KEY_RIGHT:39,KEY_DOWN:40,KEY_DELETE:46,KEY_HOME:36,KEY_END:35,KEY_PAGEUP:33,KEY_PAGEDOWN:34,KEY_INSERT:45,cache:{},relatedTarget:function(B){var A;switch(B.type){case"mouseover":A=B.fromElement;break;case"mouseout":A=B.toElement;break;default:return null}return Element.extend(A)}});Event.Methods=(function(){var A;if(Prototype.Browser.IE){var B={0:1,1:4,2:2};A=function(D,C){return D.button==B[C]}}else{if(Prototype.Browser.WebKit){A=function(D,C){switch(C){case 0:return D.which==1&&!D.metaKey;case 1:return D.which==1&&D.metaKey;default:return false}}}else{A=function(D,C){return D.which?(D.which===C+1):(D.button===C)}}}return{isLeftClick:function(C){return A(C,0)},isMiddleClick:function(C){return A(C,1)},isRightClick:function(C){return A(C,2)},element:function(E){E=Event.extend(E);var D=E.target,C=E.type,F=E.currentTarget;if(F&&F.tagName){if(C==="load"||C==="error"||(C==="click"&&F.tagName.toLowerCase()==="input"&&F.type==="radio")){D=F}}if(D.nodeType==Node.TEXT_NODE){D=D.parentNode}return Element.extend(D)},findElement:function(D,F){var C=Event.element(D);if(!F){return C}var E=[C].concat(C.ancestors());return Selector.findElement(E,F,0)},pointer:function(E){var D=document.documentElement,C=document.body||{scrollLeft:0,scrollTop:0};return{x:E.pageX||(E.clientX+(D.scrollLeft||C.scrollLeft)-(D.clientLeft||0)),y:E.pageY||(E.clientY+(D.scrollTop||C.scrollTop)-(D.clientTop||0))}},pointerX:function(C){return Event.pointer(C).x},pointerY:function(C){return Event.pointer(C).y},stop:function(C){Event.extend(C);C.preventDefault();C.stopPropagation();C.stopped=true}}})();Event.extend=(function(){var A=Object.keys(Event.Methods).inject({},function(B,C){B[C]=Event.Methods[C].methodize();return B});if(Prototype.Browser.IE){Object.extend(A,{stopPropagation:function(){this.cancelBubble=true},preventDefault:function(){this.returnValue=false},inspect:function(){return"[object Event]"}});return function(B){if(!B){return false}if(B._extendedByPrototype){return B}B._extendedByPrototype=Prototype.emptyFunction;var C=Event.pointer(B);Object.extend(B,{target:B.srcElement,relatedTarget:Event.relatedTarget(B),pageX:C.x,pageY:C.y});return Object.extend(B,A)}}else{Event.prototype=Event.prototype||document.createEvent("HTMLEvents")["__proto__"];Object.extend(Event.prototype,A);return Prototype.K}})();Object.extend(Event,(function(){var B=Event.cache;function C(J){if(J._prototypeEventID){return J._prototypeEventID[0]}arguments.callee.id=arguments.callee.id||1;return J._prototypeEventID=[++arguments.callee.id]}function G(J){if(J&&J.include(":")){return"dataavailable"}return J}function A(J){return B[J]=B[J]||{}}function F(L,J){var K=A(L);return K[J]=K[J]||[]}function H(K,J,L){var O=C(K);var N=F(O,J);if(N.pluck("handler").include(L)){return false}var M=function(P){if(!Event||!Event.extend||(P.eventName&&P.eventName!=J)){return false}Event.extend(P);L.call(K,P)};M.handler=L;N.push(M);return M}function I(M,J,K){var L=F(M,J);return L.find(function(N){return N.handler==K})}function D(M,J,K){var L=A(M);if(!L[J]){return false}L[J]=L[J].without(I(M,J,K))}function E(){for(var K in B){for(var J in B[K]){B[K][J]=null}}}if(window.attachEvent){window.attachEvent("onunload",E)}if(Prototype.Browser.WebKit){window.addEventListener("unload",Prototype.emptyFunction,false)}return{observe:function(L,J,M){L=$(L);var K=G(J);var N=H(L,J,M);if(!N){return L}if(L.addEventListener){L.addEventListener(K,N,false)}else{L.attachEvent("on"+K,N)}return L},stopObserving:function(L,J,M){L=$(L);var O=C(L),K=G(J);if(!M&&J){F(O,J).each(function(P){L.stopObserving(J,P.handler)});return L}else{if(!J){Object.keys(A(O)).each(function(P){L.stopObserving(P)});return L}}var N=I(O,J,M);if(!N){return L}if(L.removeEventListener){L.removeEventListener(K,N,false)}else{L.detachEvent("on"+K,N)}D(O,J,M);return L},fire:function(L,K,J){L=$(L);if(L==document&&document.createEvent&&!L.dispatchEvent){L=document.documentElement}var M;if(document.createEvent){M=document.createEvent("HTMLEvents");M.initEvent("dataavailable",true,true)}else{M=document.createEventObject();M.eventType="ondataavailable"}M.eventName=K;M.memo=J||{};if(document.createEvent){L.dispatchEvent(M)}else{L.fireEvent(M.eventType,M)}return Event.extend(M)}}})());Object.extend(Event,Event.Methods);Element.addMethods({fire:Event.fire,observe:Event.observe,stopObserving:Event.stopObserving});Object.extend(document,{fire:Element.Methods.fire.methodize(),observe:Element.Methods.observe.methodize(),stopObserving:Element.Methods.stopObserving.methodize(),loaded:false});(function(){var B;function A(){if(document.loaded){return }if(B){window.clearInterval(B)}document.fire("dom:loaded");document.loaded=true}if(document.addEventListener){if(Prototype.Browser.WebKit){B=window.setInterval(function(){if(/loaded|complete/.test(document.readyState)){A()}},0);Event.observe(window,"load",A)}else{document.addEventListener("DOMContentLoaded",A,false)}}else{document.write("<script id=__onDOMContentLoaded defer src=//:><\/script>");$("__onDOMContentLoaded").onreadystatechange=function(){if(this.readyState=="complete"){this.onreadystatechange=null;A()}}}})();Hash.toQueryString=Object.toQueryString;var Toggle={display:Element.toggle};Element.Methods.childOf=Element.Methods.descendantOf;var Insertion={Before:function(A,B){return Element.insert(A,{before:B})},Top:function(A,B){return Element.insert(A,{top:B})},Bottom:function(A,B){return Element.insert(A,{bottom:B})},After:function(A,B){return Element.insert(A,{after:B})}};var $continue=new Error('"throw $continue" is deprecated, use "return" instead');var Position={includeScrollOffsets:false,prepare:function(){this.deltaX=window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft||0;this.deltaY=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0},within:function(B,A,C){if(this.includeScrollOffsets){return this.withinIncludingScrolloffsets(B,A,C)}this.xcomp=A;this.ycomp=C;this.offset=Element.cumulativeOffset(B);return(C>=this.offset[1]&&C<this.offset[1]+B.offsetHeight&&A>=this.offset[0]&&A<this.offset[0]+B.offsetWidth)},withinIncludingScrolloffsets:function(B,A,D){var C=Element.cumulativeScrollOffset(B);this.xcomp=A+C[0]-this.deltaX;this.ycomp=D+C[1]-this.deltaY;this.offset=Element.cumulativeOffset(B);return(this.ycomp>=this.offset[1]&&this.ycomp<this.offset[1]+B.offsetHeight&&this.xcomp>=this.offset[0]&&this.xcomp<this.offset[0]+B.offsetWidth)},overlap:function(B,A){if(!B){return 0}if(B=="vertical"){return((this.offset[1]+A.offsetHeight)-this.ycomp)/A.offsetHeight}if(B=="horizontal"){return((this.offset[0]+A.offsetWidth)-this.xcomp)/A.offsetWidth}},cumulativeOffset:Element.Methods.cumulativeOffset,positionedOffset:Element.Methods.positionedOffset,absolutize:function(A){Position.prepare();return Element.absolutize(A)},relativize:function(A){Position.prepare();return Element.relativize(A)},realOffset:Element.Methods.cumulativeScrollOffset,offsetParent:Element.Methods.getOffsetParent,page:Element.Methods.viewportOffset,clone:function(B,C,A){A=A||{};return Element.clonePosition(C,B,A)}};if(!document.getElementsByClassName){document.getElementsByClassName=function(B){function A(C){return C.blank()?null:"[contains(concat(' ', @class, ' '), ' "+C+" ')]"}B.getElementsByClassName=Prototype.BrowserFeatures.XPath?function(C,E){E=E.toString().strip();var D=/\s/.test(E)?$w(E).map(A).join(""):A(E);return D?document._getElementsByXPath(".//*"+D,C):[]}:function(E,F){F=F.toString().strip();var G=[],H=(/\s/.test(F)?$w(F):null);if(!H&&!F){return G}var C=$(E).getElementsByTagName("*");F=" "+F+" ";for(var D=0,J,I;J=C[D];D++){if(J.className&&(I=" "+J.className+" ")&&(I.include(F)||(H&&H.all(function(K){return !K.toString().blank()&&I.include(" "+K+" ")})))){G.push(Element.extend(J))}}return G};return function(D,C){return $(C||document.body).getElementsByClassName(D)}}(Element.Methods)}Element.ClassNames=Class.create();Element.ClassNames.prototype={initialize:function(A){this.element=$(A)},_each:function(A){this.element.className.split(/\s+/).select(function(B){return B.length>0})._each(A)},set:function(A){this.element.className=A},add:function(A){if(this.include(A)){return }this.set($A(this).concat(A).join(" "))},remove:function(A){if(!this.include(A)){return }this.set($A(this).without(A).join(" "))},toString:function(){return $A(this).join(" ")}};Object.extend(Element.ClassNames.prototype,Enumerable);Element.addMethods();var Scriptaculous={Version:"1.8.2",require:function(A){document.write('<script type="text/javascript" src="'+A+'"><\/script>')},REQUIRED_PROTOTYPE:"1.6.0.3",load:function(){function A(B){var C=B.replace(/_.*|\./g,"");C=parseInt(C+"0".times(4-C.length));return B.indexOf("_")>-1?C-1:C}if((typeof Prototype=="undefined")||(typeof Element=="undefined")||(typeof Element.Methods=="undefined")||(A(Prototype.Version)<A(Scriptaculous.REQUIRED_PROTOTYPE))){throw ("script.aculo.us requires the Prototype JavaScript framework >= "+Scriptaculous.REQUIRED_PROTOTYPE)}}};Scriptaculous.load();var Builder={NODEMAP:{AREA:"map",CAPTION:"table",COL:"table",COLGROUP:"table",LEGEND:"fieldset",OPTGROUP:"select",OPTION:"select",PARAM:"object",TBODY:"table",TD:"table",TFOOT:"table",TH:"table",THEAD:"table",TR:"table"},node:function(A){A=A.toUpperCase();var F=this.NODEMAP[A]||"div";var B=document.createElement(F);try{B.innerHTML="<"+A+"></"+A+">"}catch(E){}var D=B.firstChild||null;if(D&&(D.tagName.toUpperCase()!=A)){D=D.getElementsByTagName(A)[0]}if(!D){D=document.createElement(A)}if(!D){return }if(arguments[1]){if(this._isStringOrNumber(arguments[1])||(arguments[1] instanceof Array)||arguments[1].tagName){this._children(D,arguments[1])}else{var C=this._attributes(arguments[1]);if(C.length){try{B.innerHTML="<"+A+" "+C+"></"+A+">"}catch(E){}D=B.firstChild||null;if(!D){D=document.createElement(A);for(attr in arguments[1]){D[attr=="class"?"className":attr]=arguments[1][attr]}}if(D.tagName.toUpperCase()!=A){D=B.getElementsByTagName(A)[0]}}}}if(arguments[2]){this._children(D,arguments[2])}return $(D)},_text:function(A){return document.createTextNode(A)},ATTR_MAP:{className:"class",htmlFor:"for"},_attributes:function(A){var B=[];for(attribute in A){B.push((attribute in this.ATTR_MAP?this.ATTR_MAP[attribute]:attribute)+'="'+A[attribute].toString().escapeHTML().gsub(/"/,"&quot;")+'"')}return B.join(" ")},_children:function(B,A){if(A.tagName){B.appendChild(A);return }if(typeof A=="object"){A.flatten().each(function(C){if(typeof C=="object"){B.appendChild(C)}else{if(Builder._isStringOrNumber(C)){B.appendChild(Builder._text(C))}}})}else{if(Builder._isStringOrNumber(A)){B.appendChild(Builder._text(A))}}},_isStringOrNumber:function(A){return(typeof A=="string"||typeof A=="number")},build:function(B){var A=this.node("div");$(A).update(B.strip());return A.down()},dump:function(B){if(typeof B!="object"&&typeof B!="function"){B=window}var A=("A ABBR ACRONYM ADDRESS APPLET AREA B BASE BASEFONT BDO BIG BLOCKQUOTE BODY BR BUTTON CAPTION CENTER CITE CODE COL COLGROUP DD DEL DFN DIR DIV DL DT EM FIELDSET FONT FORM FRAME FRAMESET H1 H2 H3 H4 H5 H6 HEAD HR HTML I IFRAME IMG INPUT INS ISINDEX KBD LABEL LEGEND LI LINK MAP MENU META NOFRAMES NOSCRIPT OBJECT OL OPTGROUP OPTION P PARAM PRE Q S SAMP SCRIPT SELECT SMALL SPAN STRIKE STRONG STYLE SUB SUP TABLE TBODY TD TEXTAREA TFOOT TH THEAD TITLE TR TT U UL VAR").split(/\s+/);A.each(function(C){B[C]=function(){return Builder.node.apply(Builder,[C].concat($A(arguments)))}})}};String.prototype.parseColor=function(){var A="#";if(this.slice(0,4)=="rgb("){var C=this.slice(4,this.length-1).split(",");var B=0;do{A+=parseInt(C[B]).toColorPart()}while(++B<3)}else{if(this.slice(0,1)=="#"){if(this.length==4){for(var B=1;B<4;B++){A+=(this.charAt(B)+this.charAt(B)).toLowerCase()}}if(this.length==7){A=this.toLowerCase()}}}return(A.length==7?A:(arguments[0]||this))};Element.collectTextNodes=function(A){return $A($(A).childNodes).collect(function(B){return(B.nodeType==3?B.nodeValue:(B.hasChildNodes()?Element.collectTextNodes(B):""))}).flatten().join("")};Element.collectTextNodesIgnoreClass=function(A,B){return $A($(A).childNodes).collect(function(C){return(C.nodeType==3?C.nodeValue:((C.hasChildNodes()&&!Element.hasClassName(C,B))?Element.collectTextNodesIgnoreClass(C,B):""))}).flatten().join("")};Element.setContentZoom=function(A,B){A=$(A);A.setStyle({fontSize:(B/100)+"em"});if(Prototype.Browser.WebKit){window.scrollBy(0,0)}return A};Element.getInlineOpacity=function(A){return $(A).style.opacity||""};Element.forceRerendering=function(A){try{A=$(A);var C=document.createTextNode(" ");A.appendChild(C);A.removeChild(C)}catch(B){}};var Effect={_elementDoesNotExistError:{name:"ElementDoesNotExistError",message:"The specified DOM element does not exist, but is required for this effect to operate"},Transitions:{linear:Prototype.K,sinoidal:function(A){return(-Math.cos(A*Math.PI)/2)+0.5},reverse:function(A){return 1-A},flicker:function(A){var A=((-Math.cos(A*Math.PI)/4)+0.75)+Math.random()/4;return A>1?1:A},wobble:function(A){return(-Math.cos(A*Math.PI*(9*A))/2)+0.5},pulse:function(B,A){return(-Math.cos((B*((A||5)-0.5)*2)*Math.PI)/2)+0.5},spring:function(A){return 1-(Math.cos(A*4.5*Math.PI)*Math.exp(-A*6))},none:function(A){return 0},full:function(A){return 1}},DefaultOptions:{duration:1,fps:100,sync:false,from:0,to:1,delay:0,queue:"parallel"},tagifyText:function(A){var B="position:relative";if(Prototype.Browser.IE){B+=";zoom:1"}A=$(A);$A(A.childNodes).each(function(C){if(C.nodeType==3){C.nodeValue.toArray().each(function(D){A.insertBefore(new Element("span",{style:B}).update(D==" "?String.fromCharCode(160):D),C)});Element.remove(C)}})},multiple:function(B,C){var E;if(((typeof B=="object")||Object.isFunction(B))&&(B.length)){E=B}else{E=$(B).childNodes}var A=Object.extend({speed:0.1,delay:0},arguments[2]||{});var D=A.delay;$A(E).each(function(G,F){new C(G,Object.extend(A,{delay:F*A.speed+D}))})},PAIRS:{slide:["SlideDown","SlideUp"],blind:["BlindDown","BlindUp"],appear:["Appear","Fade"]},toggle:function(B,C){B=$(B);C=(C||"appear").toLowerCase();var A=Object.extend({queue:{position:"end",scope:(B.id||"global"),limit:1}},arguments[2]||{});Effect[B.visible()?Effect.PAIRS[C][1]:Effect.PAIRS[C][0]](B,A)}};Effect.DefaultOptions.transition=Effect.Transitions.sinoidal;Effect.ScopedQueue=Class.create(Enumerable,{initialize:function(){this.effects=[];this.interval=null},_each:function(A){this.effects._each(A)},add:function(B){var C=new Date().getTime();var A=Object.isString(B.options.queue)?B.options.queue:B.options.queue.position;switch(A){case"front":this.effects.findAll(function(D){return D.state=="idle"}).each(function(D){D.startOn+=B.finishOn;D.finishOn+=B.finishOn});break;case"with-last":C=this.effects.pluck("startOn").max()||C;break;case"end":C=this.effects.pluck("finishOn").max()||C;break}B.startOn+=C;B.finishOn+=C;if(!B.options.queue.limit||(this.effects.length<B.options.queue.limit)){this.effects.push(B)}if(!this.interval){this.interval=setInterval(this.loop.bind(this),15)}},remove:function(A){this.effects=this.effects.reject(function(B){return B==A});if(this.effects.length==0){clearInterval(this.interval);this.interval=null}},loop:function(){var C=new Date().getTime();for(var B=0,A=this.effects.length;B<A;B++){this.effects[B]&&this.effects[B].loop(C)}}});Effect.Queues={instances:$H(),get:function(A){if(!Object.isString(A)){return A}return this.instances.get(A)||this.instances.set(A,new Effect.ScopedQueue())}};Effect.Queue=Effect.Queues.get("global");Effect.Base=Class.create({position:null,start:function(A){function B(D,C){return((D[C+"Internal"]?"this.options."+C+"Internal(this);":"")+(D[C]?"this.options."+C+"(this);":""))}if(A&&A.transition===false){A.transition=Effect.Transitions.linear}this.options=Object.extend(Object.extend({},Effect.DefaultOptions),A||{});this.currentFrame=0;this.state="idle";this.startOn=this.options.delay*1000;this.finishOn=this.startOn+(this.options.duration*1000);this.fromToDelta=this.options.to-this.options.from;this.totalTime=this.finishOn-this.startOn;this.totalFrames=this.options.fps*this.options.duration;this.render=(function(){function C(E,D){if(E.options[D+"Internal"]){E.options[D+"Internal"](E)}if(E.options[D]){E.options[D](E)}}return function(D){if(this.state==="idle"){this.state="running";C(this,"beforeSetup");if(this.setup){this.setup()}C(this,"afterSetup")}if(this.state==="running"){D=(this.options.transition(D)*this.fromToDelta)+this.options.from;this.position=D;C(this,"beforeUpdate");if(this.update){this.update(D)}C(this,"afterUpdate")}}})();this.event("beforeStart");if(!this.options.sync){Effect.Queues.get(Object.isString(this.options.queue)?"global":this.options.queue.scope).add(this)}},loop:function(C){if(C>=this.startOn){if(C>=this.finishOn){this.render(1);this.cancel();this.event("beforeFinish");if(this.finish){this.finish()}this.event("afterFinish");return }var B=(C-this.startOn)/this.totalTime,A=(B*this.totalFrames).round();if(A>this.currentFrame){this.render(B);this.currentFrame=A}}},cancel:function(){if(!this.options.sync){Effect.Queues.get(Object.isString(this.options.queue)?"global":this.options.queue.scope).remove(this)}this.state="finished"},event:function(A){if(this.options[A+"Internal"]){this.options[A+"Internal"](this)}if(this.options[A]){this.options[A](this)}},inspect:function(){var A=$H();for(property in this){if(!Object.isFunction(this[property])){A.set(property,this[property])}}return"#<Effect:"+A.inspect()+",options:"+$H(this.options).inspect()+">"}});Effect.Parallel=Class.create(Effect.Base,{initialize:function(A){this.effects=A||[];this.start(arguments[1])},update:function(A){this.effects.invoke("render",A)},finish:function(A){this.effects.each(function(B){B.render(1);B.cancel();B.event("beforeFinish");if(B.finish){B.finish(A)}B.event("afterFinish")})}});Effect.Tween=Class.create(Effect.Base,{initialize:function(C,F,E){C=Object.isString(C)?$(C):C;var B=$A(arguments),D=B.last(),A=B.length==5?B[3]:null;this.method=Object.isFunction(D)?D.bind(C):Object.isFunction(C[D])?C[D].bind(C):function(G){C[D]=G};this.start(Object.extend({from:F,to:E},A||{}))},update:function(A){this.method(A)}});Effect.Event=Class.create(Effect.Base,{initialize:function(){this.start(Object.extend({duration:0},arguments[0]||{}))},update:Prototype.emptyFunction});Effect.Opacity=Class.create(Effect.Base,{initialize:function(B){this.element=$(B);if(!this.element){throw (Effect._elementDoesNotExistError)}if(Prototype.Browser.IE&&(!this.element.currentStyle.hasLayout)){this.element.setStyle({zoom:1})}var A=Object.extend({from:this.element.getOpacity()||0,to:1},arguments[1]||{});this.start(A)},update:function(A){this.element.setOpacity(A)}});Effect.Move=Class.create(Effect.Base,{initialize:function(B){this.element=$(B);if(!this.element){throw (Effect._elementDoesNotExistError)}var A=Object.extend({x:0,y:0,mode:"relative"},arguments[1]||{});this.start(A)},setup:function(){this.element.makePositioned();this.originalLeft=parseFloat(this.element.getStyle("left")||"0");this.originalTop=parseFloat(this.element.getStyle("top")||"0");if(this.options.mode=="absolute"){this.options.x=this.options.x-this.originalLeft;this.options.y=this.options.y-this.originalTop}},update:function(A){this.element.setStyle({left:(this.options.x*A+this.originalLeft).round()+"px",top:(this.options.y*A+this.originalTop).round()+"px"})}});Effect.MoveBy=function(B,A,C){return new Effect.Move(B,Object.extend({x:C,y:A},arguments[3]||{}))};Effect.Scale=Class.create(Effect.Base,{initialize:function(B,C){this.element=$(B);if(!this.element){throw (Effect._elementDoesNotExistError)}var A=Object.extend({scaleX:true,scaleY:true,scaleContent:true,scaleFromCenter:false,scaleMode:"box",scaleFrom:100,scaleTo:C},arguments[2]||{});this.start(A)},setup:function(){this.restoreAfterFinish=this.options.restoreAfterFinish||false;this.elementPositioning=this.element.getStyle("position");this.originalStyle={};["top","left","width","height","fontSize"].each(function(B){this.originalStyle[B]=this.element.style[B]}.bind(this));this.originalTop=this.element.offsetTop;this.originalLeft=this.element.offsetLeft;var A=this.element.getStyle("font-size")||"100%";["em","px","%","pt"].each(function(B){if(A.indexOf(B)>0){this.fontSize=parseFloat(A);this.fontSizeType=B}}.bind(this));this.factor=(this.options.scaleTo-this.options.scaleFrom)/100;this.dims=null;if(this.options.scaleMode=="box"){this.dims=[this.element.offsetHeight,this.element.offsetWidth]}if(/^content/.test(this.options.scaleMode)){this.dims=[this.element.scrollHeight,this.element.scrollWidth]}if(!this.dims){this.dims=[this.options.scaleMode.originalHeight,this.options.scaleMode.originalWidth]}},update:function(A){var B=(this.options.scaleFrom/100)+(this.factor*A);if(this.options.scaleContent&&this.fontSize){this.element.setStyle({fontSize:this.fontSize*B+this.fontSizeType})}this.setDimensions(this.dims[0]*B,this.dims[1]*B)},finish:function(A){if(this.restoreAfterFinish){this.element.setStyle(this.originalStyle)}},setDimensions:function(A,D){var E={};if(this.options.scaleX){E.width=D.round()+"px"}if(this.options.scaleY){E.height=A.round()+"px"}if(this.options.scaleFromCenter){var C=(A-this.dims[0])/2;var B=(D-this.dims[1])/2;if(this.elementPositioning=="absolute"){if(this.options.scaleY){E.top=this.originalTop-C+"px"}if(this.options.scaleX){E.left=this.originalLeft-B+"px"}}else{if(this.options.scaleY){E.top=-C+"px"}if(this.options.scaleX){E.left=-B+"px"}}}this.element.setStyle(E)}});Effect.Highlight=Class.create(Effect.Base,{initialize:function(B){this.element=$(B);if(!this.element){throw (Effect._elementDoesNotExistError)}var A=Object.extend({startcolor:"#ffff99"},arguments[1]||{});this.start(A)},setup:function(){if(this.element.getStyle("display")=="none"){this.cancel();return }this.oldStyle={};if(!this.options.keepBackgroundImage){this.oldStyle.backgroundImage=this.element.getStyle("background-image");this.element.setStyle({backgroundImage:"none"})}if(!this.options.endcolor){this.options.endcolor=this.element.getStyle("background-color").parseColor("#ffffff")}if(!this.options.restorecolor){this.options.restorecolor=this.element.getStyle("background-color")}this._base=$R(0,2).map(function(A){return parseInt(this.options.startcolor.slice(A*2+1,A*2+3),16)}.bind(this));this._delta=$R(0,2).map(function(A){return parseInt(this.options.endcolor.slice(A*2+1,A*2+3),16)-this._base[A]}.bind(this))},update:function(A){this.element.setStyle({backgroundColor:$R(0,2).inject("#",function(B,C,D){return B+((this._base[D]+(this._delta[D]*A)).round().toColorPart())}.bind(this))})},finish:function(){this.element.setStyle(Object.extend(this.oldStyle,{backgroundColor:this.options.restorecolor}))}});Effect.ScrollTo=function(C){var B=arguments[1]||{},A=document.viewport.getScrollOffsets(),D=$(C).cumulativeOffset();if(B.offset){D[1]+=B.offset}return new Effect.Tween(null,A.top,D[1],B,function(E){scrollTo(A.left,E.round())})};Effect.Fade=function(C){C=$(C);var A=C.getInlineOpacity();var B=Object.extend({from:C.getOpacity()||1,to:0,afterFinishInternal:function(D){if(D.options.to!=0){return }D.element.hide().setStyle({opacity:A})}},arguments[1]||{});return new Effect.Opacity(C,B)};Effect.Appear=function(B){B=$(B);var A=Object.extend({from:(B.getStyle("display")=="none"?0:B.getOpacity()||0),to:1,afterFinishInternal:function(C){C.element.forceRerendering()},beforeSetup:function(C){C.element.setOpacity(C.options.from).show()}},arguments[1]||{});return new Effect.Opacity(B,A)};Effect.Puff=function(B){B=$(B);var A={opacity:B.getInlineOpacity(),position:B.getStyle("position"),top:B.style.top,left:B.style.left,width:B.style.width,height:B.style.height};return new Effect.Parallel([new Effect.Scale(B,200,{sync:true,scaleFromCenter:true,scaleContent:true,restoreAfterFinish:true}),new Effect.Opacity(B,{sync:true,to:0})],Object.extend({duration:1,beforeSetupInternal:function(C){Position.absolutize(C.effects[0].element)},afterFinishInternal:function(C){C.effects[0].element.hide().setStyle(A)}},arguments[1]||{}))};Effect.BlindUp=function(A){A=$(A);A.makeClipping();return new Effect.Scale(A,0,Object.extend({scaleContent:false,scaleX:false,restoreAfterFinish:true,afterFinishInternal:function(B){B.element.hide().undoClipping()}},arguments[1]||{}))};Effect.BlindDown=function(B){B=$(B);var A=B.getDimensions();return new Effect.Scale(B,100,Object.extend({scaleContent:false,scaleX:false,scaleFrom:0,scaleMode:{originalHeight:A.height,originalWidth:A.width},restoreAfterFinish:true,afterSetup:function(C){C.element.makeClipping().setStyle({height:"0px"}).show()},afterFinishInternal:function(C){C.element.undoClipping()}},arguments[1]||{}))};Effect.SwitchOff=function(B){B=$(B);var A=B.getInlineOpacity();return new Effect.Appear(B,Object.extend({duration:0.4,from:0,transition:Effect.Transitions.flicker,afterFinishInternal:function(C){new Effect.Scale(C.element,1,{duration:0.3,scaleFromCenter:true,scaleX:false,scaleContent:false,restoreAfterFinish:true,beforeSetup:function(D){D.element.makePositioned().makeClipping()},afterFinishInternal:function(D){D.element.hide().undoClipping().undoPositioned().setStyle({opacity:A})}})}},arguments[1]||{}))};Effect.DropOut=function(B){B=$(B);var A={top:B.getStyle("top"),left:B.getStyle("left"),opacity:B.getInlineOpacity()};return new Effect.Parallel([new Effect.Move(B,{x:0,y:100,sync:true}),new Effect.Opacity(B,{sync:true,to:0})],Object.extend({duration:0.5,beforeSetup:function(C){C.effects[0].element.makePositioned()},afterFinishInternal:function(C){C.effects[0].element.hide().undoPositioned().setStyle(A)}},arguments[1]||{}))};Effect.Shake=function(D){D=$(D);var B=Object.extend({distance:20,duration:0.5},arguments[1]||{});var E=parseFloat(B.distance);var C=parseFloat(B.duration)/10;var A={top:D.getStyle("top"),left:D.getStyle("left")};return new Effect.Move(D,{x:E,y:0,duration:C,afterFinishInternal:function(F){new Effect.Move(F.element,{x:-E*2,y:0,duration:C*2,afterFinishInternal:function(G){new Effect.Move(G.element,{x:E*2,y:0,duration:C*2,afterFinishInternal:function(H){new Effect.Move(H.element,{x:-E*2,y:0,duration:C*2,afterFinishInternal:function(I){new Effect.Move(I.element,{x:E*2,y:0,duration:C*2,afterFinishInternal:function(J){new Effect.Move(J.element,{x:-E,y:0,duration:C,afterFinishInternal:function(K){K.element.undoPositioned().setStyle(A)}})}})}})}})}})}})};Effect.SlideDown=function(C){C=$(C).cleanWhitespace();var A=C.down().getStyle("bottom");var B=C.getDimensions();return new Effect.Scale(C,100,Object.extend({scaleContent:false,scaleX:false,scaleFrom:window.opera?0:1,scaleMode:{originalHeight:B.height,originalWidth:B.width},restoreAfterFinish:true,afterSetup:function(D){D.element.makePositioned();D.element.down().makePositioned();if(window.opera){D.element.setStyle({top:""})}D.element.makeClipping().setStyle({height:"0px"}).show()},afterUpdateInternal:function(D){D.element.down().setStyle({bottom:(D.dims[0]-D.element.clientHeight)+"px"})},afterFinishInternal:function(D){D.element.undoClipping().undoPositioned();D.element.down().undoPositioned().setStyle({bottom:A})}},arguments[1]||{}))};Effect.SlideUp=function(C){C=$(C).cleanWhitespace();var A=C.down().getStyle("bottom");var B=C.getDimensions();return new Effect.Scale(C,window.opera?0:1,Object.extend({scaleContent:false,scaleX:false,scaleMode:"box",scaleFrom:100,scaleMode:{originalHeight:B.height,originalWidth:B.width},restoreAfterFinish:true,afterSetup:function(D){D.element.makePositioned();D.element.down().makePositioned();if(window.opera){D.element.setStyle({top:""})}D.element.makeClipping().show()},afterUpdateInternal:function(D){D.element.down().setStyle({bottom:(D.dims[0]-D.element.clientHeight)+"px"})},afterFinishInternal:function(D){D.element.hide().undoClipping().undoPositioned();D.element.down().undoPositioned().setStyle({bottom:A})}},arguments[1]||{}))};Effect.Squish=function(A){return new Effect.Scale(A,window.opera?1:0,{restoreAfterFinish:true,beforeSetup:function(B){B.element.makeClipping()},afterFinishInternal:function(B){B.element.hide().undoClipping()}})};Effect.Grow=function(C){C=$(C);var B=Object.extend({direction:"center",moveTransition:Effect.Transitions.sinoidal,scaleTransition:Effect.Transitions.sinoidal,opacityTransition:Effect.Transitions.full},arguments[1]||{});var A={top:C.style.top,left:C.style.left,height:C.style.height,width:C.style.width,opacity:C.getInlineOpacity()};var G=C.getDimensions();var H,F;var E,D;switch(B.direction){case"top-left":H=F=E=D=0;break;case"top-right":H=G.width;F=D=0;E=-G.width;break;case"bottom-left":H=E=0;F=G.height;D=-G.height;break;case"bottom-right":H=G.width;F=G.height;E=-G.width;D=-G.height;break;case"center":H=G.width/2;F=G.height/2;E=-G.width/2;D=-G.height/2;break}return new Effect.Move(C,{x:H,y:F,duration:0.01,beforeSetup:function(I){I.element.hide().makeClipping().makePositioned()},afterFinishInternal:function(I){new Effect.Parallel([new Effect.Opacity(I.element,{sync:true,to:1,from:0,transition:B.opacityTransition}),new Effect.Move(I.element,{x:E,y:D,sync:true,transition:B.moveTransition}),new Effect.Scale(I.element,100,{scaleMode:{originalHeight:G.height,originalWidth:G.width},sync:true,scaleFrom:window.opera?1:0,transition:B.scaleTransition,restoreAfterFinish:true})],Object.extend({beforeSetup:function(J){J.effects[0].element.setStyle({height:"0px"}).show()},afterFinishInternal:function(J){J.effects[0].element.undoClipping().undoPositioned().setStyle(A)}},B))}})};Effect.Shrink=function(C){C=$(C);var B=Object.extend({direction:"center",moveTransition:Effect.Transitions.sinoidal,scaleTransition:Effect.Transitions.sinoidal,opacityTransition:Effect.Transitions.none},arguments[1]||{});var A={top:C.style.top,left:C.style.left,height:C.style.height,width:C.style.width,opacity:C.getInlineOpacity()};var F=C.getDimensions();var E,D;switch(B.direction){case"top-left":E=D=0;break;case"top-right":E=F.width;D=0;break;case"bottom-left":E=0;D=F.height;break;case"bottom-right":E=F.width;D=F.height;break;case"center":E=F.width/2;D=F.height/2;break}return new Effect.Parallel([new Effect.Opacity(C,{sync:true,to:0,from:1,transition:B.opacityTransition}),new Effect.Scale(C,window.opera?1:0,{sync:true,transition:B.scaleTransition,restoreAfterFinish:true}),new Effect.Move(C,{x:E,y:D,sync:true,transition:B.moveTransition})],Object.extend({beforeStartInternal:function(G){G.effects[0].element.makePositioned().makeClipping()},afterFinishInternal:function(G){G.effects[0].element.hide().undoClipping().undoPositioned().setStyle(A)}},B))};Effect.Pulsate=function(C){C=$(C);var B=arguments[1]||{},A=C.getInlineOpacity(),E=B.transition||Effect.Transitions.linear,D=function(F){return 1-E((-Math.cos((F*(B.pulses||5)*2)*Math.PI)/2)+0.5)};return new Effect.Opacity(C,Object.extend(Object.extend({duration:2,from:0,afterFinishInternal:function(F){F.element.setStyle({opacity:A})}},B),{transition:D}))};Effect.Fold=function(B){B=$(B);var A={top:B.style.top,left:B.style.left,width:B.style.width,height:B.style.height};B.makeClipping();return new Effect.Scale(B,5,Object.extend({scaleContent:false,scaleX:false,afterFinishInternal:function(C){new Effect.Scale(B,1,{scaleContent:false,scaleY:false,afterFinishInternal:function(D){D.element.hide().undoClipping().setStyle(A)}})}},arguments[1]||{}))};Effect.Morph=Class.create(Effect.Base,{initialize:function(C){this.element=$(C);if(!this.element){throw (Effect._elementDoesNotExistError)}var A=Object.extend({style:{}},arguments[1]||{});if(!Object.isString(A.style)){this.style=$H(A.style)}else{if(A.style.include(":")){this.style=A.style.parseStyle()}else{this.element.addClassName(A.style);this.style=$H(this.element.getStyles());this.element.removeClassName(A.style);var B=this.element.getStyles();this.style=this.style.reject(function(D){return D.value==B[D.key]});A.afterFinishInternal=function(D){D.element.addClassName(D.options.style);D.transforms.each(function(E){D.element.style[E.style]=""})}}}this.start(A)},setup:function(){function A(B){if(!B||["rgba(0, 0, 0, 0)","transparent"].include(B)){B="#ffffff"}B=B.parseColor();return $R(0,2).map(function(C){return parseInt(B.slice(C*2+1,C*2+3),16)})}this.transforms=this.style.map(function(G){var F=G[0],E=G[1],D=null;if(E.parseColor("#zzzzzz")!="#zzzzzz"){E=E.parseColor();D="color"}else{if(F=="opacity"){E=parseFloat(E);if(Prototype.Browser.IE&&(!this.element.currentStyle.hasLayout)){this.element.setStyle({zoom:1})}}else{if(Element.CSS_LENGTH.test(E)){var C=E.match(/^([\+\-]?[0-9\.]+)(.*)$/);E=parseFloat(C[1]);D=(C.length==3)?C[2]:null}}}var B=this.element.getStyle(F);return{style:F.camelize(),originalValue:D=="color"?A(B):parseFloat(B||0),targetValue:D=="color"?A(E):E,unit:D}}.bind(this)).reject(function(B){return((B.originalValue==B.targetValue)||(B.unit!="color"&&(isNaN(B.originalValue)||isNaN(B.targetValue))))})},update:function(A){var D={},B,C=this.transforms.length;while(C--){D[(B=this.transforms[C]).style]=B.unit=="color"?"#"+(Math.round(B.originalValue[0]+(B.targetValue[0]-B.originalValue[0])*A)).toColorPart()+(Math.round(B.originalValue[1]+(B.targetValue[1]-B.originalValue[1])*A)).toColorPart()+(Math.round(B.originalValue[2]+(B.targetValue[2]-B.originalValue[2])*A)).toColorPart():(B.originalValue+(B.targetValue-B.originalValue)*A).toFixed(3)+(B.unit===null?"":B.unit)}this.element.setStyle(D,true)}});Effect.Transform=Class.create({initialize:function(A){this.tracks=[];this.options=arguments[1]||{};this.addTracks(A)},addTracks:function(A){A.each(function(B){B=$H(B);var C=B.values().first();this.tracks.push($H({ids:B.keys().first(),effect:Effect.Morph,options:{style:C}}))}.bind(this));return this},play:function(){return new Effect.Parallel(this.tracks.map(function(A){var D=A.get("ids"),C=A.get("effect"),B=A.get("options");var E=[$(D)||$$(D)].flatten();return E.map(function(F){return new C(F,Object.extend({sync:true},B))})}).flatten(),this.options)}});Element.CSS_PROPERTIES=$w("backgroundColor backgroundPosition borderBottomColor borderBottomStyle borderBottomWidth borderLeftColor borderLeftStyle borderLeftWidth borderRightColor borderRightStyle borderRightWidth borderSpacing borderTopColor borderTopStyle borderTopWidth bottom clip color fontSize fontWeight height left letterSpacing lineHeight marginBottom marginLeft marginRight marginTop markerOffset maxHeight maxWidth minHeight minWidth opacity outlineColor outlineOffset outlineWidth paddingBottom paddingLeft paddingRight paddingTop right textIndent top width wordSpacing zIndex");Element.CSS_LENGTH=/^(([\+\-]?[0-9\.]+)(em|ex|px|in|cm|mm|pt|pc|\%))|0$/;String.__parseStyleElement=document.createElement("div");String.prototype.parseStyle=function(){var B,A=$H();if(Prototype.Browser.WebKit){B=new Element("div",{style:this}).style}else{String.__parseStyleElement.innerHTML='<div style="'+this+'"></div>';B=String.__parseStyleElement.childNodes[0].style}Element.CSS_PROPERTIES.each(function(C){if(B[C]){A.set(C,B[C])}});if(Prototype.Browser.IE&&this.include("opacity")){A.set("opacity",this.match(/opacity:\s*((?:0|1)?(?:\.\d*)?)/)[1])}return A};if(document.defaultView&&document.defaultView.getComputedStyle){Element.getStyles=function(B){var A=document.defaultView.getComputedStyle($(B),null);return Element.CSS_PROPERTIES.inject({},function(C,D){C[D]=A[D];return C})}}else{Element.getStyles=function(B){B=$(B);var A=B.currentStyle,C;C=Element.CSS_PROPERTIES.inject({},function(D,E){D[E]=A[E];return D});if(!C.opacity){C.opacity=B.getOpacity()}return C}}Effect.Methods={morph:function(A,B){A=$(A);new Effect.Morph(A,Object.extend({style:B},arguments[2]||{}));return A},visualEffect:function(C,E,B){C=$(C);var D=E.dasherize().camelize(),A=D.charAt(0).toUpperCase()+D.substring(1);new Effect[A](C,B);return C},highlight:function(B,A){B=$(B);new Effect.Highlight(B,A);return B}};$w("fade appear grow shrink fold blindUp blindDown slideUp slideDown pulsate shake puff squish switchOff dropOut").each(function(A){Effect.Methods[A]=function(C,B){C=$(C);Effect[A.charAt(0).toUpperCase()+A.substring(1)](C,B);return C}});$w("getInlineOpacity forceRerendering setContentZoom collectTextNodes collectTextNodesIgnoreClass getStyles").each(function(A){Effect.Methods[A]=Element[A]});Element.addMethods(Effect.Methods);if(Object.isUndefined(Effect)){throw ("dragdrop.js requires including script.aculo.us' effects.js library")}var Droppables={drops:[],remove:function(A){this.drops=this.drops.reject(function(B){return B.element==$(A)})},add:function(B){B=$(B);var A=Object.extend({greedy:true,hoverclass:null,tree:false},arguments[1]||{});if(A.containment){A._containers=[];var C=A.containment;if(Object.isArray(C)){C.each(function(D){A._containers.push($(D))})}else{A._containers.push($(C))}}if(A.accept){A.accept=[A.accept].flatten()}Element.makePositioned(B);A.element=B;this.drops.push(A)},findDeepestChild:function(A){deepest=A[0];for(i=1;i<A.length;++i){if(Element.isParent(A[i].element,deepest.element)){deepest=A[i]}}return deepest},isContained:function(B,A){var C;if(A.tree){C=B.treeNode}else{C=B.parentNode}return A._containers.detect(function(D){return C==D})},isAffected:function(A,C,B){return((B.element!=C)&&((!B._containers)||this.isContained(C,B))&&((!B.accept)||(Element.classNames(C).detect(function(D){return B.accept.include(D)})))&&Position.within(B.element,A[0],A[1]))},deactivate:function(A){if(A.hoverclass){Element.removeClassName(A.element,A.hoverclass)}this.last_active=null},activate:function(A){if(A.hoverclass){Element.addClassName(A.element,A.hoverclass)}this.last_active=A},show:function(A,C){if(!this.drops.length){return }var B,D=[];this.drops.each(function(E){if(Droppables.isAffected(A,C,E)){D.push(E)}});if(D.length>0){B=Droppables.findDeepestChild(D)}if(this.last_active&&this.last_active!=B){this.deactivate(this.last_active)}if(B){Position.within(B.element,A[0],A[1]);if(B.onHover){B.onHover(C,B.element,Position.overlap(B.overlap,B.element))}if(B!=this.last_active){Droppables.activate(B)}}},fire:function(B,A){if(!this.last_active){return }Position.prepare();if(this.isAffected([Event.pointerX(B),Event.pointerY(B)],A,this.last_active)){if(this.last_active.onDrop){this.last_active.onDrop(A,this.last_active.element,B);return true}}},reset:function(){if(this.last_active){this.deactivate(this.last_active)}}};var Draggables={drags:[],observers:[],register:function(A){if(this.drags.length==0){this.eventMouseUp=this.endDrag.bindAsEventListener(this);this.eventMouseMove=this.updateDrag.bindAsEventListener(this);this.eventKeypress=this.keyPress.bindAsEventListener(this);Event.observe(document,"mouseup",this.eventMouseUp);Event.observe(document,"mousemove",this.eventMouseMove);Event.observe(document,"keypress",this.eventKeypress)}this.drags.push(A)},unregister:function(A){this.drags=this.drags.reject(function(B){return B==A});if(this.drags.length==0){Event.stopObserving(document,"mouseup",this.eventMouseUp);Event.stopObserving(document,"mousemove",this.eventMouseMove);Event.stopObserving(document,"keypress",this.eventKeypress)}},activate:function(A){if(A.options.delay){this._timeout=setTimeout(function(){Draggables._timeout=null;window.focus();Draggables.activeDraggable=A}.bind(this),A.options.delay)}else{window.focus();this.activeDraggable=A}},deactivate:function(){this.activeDraggable=null},updateDrag:function(A){if(!this.activeDraggable){return }var B=[Event.pointerX(A),Event.pointerY(A)];if(this._lastPointer&&(this._lastPointer.inspect()==B.inspect())){return }this._lastPointer=B;this.activeDraggable.updateDrag(A,B)},endDrag:function(A){if(this._timeout){clearTimeout(this._timeout);this._timeout=null}if(!this.activeDraggable){return }this._lastPointer=null;this.activeDraggable.endDrag(A);this.activeDraggable=null},keyPress:function(A){if(this.activeDraggable){this.activeDraggable.keyPress(A)}},addObserver:function(A){this.observers.push(A);this._cacheObserverCallbacks()},removeObserver:function(A){this.observers=this.observers.reject(function(B){return B.element==A});this._cacheObserverCallbacks()},notify:function(B,A,C){if(this[B+"Count"]>0){this.observers.each(function(D){if(D[B]){D[B](B,A,C)}})}if(A.options[B]){A.options[B](A,C)}},_cacheObserverCallbacks:function(){["onStart","onEnd","onDrag"].each(function(A){Draggables[A+"Count"]=Draggables.observers.select(function(B){return B[A]}).length})}};var Draggable=Class.create({initialize:function(B){var C={handle:false,reverteffect:function(F,E,D){var G=Math.sqrt(Math.abs(E^2)+Math.abs(D^2))*0.02;new Effect.Move(F,{x:-D,y:-E,duration:G,queue:{scope:"_draggable",position:"end"}})},endeffect:function(E){var D=Object.isNumber(E._opacity)?E._opacity:1;new Effect.Opacity(E,{duration:0.2,from:0.7,to:D,queue:{scope:"_draggable",position:"end"},afterFinish:function(){Draggable._dragging[E]=false}})},zindex:1000,revert:false,quiet:false,scroll:false,scrollSensitivity:20,scrollSpeed:15,snap:false,delay:0};if(!arguments[1]||Object.isUndefined(arguments[1].endeffect)){Object.extend(C,{starteffect:function(D){D._opacity=Element.getOpacity(D);Draggable._dragging[D]=true;new Effect.Opacity(D,{duration:0.2,from:D._opacity,to:0.7})}})}var A=Object.extend(C,arguments[1]||{});this.element=$(B);if(A.handle&&Object.isString(A.handle)){this.handle=this.element.down("."+A.handle,0)}if(!this.handle){this.handle=$(A.handle)}if(!this.handle){this.handle=this.element}if(A.scroll&&!A.scroll.scrollTo&&!A.scroll.outerHTML){A.scroll=$(A.scroll);this._isScrollChild=Element.childOf(this.element,A.scroll)}Element.makePositioned(this.element);this.options=A;this.dragging=false;this.eventMouseDown=this.initDrag.bindAsEventListener(this);Event.observe(this.handle,"mousedown",this.eventMouseDown);Draggables.register(this)},destroy:function(){Event.stopObserving(this.handle,"mousedown",this.eventMouseDown);Draggables.unregister(this)},currentDelta:function(){return([parseInt(Element.getStyle(this.element,"left")||"0"),parseInt(Element.getStyle(this.element,"top")||"0")])},initDrag:function(A){if(!Object.isUndefined(Draggable._dragging[this.element])&&Draggable._dragging[this.element]){return }if(Event.isLeftClick(A)){var C=Event.element(A);if((tag_name=C.tagName.toUpperCase())&&(tag_name=="INPUT"||tag_name=="SELECT"||tag_name=="OPTION"||tag_name=="BUTTON"||tag_name=="TEXTAREA")){return }var B=[Event.pointerX(A),Event.pointerY(A)];var D=Position.cumulativeOffset(this.element);this.offset=[0,1].map(function(E){return(B[E]-D[E])});Draggables.activate(this);Event.stop(A)}},startDrag:function(B){this.dragging=true;if(!this.delta){this.delta=this.currentDelta()}if(this.options.zindex){this.originalZ=parseInt(Element.getStyle(this.element,"z-index")||0);this.element.style.zIndex=this.options.zindex}if(this.options.ghosting){this._clone=this.element.cloneNode(true);this._originallyAbsolute=(this.element.getStyle("position")=="absolute");if(!this._originallyAbsolute){Position.absolutize(this.element)}this.element.parentNode.insertBefore(this._clone,this.element)}if(this.options.scroll){if(this.options.scroll==window){var A=this._getWindowScroll(this.options.scroll);this.originalScrollLeft=A.left;this.originalScrollTop=A.top}else{this.originalScrollLeft=this.options.scroll.scrollLeft;this.originalScrollTop=this.options.scroll.scrollTop}}Draggables.notify("onStart",this,B);if(this.options.starteffect){this.options.starteffect(this.element)}},updateDrag:function(event,pointer){if(!this.dragging){this.startDrag(event)}if(!this.options.quiet){Position.prepare();Droppables.show(pointer,this.element)}Draggables.notify("onDrag",this,event);this.draw(pointer);if(this.options.change){this.options.change(this)}if(this.options.scroll){this.stopScrolling();var p;if(this.options.scroll==window){with(this._getWindowScroll(this.options.scroll)){p=[left,top,left+width,top+height]}}else{p=Position.page(this.options.scroll);p[0]+=this.options.scroll.scrollLeft+Position.deltaX;p[1]+=this.options.scroll.scrollTop+Position.deltaY;p.push(p[0]+this.options.scroll.offsetWidth);p.push(p[1]+this.options.scroll.offsetHeight)}var speed=[0,0];if(pointer[0]<(p[0]+this.options.scrollSensitivity)){speed[0]=pointer[0]-(p[0]+this.options.scrollSensitivity)}if(pointer[1]<(p[1]+this.options.scrollSensitivity)){speed[1]=pointer[1]-(p[1]+this.options.scrollSensitivity)}if(pointer[0]>(p[2]-this.options.scrollSensitivity)){speed[0]=pointer[0]-(p[2]-this.options.scrollSensitivity)}if(pointer[1]>(p[3]-this.options.scrollSensitivity)){speed[1]=pointer[1]-(p[3]-this.options.scrollSensitivity)}this.startScrolling(speed)}if(Prototype.Browser.WebKit){window.scrollBy(0,0)}Event.stop(event)},finishDrag:function(B,E){this.dragging=false;if(this.options.quiet){Position.prepare();var D=[Event.pointerX(B),Event.pointerY(B)];Droppables.show(D,this.element)}if(this.options.ghosting){if(!this._originallyAbsolute){Position.relativize(this.element)}delete this._originallyAbsolute;Element.remove(this._clone);this._clone=null}var F=false;if(E){F=Droppables.fire(B,this.element);if(!F){F=false}}if(F&&this.options.onDropped){this.options.onDropped(this.element)}Draggables.notify("onEnd",this,B);var A=this.options.revert;if(A&&Object.isFunction(A)){A=A(this.element)}var C=this.currentDelta();if(A&&this.options.reverteffect){if(F==0||A!="failure"){this.options.reverteffect(this.element,C[1]-this.delta[1],C[0]-this.delta[0])}}else{this.delta=C}if(this.options.zindex){this.element.style.zIndex=this.originalZ}if(this.options.endeffect){this.options.endeffect(this.element)}Draggables.deactivate(this);Droppables.reset()},keyPress:function(A){if(A.keyCode!=Event.KEY_ESC){return }this.finishDrag(A,false);Event.stop(A)},endDrag:function(A){if(!this.dragging){return }this.stopScrolling();this.finishDrag(A,true);Event.stop(A)},draw:function(A){var F=Position.cumulativeOffset(this.element);if(this.options.ghosting){var C=Position.realOffset(this.element);F[0]+=C[0]-Position.deltaX;F[1]+=C[1]-Position.deltaY}var E=this.currentDelta();F[0]-=E[0];F[1]-=E[1];if(this.options.scroll&&(this.options.scroll!=window&&this._isScrollChild)){F[0]-=this.options.scroll.scrollLeft-this.originalScrollLeft;F[1]-=this.options.scroll.scrollTop-this.originalScrollTop}var D=[0,1].map(function(G){return(A[G]-F[G]-this.offset[G])}.bind(this));if(this.options.snap){if(Object.isFunction(this.options.snap)){D=this.options.snap(D[0],D[1],this)}else{if(Object.isArray(this.options.snap)){D=D.map(function(G,H){return(G/this.options.snap[H]).round()*this.options.snap[H]}.bind(this))}else{D=D.map(function(G){return(G/this.options.snap).round()*this.options.snap}.bind(this))}}}var B=this.element.style;if((!this.options.constraint)||(this.options.constraint=="horizontal")){B.left=D[0]+"px"}if((!this.options.constraint)||(this.options.constraint=="vertical")){B.top=D[1]+"px"}if(B.visibility=="hidden"){B.visibility=""}},stopScrolling:function(){if(this.scrollInterval){clearInterval(this.scrollInterval);this.scrollInterval=null;Draggables._lastScrollPointer=null}},startScrolling:function(A){if(!(A[0]||A[1])){return }this.scrollSpeed=[A[0]*this.options.scrollSpeed,A[1]*this.options.scrollSpeed];this.lastScrolled=new Date();this.scrollInterval=setInterval(this.scroll.bind(this),10)},scroll:function(){var current=new Date();var delta=current-this.lastScrolled;this.lastScrolled=current;if(this.options.scroll==window){with(this._getWindowScroll(this.options.scroll)){if(this.scrollSpeed[0]||this.scrollSpeed[1]){var d=delta/1000;this.options.scroll.scrollTo(left+d*this.scrollSpeed[0],top+d*this.scrollSpeed[1])}}}else{this.options.scroll.scrollLeft+=this.scrollSpeed[0]*delta/1000;this.options.scroll.scrollTop+=this.scrollSpeed[1]*delta/1000}Position.prepare();Droppables.show(Draggables._lastPointer,this.element);Draggables.notify("onDrag",this);if(this._isScrollChild){Draggables._lastScrollPointer=Draggables._lastScrollPointer||$A(Draggables._lastPointer);Draggables._lastScrollPointer[0]+=this.scrollSpeed[0]*delta/1000;Draggables._lastScrollPointer[1]+=this.scrollSpeed[1]*delta/1000;if(Draggables._lastScrollPointer[0]<0){Draggables._lastScrollPointer[0]=0}if(Draggables._lastScrollPointer[1]<0){Draggables._lastScrollPointer[1]=0}this.draw(Draggables._lastScrollPointer)}if(this.options.change){this.options.change(this)}},_getWindowScroll:function(w){var T,L,W,H;with(w.document){if(w.document.documentElement&&documentElement.scrollTop){T=documentElement.scrollTop;L=documentElement.scrollLeft}else{if(w.document.body){T=body.scrollTop;L=body.scrollLeft}}if(w.innerWidth){W=w.innerWidth;H=w.innerHeight}else{if(w.document.documentElement&&documentElement.clientWidth){W=documentElement.clientWidth;H=documentElement.clientHeight}else{W=body.offsetWidth;H=body.offsetHeight}}}return{top:T,left:L,width:W,height:H}}});Draggable._dragging={};var SortableObserver=Class.create({initialize:function(B,A){this.element=$(B);this.observer=A;this.lastValue=Sortable.serialize(this.element)},onStart:function(){this.lastValue=Sortable.serialize(this.element)},onEnd:function(){Sortable.unmark();if(this.lastValue!=Sortable.serialize(this.element)){this.observer(this.element)}}});var Sortable={SERIALIZE_RULE:/^[^_\-](?:[A-Za-z0-9\-\_]*)[_](.*)$/,sortables:{},_findRootElement:function(A){while(A.tagName.toUpperCase()!="BODY"){if(A.id&&Sortable.sortables[A.id]){return A}A=A.parentNode}},options:function(A){A=Sortable._findRootElement($(A));if(!A){return }return Sortable.sortables[A.id]},destroy:function(A){A=$(A);var B=Sortable.sortables[A.id];if(B){Draggables.removeObserver(B.element);B.droppables.each(function(C){Droppables.remove(C)});B.draggables.invoke("destroy");delete Sortable.sortables[B.element.id]}},create:function(C){C=$(C);var B=Object.extend({element:C,tag:"li",dropOnEmpty:false,tree:false,treeTag:"ul",overlap:"vertical",constraint:"vertical",containment:C,handle:false,only:false,delay:0,hoverclass:null,ghosting:false,quiet:false,scroll:false,scrollSensitivity:20,scrollSpeed:15,format:this.SERIALIZE_RULE,elements:false,handles:false,onChange:Prototype.emptyFunction,onUpdate:Prototype.emptyFunction},arguments[1]||{});this.destroy(C);var A={revert:true,quiet:B.quiet,scroll:B.scroll,scrollSpeed:B.scrollSpeed,scrollSensitivity:B.scrollSensitivity,delay:B.delay,ghosting:B.ghosting,constraint:B.constraint,handle:B.handle};if(B.starteffect){A.starteffect=B.starteffect}if(B.reverteffect){A.reverteffect=B.reverteffect}else{if(B.ghosting){A.reverteffect=function(F){F.style.top=0;F.style.left=0}}}if(B.endeffect){A.endeffect=B.endeffect}if(B.zindex){A.zindex=B.zindex}var D={overlap:B.overlap,containment:B.containment,tree:B.tree,hoverclass:B.hoverclass,onHover:Sortable.onHover};var E={onHover:Sortable.onEmptyHover,overlap:B.overlap,containment:B.containment,hoverclass:B.hoverclass};Element.cleanWhitespace(C);B.draggables=[];B.droppables=[];if(B.dropOnEmpty||B.tree){Droppables.add(C,E);B.droppables.push(C)}(B.elements||this.findElements(C,B)||[]).each(function(H,F){var G=B.handles?$(B.handles[F]):(B.handle?$(H).select("."+B.handle)[0]:H);B.draggables.push(new Draggable(H,Object.extend(A,{handle:G})));Droppables.add(H,D);if(B.tree){H.treeNode=C}B.droppables.push(H)});if(B.tree){(Sortable.findTreeElements(C,B)||[]).each(function(F){Droppables.add(F,E);F.treeNode=C;B.droppables.push(F)})}this.sortables[C.id]=B;Draggables.addObserver(new SortableObserver(C,B.onUpdate))},findElements:function(B,A){return Element.findChildren(B,A.only,A.tree?true:false,A.tag)},findTreeElements:function(B,A){return Element.findChildren(B,A.only,A.tree?true:false,A.treeTag)},onHover:function(E,D,A){if(Element.isParent(D,E)){return }if(A>0.33&&A<0.66&&Sortable.options(D).tree){return }else{if(A>0.5){Sortable.mark(D,"before");if(D.previousSibling!=E){var B=E.parentNode;E.style.visibility="hidden";D.parentNode.insertBefore(E,D);if(D.parentNode!=B){Sortable.options(B).onChange(E)}Sortable.options(D.parentNode).onChange(E)}}else{Sortable.mark(D,"after");var C=D.nextSibling||null;if(C!=E){var B=E.parentNode;E.style.visibility="hidden";D.parentNode.insertBefore(E,C);if(D.parentNode!=B){Sortable.options(B).onChange(E)}Sortable.options(D.parentNode).onChange(E)}}}},onEmptyHover:function(E,G,H){var I=E.parentNode;var A=Sortable.options(G);if(!Element.isParent(G,E)){var F;var C=Sortable.findElements(G,{tag:A.tag,only:A.only});var B=null;if(C){var D=Element.offsetSize(G,A.overlap)*(1-H);for(F=0;F<C.length;F+=1){if(D-Element.offsetSize(C[F],A.overlap)>=0){D-=Element.offsetSize(C[F],A.overlap)}else{if(D-(Element.offsetSize(C[F],A.overlap)/2)>=0){B=F+1<C.length?C[F+1]:null;break}else{B=C[F];break}}}}G.insertBefore(E,B);Sortable.options(I).onChange(E);A.onChange(E)}},unmark:function(){if(Sortable._marker){Sortable._marker.hide()}},mark:function(B,A){var D=Sortable.options(B.parentNode);if(D&&!D.ghosting){return }if(!Sortable._marker){Sortable._marker=($("dropmarker")||Element.extend(document.createElement("DIV"))).hide().addClassName("dropmarker").setStyle({position:"absolute"});document.getElementsByTagName("body").item(0).appendChild(Sortable._marker)}var C=Position.cumulativeOffset(B);Sortable._marker.setStyle({left:C[0]+"px",top:C[1]+"px"});if(A=="after"){if(D.overlap=="horizontal"){Sortable._marker.setStyle({left:(C[0]+B.clientWidth)+"px"})}else{Sortable._marker.setStyle({top:(C[1]+B.clientHeight)+"px"})}}Sortable._marker.show()},_tree:function(E,B,F){var D=Sortable.findElements(E,B)||[];for(var C=0;C<D.length;++C){var A=D[C].id.match(B.format);if(!A){continue}var G={id:encodeURIComponent(A?A[1]:null),element:E,parent:F,children:[],position:F.children.length,container:$(D[C]).down(B.treeTag)};if(G.container){this._tree(G.container,B,G)}F.children.push(G)}return F},tree:function(D){D=$(D);var C=this.options(D);var B=Object.extend({tag:C.tag,treeTag:C.treeTag,only:C.only,name:D.id,format:C.format},arguments[1]||{});var A={id:null,parent:null,children:[],container:D,position:0};return Sortable._tree(D,B,A)},_constructIndex:function(B){var A="";do{if(B.id){A="["+B.position+"]"+A}}while((B=B.parent)!=null);return A},sequence:function(B){B=$(B);var A=Object.extend(this.options(B),arguments[1]||{});return $(this.findElements(B,A)||[]).map(function(C){return C.id.match(A.format)?C.id.match(A.format)[1]:""})},setSequence:function(B,C){B=$(B);var A=Object.extend(this.options(B),arguments[2]||{});var D={};this.findElements(B,A).each(function(E){if(E.id.match(A.format)){D[E.id.match(A.format)[1]]=[E,E.parentNode]}E.parentNode.removeChild(E)});C.each(function(E){var F=D[E];if(F){F[1].appendChild(F[0]);delete D[E]}})},serialize:function(C){C=$(C);var B=Object.extend(Sortable.options(C),arguments[1]||{});var A=encodeURIComponent((arguments[1]&&arguments[1].name)?arguments[1].name:C.id);if(B.tree){return Sortable.tree(C,arguments[1]).children.map(function(D){return[A+Sortable._constructIndex(D)+"[id]="+encodeURIComponent(D.id)].concat(D.children.map(arguments.callee))}).flatten().join("&")}else{return Sortable.sequence(C,arguments[1]).map(function(D){return A+"[]="+encodeURIComponent(D)}).join("&")}}};Element.isParent=function(B,A){if(!B.parentNode||B==A){return false}if(B.parentNode==A){return true}return Element.isParent(B.parentNode,A)};Element.findChildren=function(D,B,A,C){if(!D.hasChildNodes()){return null}C=C.toUpperCase();if(B){B=[B].flatten()}var E=[];$A(D.childNodes).each(function(G){if(G.tagName&&G.tagName.toUpperCase()==C&&(!B||(Element.classNames(G).detect(function(H){return B.include(H)})))){E.push(G)}if(A){var F=Element.findChildren(G,B,A,C);if(F){E.push(F)}}});return(E.length>0?E.flatten():[])};Element.offsetSize=function(A,B){return A["offset"+((B=="vertical"||B=="height")?"Height":"Width")]};if(typeof Effect=="undefined"){throw ("controls.js requires including script.aculo.us' effects.js library")}var Autocompleter={};Autocompleter.Base=Class.create({baseInitialize:function(B,C,A){B=$(B);this.element=B;this.update=$(C);this.hasFocus=false;this.changed=false;this.active=false;this.index=0;this.entryCount=0;this.oldElementValue=this.element.value;if(this.setOptions){this.setOptions(A)}else{this.options=A||{}}this.options.paramName=this.options.paramName||this.element.name;this.options.tokens=this.options.tokens||[];this.options.frequency=this.options.frequency||0.4;this.options.minChars=this.options.minChars||1;this.options.onShow=this.options.onShow||function(D,E){if(!E.style.position||E.style.position=="absolute"){E.style.position="absolute";Position.clone(D,E,{setHeight:false,offsetTop:D.offsetHeight})}Effect.Appear(E,{duration:0.15})};this.options.onHide=this.options.onHide||function(D,E){new Effect.Fade(E,{duration:0.15})};if(typeof (this.options.tokens)=="string"){this.options.tokens=new Array(this.options.tokens)}if(!this.options.tokens.include("\n")){this.options.tokens.push("\n")}this.observer=null;this.element.setAttribute("autocomplete","off");Element.hide(this.update);Event.observe(this.element,"blur",this.onBlur.bindAsEventListener(this));Event.observe(this.element,"keydown",this.onKeyPress.bindAsEventListener(this))},show:function(){if(Element.getStyle(this.update,"display")=="none"){this.options.onShow(this.element,this.update)}if(!this.iefix&&(Prototype.Browser.IE)&&(Element.getStyle(this.update,"position")=="absolute")){new Insertion.After(this.update,'<iframe id="'+this.update.id+'_iefix" style="display:none;position:absolute;filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0);" src="javascript:false;" frameborder="0" scrolling="no"></iframe>');this.iefix=$(this.update.id+"_iefix")}if(this.iefix){setTimeout(this.fixIEOverlapping.bind(this),50)}},fixIEOverlapping:function(){Position.clone(this.update,this.iefix,{setTop:(!this.update.style.height)});this.iefix.style.zIndex=1;this.update.style.zIndex=2;Element.show(this.iefix)},hide:function(){this.stopIndicator();if(Element.getStyle(this.update,"display")!="none"){this.options.onHide(this.element,this.update)}if(this.iefix){Element.hide(this.iefix)}},startIndicator:function(){if(this.options.indicator){Element.show(this.options.indicator)}},stopIndicator:function(){if(this.options.indicator){Element.hide(this.options.indicator)}},onKeyPress:function(A){if(this.active){switch(A.keyCode){case Event.KEY_TAB:case Event.KEY_RETURN:this.selectEntry();Event.stop(A);case Event.KEY_ESC:this.hide();this.active=false;Event.stop(A);return ;case Event.KEY_LEFT:case Event.KEY_RIGHT:return ;case Event.KEY_UP:this.markPrevious();this.render();Event.stop(A);return ;case Event.KEY_DOWN:this.markNext();this.render();Event.stop(A);return }}else{if(A.keyCode==Event.KEY_TAB||A.keyCode==Event.KEY_RETURN||(Prototype.Browser.WebKit>0&&A.keyCode==0)){return }}this.changed=true;this.hasFocus=true;if(this.observer){clearTimeout(this.observer)}this.observer=setTimeout(this.onObserverEvent.bind(this),this.options.frequency*1000)},activate:function(){this.changed=false;this.hasFocus=true;this.getUpdatedChoices()},onHover:function(B){var A=Event.findElement(B,"LI");if(this.index!=A.autocompleteIndex){this.index=A.autocompleteIndex;this.render()}Event.stop(B)},onClick:function(B){var A=Event.findElement(B,"LI");this.index=A.autocompleteIndex;this.selectEntry();this.hide()},onBlur:function(A){setTimeout(this.hide.bind(this),250);this.hasFocus=false;this.active=false},render:function(){if(this.entryCount>0){for(var A=0;A<this.entryCount;A++){this.index==A?Element.addClassName(this.getEntry(A),"selected"):Element.removeClassName(this.getEntry(A),"selected")}if(this.hasFocus){this.show();this.active=true}}else{this.active=false;this.hide()}},markPrevious:function(){if(this.index>0){this.index--}else{this.index=this.entryCount-1}this.getEntry(this.index).scrollIntoView(true)},markNext:function(){if(this.index<this.entryCount-1){this.index++}else{this.index=0}this.getEntry(this.index).scrollIntoView(false)},getEntry:function(A){return this.update.firstChild.childNodes[A]},getCurrentEntry:function(){return this.getEntry(this.index)},selectEntry:function(){this.active=false;this.updateElement(this.getCurrentEntry())},updateElement:function(F){if(this.options.updateElement){this.options.updateElement(F);return }var D="";if(this.options.select){var A=$(F).select("."+this.options.select)||[];if(A.length>0){D=Element.collectTextNodes(A[0],this.options.select)}}else{D=Element.collectTextNodesIgnoreClass(F,"informal")}var C=this.getTokenBounds();if(C[0]!=-1){var E=this.element.value.substr(0,C[0]);var B=this.element.value.substr(C[0]).match(/^\s+/);if(B){E+=B[0]}this.element.value=E+D+this.element.value.substr(C[1])}else{this.element.value=D}this.oldElementValue=this.element.value;this.element.focus();if(this.options.afterUpdateElement){this.options.afterUpdateElement(this.element,F)}},updateChoices:function(C){if(!this.changed&&this.hasFocus){this.update.innerHTML=C;Element.cleanWhitespace(this.update);Element.cleanWhitespace(this.update.down());if(this.update.firstChild&&this.update.down().childNodes){this.entryCount=this.update.down().childNodes.length;for(var A=0;A<this.entryCount;A++){var B=this.getEntry(A);B.autocompleteIndex=A;this.addObservers(B)}}else{this.entryCount=0}this.stopIndicator();this.index=0;if(this.entryCount==1&&this.options.autoSelect){this.selectEntry();this.hide()}else{this.render()}}},addObservers:function(A){Event.observe(A,"mouseover",this.onHover.bindAsEventListener(this));Event.observe(A,"click",this.onClick.bindAsEventListener(this))},onObserverEvent:function(){this.changed=false;this.tokenBounds=null;if(this.getToken().length>=this.options.minChars){this.getUpdatedChoices()}else{this.active=false;this.hide()}this.oldElementValue=this.element.value},getToken:function(){var A=this.getTokenBounds();return this.element.value.substring(A[0],A[1]).strip()},getTokenBounds:function(){if(null!=this.tokenBounds){return this.tokenBounds}var E=this.element.value;if(E.strip().empty()){return[-1,0]}var F=arguments.callee.getFirstDifferencePos(E,this.oldElementValue);var H=(F==this.oldElementValue.length?1:0);var D=-1,C=E.length;var G;for(var B=0,A=this.options.tokens.length;B<A;++B){G=E.lastIndexOf(this.options.tokens[B],F+H-1);if(G>D){D=G}G=E.indexOf(this.options.tokens[B],F+H);if(-1!=G&&G<C){C=G}}return(this.tokenBounds=[D+1,C])}});Autocompleter.Base.prototype.getTokenBounds.getFirstDifferencePos=function(C,A){var D=Math.min(C.length,A.length);for(var B=0;B<D;++B){if(C[B]!=A[B]){return B}}return D};Ajax.Autocompleter=Class.create(Autocompleter.Base,{initialize:function(C,D,B,A){this.baseInitialize(C,D,A);this.options.asynchronous=true;this.options.onComplete=this.onComplete.bind(this);this.options.defaultParams=this.options.parameters||null;this.url=B},getUpdatedChoices:function(){this.startIndicator();var A=encodeURIComponent(this.options.paramName)+"="+encodeURIComponent(this.getToken());this.options.parameters=this.options.callback?this.options.callback(this.element,A):A;if(this.options.defaultParams){this.options.parameters+="&"+this.options.defaultParams}new Ajax.Request(this.url,this.options)},onComplete:function(A){this.updateChoices(A.responseText)}});Autocompleter.Local=Class.create(Autocompleter.Base,{initialize:function(B,D,C,A){this.baseInitialize(B,D,A);this.options.array=C},getUpdatedChoices:function(){this.updateChoices(this.options.selector(this))},setOptions:function(A){this.options=Object.extend({choices:10,partialSearch:true,partialChars:2,ignoreCase:true,fullSearch:false,selector:function(B){var D=[];var C=[];var H=B.getToken();var G=0;for(var E=0;E<B.options.array.length&&D.length<B.options.choices;E++){var F=B.options.array[E];var I=B.options.ignoreCase?F.toLowerCase().indexOf(H.toLowerCase()):F.indexOf(H);while(I!=-1){if(I==0&&F.length!=H.length){D.push("<li><strong>"+F.substr(0,H.length)+"</strong>"+F.substr(H.length)+"</li>");break}else{if(H.length>=B.options.partialChars&&B.options.partialSearch&&I!=-1){if(B.options.fullSearch||/\s/.test(F.substr(I-1,1))){C.push("<li>"+F.substr(0,I)+"<strong>"+F.substr(I,H.length)+"</strong>"+F.substr(I+H.length)+"</li>");break}}}I=B.options.ignoreCase?F.toLowerCase().indexOf(H.toLowerCase(),I+1):F.indexOf(H,I+1)}}if(C.length){D=D.concat(C.slice(0,B.options.choices-D.length))}return"<ul>"+D.join("")+"</ul>"}},A||{})}});Field.scrollFreeActivate=function(A){setTimeout(function(){Field.activate(A)},1)};Ajax.InPlaceEditor=Class.create({initialize:function(C,B,A){this.url=B;this.element=C=$(C);this.prepareOptions();this._controls={};arguments.callee.dealWithDeprecatedOptions(A);Object.extend(this.options,A||{});if(!this.options.formId&&this.element.id){this.options.formId=this.element.id+"-inplaceeditor";if($(this.options.formId)){this.options.formId=""}}if(this.options.externalControl){this.options.externalControl=$(this.options.externalControl)}if(!this.options.externalControl){this.options.externalControlOnly=false}this._originalBackground=this.element.getStyle("background-color")||"transparent";this.element.title=this.options.clickToEditText;this._boundCancelHandler=this.handleFormCancellation.bind(this);this._boundComplete=(this.options.onComplete||Prototype.emptyFunction).bind(this);this._boundFailureHandler=this.handleAJAXFailure.bind(this);this._boundSubmitHandler=this.handleFormSubmission.bind(this);this._boundWrapperHandler=this.wrapUp.bind(this);this.registerListeners()},checkForEscapeOrReturn:function(A){if(!this._editing||A.ctrlKey||A.altKey||A.shiftKey){return }if(Event.KEY_ESC==A.keyCode){this.handleFormCancellation(A)}else{if(Event.KEY_RETURN==A.keyCode){this.handleFormSubmission(A)}}},createControl:function(G,C,B){var E=this.options[G+"Control"];var F=this.options[G+"Text"];if("button"==E){var A=document.createElement("input");A.type="submit";A.value=F;A.className="editor_"+G+"_button";if("cancel"==G){A.onclick=this._boundCancelHandler}this._form.appendChild(A);this._controls[G]=A}else{if("link"==E){var D=document.createElement("a");D.href="#";D.appendChild(document.createTextNode(F));D.onclick="cancel"==G?this._boundCancelHandler:this._boundSubmitHandler;D.className="editor_"+G+"_link";if(B){D.className+=" "+B}this._form.appendChild(D);this._controls[G]=D}}},createEditField:function(){var C=(this.options.loadTextURL?this.options.loadingText:this.getText());var B;if(1>=this.options.rows&&!/\r|\n/.test(this.getText())){B=document.createElement("input");B.type="text";var A=this.options.size||this.options.cols||0;if(0<A){B.size=A}}else{B=document.createElement("textarea");B.rows=(1>=this.options.rows?this.options.autoRows:this.options.rows);B.cols=this.options.cols||40}B.name=this.options.paramName;B.value=C;B.className="editor_field";if(this.options.submitOnBlur){B.onblur=this._boundSubmitHandler}this._controls.editor=B;if(this.options.loadTextURL){this.loadExternalText()}this._form.appendChild(this._controls.editor)},createForm:function(){var B=this;function A(D,E){var C=B.options["text"+D+"Controls"];if(!C||E===false){return }B._form.appendChild(document.createTextNode(C))}this._form=$(document.createElement("form"));this._form.id=this.options.formId;this._form.addClassName(this.options.formClassName);this._form.onsubmit=this._boundSubmitHandler;this.createEditField();if("textarea"==this._controls.editor.tagName.toLowerCase()){this._form.appendChild(document.createElement("br"))}if(this.options.onFormCustomization){this.options.onFormCustomization(this,this._form)}A("Before",this.options.okControl||this.options.cancelControl);this.createControl("ok",this._boundSubmitHandler);A("Between",this.options.okControl&&this.options.cancelControl);this.createControl("cancel",this._boundCancelHandler,"editor_cancel");A("After",this.options.okControl||this.options.cancelControl)},destroy:function(){if(this._oldInnerHTML){this.element.innerHTML=this._oldInnerHTML}this.leaveEditMode();this.unregisterListeners()},enterEditMode:function(A){if(this._saving||this._editing){return }this._editing=true;this.triggerCallback("onEnterEditMode");if(this.options.externalControl){this.options.externalControl.hide()}this.element.hide();this.createForm();this.element.parentNode.insertBefore(this._form,this.element);if(!this.options.loadTextURL){this.postProcessEditField()}if(A){Event.stop(A)}},enterHover:function(A){if(this.options.hoverClassName){this.element.addClassName(this.options.hoverClassName)}if(this._saving){return }this.triggerCallback("onEnterHover")},getText:function(){return this.element.innerHTML.unescapeHTML()},handleAJAXFailure:function(A){this.triggerCallback("onFailure",A);if(this._oldInnerHTML){this.element.innerHTML=this._oldInnerHTML;this._oldInnerHTML=null}},handleFormCancellation:function(A){this.wrapUp();if(A){Event.stop(A)}},handleFormSubmission:function(D){var B=this._form;var C=$F(this._controls.editor);this.prepareSubmission();var E=this.options.callback(B,C)||"";if(Object.isString(E)){E=E.toQueryParams()}E.editorId=this.element.id;if(this.options.htmlResponse){var A=Object.extend({evalScripts:true},this.options.ajaxOptions);Object.extend(A,{parameters:E,onComplete:this._boundWrapperHandler,onFailure:this._boundFailureHandler});new Ajax.Updater({success:this.element},this.url,A)}else{var A=Object.extend({method:"get"},this.options.ajaxOptions);Object.extend(A,{parameters:E,onComplete:this._boundWrapperHandler,onFailure:this._boundFailureHandler});new Ajax.Request(this.url,A)}if(D){Event.stop(D)}},leaveEditMode:function(){this.element.removeClassName(this.options.savingClassName);this.removeForm();this.leaveHover();this.element.style.backgroundColor=this._originalBackground;this.element.show();if(this.options.externalControl){this.options.externalControl.show()}this._saving=false;this._editing=false;this._oldInnerHTML=null;this.triggerCallback("onLeaveEditMode")},leaveHover:function(A){if(this.options.hoverClassName){this.element.removeClassName(this.options.hoverClassName)}if(this._saving){return }this.triggerCallback("onLeaveHover")},loadExternalText:function(){this._form.addClassName(this.options.loadingClassName);this._controls.editor.disabled=true;var A=Object.extend({method:"get"},this.options.ajaxOptions);Object.extend(A,{parameters:"editorId="+encodeURIComponent(this.element.id),onComplete:Prototype.emptyFunction,onSuccess:function(C){this._form.removeClassName(this.options.loadingClassName);var B=C.responseText;if(this.options.stripLoadedTextTags){B=B.stripTags()}this._controls.editor.value=B;this._controls.editor.disabled=false;this.postProcessEditField()}.bind(this),onFailure:this._boundFailureHandler});new Ajax.Request(this.options.loadTextURL,A)},postProcessEditField:function(){var A=this.options.fieldPostCreation;if(A){$(this._controls.editor)["focus"==A?"focus":"activate"]()}},prepareOptions:function(){this.options=Object.clone(Ajax.InPlaceEditor.DefaultOptions);Object.extend(this.options,Ajax.InPlaceEditor.DefaultCallbacks);[this._extraDefaultOptions].flatten().compact().each(function(A){Object.extend(this.options,A)}.bind(this))},prepareSubmission:function(){this._saving=true;this.removeForm();this.leaveHover();this.showSaving()},registerListeners:function(){this._listeners={};var A;$H(Ajax.InPlaceEditor.Listeners).each(function(B){A=this[B.value].bind(this);this._listeners[B.key]=A;if(!this.options.externalControlOnly){this.element.observe(B.key,A)}if(this.options.externalControl){this.options.externalControl.observe(B.key,A)}}.bind(this))},removeForm:function(){if(!this._form){return }this._form.remove();this._form=null;this._controls={}},showSaving:function(){this._oldInnerHTML=this.element.innerHTML;this.element.innerHTML=this.options.savingText;this.element.addClassName(this.options.savingClassName);this.element.style.backgroundColor=this._originalBackground;this.element.show()},triggerCallback:function(B,A){if("function"==typeof this.options[B]){this.options[B](this,A)}},unregisterListeners:function(){$H(this._listeners).each(function(A){if(!this.options.externalControlOnly){this.element.stopObserving(A.key,A.value)}if(this.options.externalControl){this.options.externalControl.stopObserving(A.key,A.value)}}.bind(this))},wrapUp:function(A){this.leaveEditMode();this._boundComplete(A,this.element)}});Object.extend(Ajax.InPlaceEditor.prototype,{dispose:Ajax.InPlaceEditor.prototype.destroy});Ajax.InPlaceCollectionEditor=Class.create(Ajax.InPlaceEditor,{initialize:function($super,C,B,A){this._extraDefaultOptions=Ajax.InPlaceCollectionEditor.DefaultOptions;$super(C,B,A)},createEditField:function(){var A=document.createElement("select");A.name=this.options.paramName;A.size=1;this._controls.editor=A;this._collection=this.options.collection||[];if(this.options.loadCollectionURL){this.loadCollection()}else{this.checkForExternalText()}this._form.appendChild(this._controls.editor)},loadCollection:function(){this._form.addClassName(this.options.loadingClassName);this.showLoadingText(this.options.loadingCollectionText);var options=Object.extend({method:"get"},this.options.ajaxOptions);Object.extend(options,{parameters:"editorId="+encodeURIComponent(this.element.id),onComplete:Prototype.emptyFunction,onSuccess:function(transport){var js=transport.responseText.strip();if(!/^\[.*\]$/.test(js)){throw ("Server returned an invalid collection representation.")}this._collection=eval(js);this.checkForExternalText()}.bind(this),onFailure:this.onFailure});new Ajax.Request(this.options.loadCollectionURL,options)},showLoadingText:function(B){this._controls.editor.disabled=true;var A=this._controls.editor.firstChild;if(!A){A=document.createElement("option");A.value="";this._controls.editor.appendChild(A);A.selected=true}A.update((B||"").stripScripts().stripTags())},checkForExternalText:function(){this._text=this.getText();if(this.options.loadTextURL){this.loadExternalText()}else{this.buildOptionList()}},loadExternalText:function(){this.showLoadingText(this.options.loadingText);var A=Object.extend({method:"get"},this.options.ajaxOptions);Object.extend(A,{parameters:"editorId="+encodeURIComponent(this.element.id),onComplete:Prototype.emptyFunction,onSuccess:function(B){this._text=B.responseText.strip();this.buildOptionList()}.bind(this),onFailure:this.onFailure});new Ajax.Request(this.options.loadTextURL,A)},buildOptionList:function(){this._form.removeClassName(this.options.loadingClassName);this._collection=this._collection.map(function(D){return 2===D.length?D:[D,D].flatten()});var B=("value" in this.options)?this.options.value:this._text;var A=this._collection.any(function(D){return D[0]==B}.bind(this));this._controls.editor.update("");var C;this._collection.each(function(E,D){C=document.createElement("option");C.value=E[0];C.selected=A?E[0]==B:0==D;C.appendChild(document.createTextNode(E[1]));this._controls.editor.appendChild(C)}.bind(this));this._controls.editor.disabled=false;Field.scrollFreeActivate(this._controls.editor)}});Ajax.InPlaceEditor.prototype.initialize.dealWithDeprecatedOptions=function(A){if(!A){return }function B(C,D){if(C in A||D===undefined){return }A[C]=D}B("cancelControl",(A.cancelLink?"link":(A.cancelButton?"button":A.cancelLink==A.cancelButton==false?false:undefined)));B("okControl",(A.okLink?"link":(A.okButton?"button":A.okLink==A.okButton==false?false:undefined)));B("highlightColor",A.highlightcolor);B("highlightEndColor",A.highlightendcolor)};Object.extend(Ajax.InPlaceEditor,{DefaultOptions:{ajaxOptions:{},autoRows:3,cancelControl:"link",cancelText:"cancel",clickToEditText:"Click to edit",externalControl:null,externalControlOnly:false,fieldPostCreation:"activate",formClassName:"inplaceeditor-form",formId:null,highlightColor:"#ffff99",highlightEndColor:"#ffffff",hoverClassName:"",htmlResponse:true,loadingClassName:"inplaceeditor-loading",loadingText:"Loading...",okControl:"button",okText:"ok",paramName:"value",rows:1,savingClassName:"inplaceeditor-saving",savingText:"Saving...",size:0,stripLoadedTextTags:false,submitOnBlur:false,textAfterControls:"",textBeforeControls:"",textBetweenControls:""},DefaultCallbacks:{callback:function(A){return Form.serialize(A)},onComplete:function(B,A){new Effect.Highlight(A,{startcolor:this.options.highlightColor,keepBackgroundImage:true})},onEnterEditMode:null,onEnterHover:function(A){A.element.style.backgroundColor=A.options.highlightColor;if(A._effect){A._effect.cancel()}},onFailure:function(B,A){alert("Error communication with the server: "+B.responseText.stripTags())},onFormCustomization:null,onLeaveEditMode:null,onLeaveHover:function(A){A._effect=new Effect.Highlight(A.element,{startcolor:A.options.highlightColor,endcolor:A.options.highlightEndColor,restorecolor:A._originalBackground,keepBackgroundImage:true})}},Listeners:{click:"enterEditMode",keydown:"checkForEscapeOrReturn",mouseover:"enterHover",mouseout:"leaveHover"}});Ajax.InPlaceCollectionEditor.DefaultOptions={loadingCollectionText:"Loading options..."};Form.Element.DelayedObserver=Class.create({initialize:function(B,A,C){this.delay=A||0.5;this.element=$(B);this.callback=C;this.timer=null;this.lastValue=$F(this.element);Event.observe(this.element,"keyup",this.delayedListener.bindAsEventListener(this))},delayedListener:function(A){if(this.lastValue==$F(this.element)){return }if(this.timer){clearTimeout(this.timer)}this.timer=setTimeout(this.onTimerEvent.bind(this),this.delay*1000);this.lastValue=$F(this.element)},onTimerEvent:function(){this.timer=null;this.callback(this.element,$F(this.element))}});if(!Control){var Control={}}Control.Slider=Class.create({initialize:function(D,A,B){var C=this;if(Object.isArray(D)){this.handles=D.collect(function(E){return $(E)})}else{this.handles=[$(D)]}this.track=$(A);this.options=B||{};this.axis=this.options.axis||"horizontal";this.increment=this.options.increment||1;this.step=parseInt(this.options.step||"1");this.range=this.options.range||$R(0,1);this.value=0;this.values=this.handles.map(function(){return 0});this.spans=this.options.spans?this.options.spans.map(function(E){return $(E)}):false;this.options.startSpan=$(this.options.startSpan||null);this.options.endSpan=$(this.options.endSpan||null);this.restricted=this.options.restricted||false;this.maximum=this.options.maximum||this.range.end;this.minimum=this.options.minimum||this.range.start;this.alignX=parseInt(this.options.alignX||"0");this.alignY=parseInt(this.options.alignY||"0");this.trackLength=this.maximumOffset()-this.minimumOffset();this.handleLength=this.isVertical()?(this.handles[0].offsetHeight!=0?this.handles[0].offsetHeight:this.handles[0].style.height.replace(/px$/,"")):(this.handles[0].offsetWidth!=0?this.handles[0].offsetWidth:this.handles[0].style.width.replace(/px$/,""));this.active=false;this.dragging=false;this.disabled=false;if(this.options.disabled){this.setDisabled()}this.allowedValues=this.options.values?this.options.values.sortBy(Prototype.K):false;if(this.allowedValues){this.minimum=this.allowedValues.min();this.maximum=this.allowedValues.max()}this.eventMouseDown=this.startDrag.bindAsEventListener(this);this.eventMouseUp=this.endDrag.bindAsEventListener(this);this.eventMouseMove=this.update.bindAsEventListener(this);this.handles.each(function(F,E){E=C.handles.length-1-E;C.setValue(parseFloat((Object.isArray(C.options.sliderValue)?C.options.sliderValue[E]:C.options.sliderValue)||C.range.start),E);F.makePositioned().observe("mousedown",C.eventMouseDown)});this.track.observe("mousedown",this.eventMouseDown);document.observe("mouseup",this.eventMouseUp);document.observe("mousemove",this.eventMouseMove);this.initialized=true},dispose:function(){var A=this;Event.stopObserving(this.track,"mousedown",this.eventMouseDown);Event.stopObserving(document,"mouseup",this.eventMouseUp);Event.stopObserving(document,"mousemove",this.eventMouseMove);this.handles.each(function(B){Event.stopObserving(B,"mousedown",A.eventMouseDown)})},setDisabled:function(){this.disabled=true},setEnabled:function(){this.disabled=false},getNearestValue:function(A){if(this.allowedValues){if(A>=this.allowedValues.max()){return(this.allowedValues.max())}if(A<=this.allowedValues.min()){return(this.allowedValues.min())}var C=Math.abs(this.allowedValues[0]-A);var B=this.allowedValues[0];this.allowedValues.each(function(D){var E=Math.abs(D-A);if(E<=C){B=D;C=E}});return B}if(A>this.range.end){return this.range.end}if(A<this.range.start){return this.range.start}return A},setValue:function(B,A){if(!this.active){this.activeHandleIdx=A||0;this.activeHandle=this.handles[this.activeHandleIdx];this.updateStyles()}A=A||this.activeHandleIdx||0;if(this.initialized&&this.restricted){if((A>0)&&(B<this.values[A-1])){B=this.values[A-1]}if((A<(this.handles.length-1))&&(B>this.values[A+1])){B=this.values[A+1]}}B=this.getNearestValue(B);this.values[A]=B;this.value=this.values[0];this.handles[A].style[this.isVertical()?"top":"left"]=this.translateToPx(B);this.drawSpans();if(!this.dragging||!this.event){this.updateFinished()}},setValueBy:function(B,A){this.setValue(this.values[A||this.activeHandleIdx||0]+B,A||this.activeHandleIdx||0)},translateToPx:function(A){return Math.round(((this.trackLength-this.handleLength)/(this.range.end-this.range.start))*(A-this.range.start))+"px"},translateToValue:function(A){return((A/(this.trackLength-this.handleLength)*(this.range.end-this.range.start))+this.range.start)},getRange:function(B){var A=this.values.sortBy(Prototype.K);B=B||0;return $R(A[B],A[B+1])},minimumOffset:function(){return(this.isVertical()?this.alignY:this.alignX)},maximumOffset:function(){return(this.isVertical()?(this.track.offsetHeight!=0?this.track.offsetHeight:this.track.style.height.replace(/px$/,""))-this.alignY:(this.track.offsetWidth!=0?this.track.offsetWidth:this.track.style.width.replace(/px$/,""))-this.alignX)},isVertical:function(){return(this.axis=="vertical")},drawSpans:function(){var A=this;if(this.spans){$R(0,this.spans.length-1).each(function(B){A.setSpan(A.spans[B],A.getRange(B))})}if(this.options.startSpan){this.setSpan(this.options.startSpan,$R(0,this.values.length>1?this.getRange(0).min():this.value))}if(this.options.endSpan){this.setSpan(this.options.endSpan,$R(this.values.length>1?this.getRange(this.spans.length-1).max():this.value,this.maximum))}},setSpan:function(B,A){if(this.isVertical()){B.style.top=this.translateToPx(A.start);B.style.height=this.translateToPx(A.end-A.start+this.range.start)}else{B.style.left=this.translateToPx(A.start);B.style.width=this.translateToPx(A.end-A.start+this.range.start)}},updateStyles:function(){this.handles.each(function(A){Element.removeClassName(A,"selected")});Element.addClassName(this.activeHandle,"selected")},startDrag:function(C){if(Event.isLeftClick(C)){if(!this.disabled){this.active=true;var D=Event.element(C);var E=[Event.pointerX(C),Event.pointerY(C)];var A=D;if(A==this.track){var B=Position.cumulativeOffset(this.track);this.event=C;this.setValue(this.translateToValue((this.isVertical()?E[1]-B[1]:E[0]-B[0])-(this.handleLength/2)));var B=Position.cumulativeOffset(this.activeHandle);this.offsetX=(E[0]-B[0]);this.offsetY=(E[1]-B[1])}else{while((this.handles.indexOf(D)==-1)&&D.parentNode){D=D.parentNode}if(this.handles.indexOf(D)!=-1){this.activeHandle=D;this.activeHandleIdx=this.handles.indexOf(this.activeHandle);this.updateStyles();var B=Position.cumulativeOffset(this.activeHandle);this.offsetX=(E[0]-B[0]);this.offsetY=(E[1]-B[1])}}}Event.stop(C)}},update:function(A){if(this.active){if(!this.dragging){this.dragging=true}this.draw(A);if(Prototype.Browser.WebKit){window.scrollBy(0,0)}Event.stop(A)}},draw:function(B){var C=[Event.pointerX(B),Event.pointerY(B)];var A=Position.cumulativeOffset(this.track);C[0]-=this.offsetX+A[0];C[1]-=this.offsetY+A[1];this.event=B;this.setValue(this.translateToValue(this.isVertical()?C[1]:C[0]));if(this.initialized&&this.options.onSlide){this.options.onSlide(this.values.length>1?this.values:this.value,this)}},endDrag:function(A){if(this.active&&this.dragging){this.finishDrag(A,true);Event.stop(A)}this.active=false;this.dragging=false},finishDrag:function(A,B){this.active=false;this.dragging=false;this.updateFinished()},updateFinished:function(){if(this.initialized&&this.options.onChange){this.options.onChange(this.values.length>1?this.values:this.value,this)}this.event=null}});Sound={tracks:{},_enabled:true,template:new Template('<embed style="height:0" id="sound_#{track}_#{id}" src="#{url}" loop="false" autostart="true" hidden="true"/>'),enable:function(){Sound._enabled=true},disable:function(){Sound._enabled=false},play:function(B){if(!Sound._enabled){return }var A=Object.extend({track:"global",url:B,replace:false},arguments[1]||{});if(A.replace&&this.tracks[A.track]){$R(0,this.tracks[A.track].id).each(function(D){var C=$("sound_"+A.track+"_"+D);C.Stop&&C.Stop();C.remove()});this.tracks[A.track]=null}if(!this.tracks[A.track]){this.tracks[A.track]={id:0}}else{this.tracks[A.track].id++}A.id=this.tracks[A.track].id;$$("body")[0].insert(Prototype.Browser.IE?new Element("bgsound",{id:"sound_"+A.track+"_"+A.id,src:A.url,loop:1,autostart:true}):Sound.template.evaluate(A))}};if(Prototype.Browser.Gecko&&navigator.userAgent.indexOf("Win")>0){if(navigator.plugins&&$A(navigator.plugins).detect(function(A){return A.name.indexOf("QuickTime")!=-1})){Sound.template=new Template('<object id="sound_#{track}_#{id}" width="0" height="0" type="audio/mpeg" data="#{url}"/>')}else{Sound.play=function(){}}};
// (c) 2010 telegate MEDIA AG.
// Auto-compressed JS (294.44 KB -> 182.36 KB, savings: 112.08 KB) @ 02.09.2010 09:24:53 CET by Pandora
document.observe("dom:loaded",function(){if($('kthomepagemapteaser')!=null){new Ajax.Updater('kthomepagemapteaser','/ajax/teaser')}});if(!("console"in window)||!("firebug"in console)){var names=["log","debug","info","warn","error","assert","dir","dirxml","group","groupEnd","time","timeEnd","count","trace","profile","profileEnd"];window.console={};for(var i=0;i<names.length;++i)window.console[names[i]]=function(){}}var tgmMainClass=Class.create({eventEl:null,ieMSIE6:false,isMSIE6:false,isMSIE:false,cookieCheckUrl:'/ajax/cookie/check',objectPool:null,pandoraData:null,activeDialog:null,timestamp:0,pixel:null,baseUrl:null,path:"/cgi-bin/ivw/CP/",context:null,ratingInProgress:false,userId:null,userH:null,facebookRenderCompleted:false,initialize:function(){this.objectPool=new Array();var eventBug=new Element('div',{id:'tgm_EventBug'});$(document.body).appendChild(eventBug);eventBug.setStyle({display:'none'});this.eventEl=eventBug;if(typeof pandoraData!='undefined'){this.pandoraData=pandoraData}else{console.error('pandoraData is undefined, did you include /dynamic/javascript as JS file?')}if(navigator.userAgent.indexOf("Opera")==-1){if(navigator.appVersion.indexOf("MSIE")!=-1){var temp=navigator.appVersion.split("MSIE");var version=parseFloat(temp[1]);this.isMSIE=true;this.ieMSIE6=(version<7);this.isMSIE6=this.ieMSIE6}}if(typeof tgmMsie6Class!='undefined'){if(navigator.userAgent.toLowerCase().indexOf('msie 6')!=-1){tgmMsie6=new tgmMsie6Class(this)}}this.showJsElements();this.enableBookmarkElements();if(this.is11880()&&$("homeButton")!=null){if($("homeButton").up('li').id!='current'){$("homeButton").observe('mouseover',this.changeButtonImageToActive.bindAsEventListener(this));$("homeButton").observe('mouseout',this.changeButtonImageToInactive.bindAsEventListener(this))}}if(this.is11880()&&$('conversionTag')!=null){new Ajax.Updater('conversionTag','/ajax/conversionTag/index/')}if(this.is11880()&&$("inversButton")!=null){if($("inversButton").up('li').id!='current'){$("inversButton").observe('mouseover',this.changeInversButtonImageToActive.bindAsEventListener(this));$("inversButton").observe('mouseout',this.changeInversButtonImageToInactive.bindAsEventListener(this))}}if($('logoutLink')!=null){$('logoutLink').observe('click',this.handleLogout.bindAsEventListener(this))}if($('openapibutton')!=null){if(typeof(_tag)!="undefined"){_tag.DCSext={}}dcsMultiTrack("DCSext.openAPI",'View');$('openapibutton').observe('click',this.handleOpenapiDialog.bindAsEventListener(this))}if($$('div#col3_content div.map a')!=null&&$$('div#col3_content div.map a').length>0){if(location.href.match(/freenet/)){$$('div.frn_mainNav_h ul li.nav_h_1_1463290 a')[0].href=$$('div.frn_mainNav_h ul li.nav_h_1_1463290 a')[0].href+"?searchobject=1&sd=1"}else{$$('div#nav_main ul li a[href="/kartensuche/"]')[0].href="/kartensuche/?searchobject=1&sd=1"}}if(typeof tgmCookieManagerClass!='undefined'){tgmCookieManager=new tgmCookieManagerClass(this)}if(typeof tgmSliderDistanceClass!='undefined'){var inputfields=$$('span.distance input');var distanceSliders=$$('div.slider.distance');if(inputfields.length>0&&inputfields.length==distanceSliders.length){for(var i=0;i<inputfields.length;i++){var slider=new tgmSliderDistanceClass(inputfields[i],distanceSliders[i])}}}if(typeof tgmEntryToolsClass!='undefined'){if($('resultList')!=null||$('detailentry')!=null){tgmEntryTools=new tgmEntryToolsClass(this);this.objectPool.push(tgmEntryTools)}}var entry_previewEl=$('entry_preview');if(entry_previewEl!=null&&$('detailentry')==null){var previewEl=entry_previewEl.down('.customurl');if(previewEl!=null){if(tgmEntryPreview==null){tgmEntryPreview=new tgmEntryPreviewClass()}tgmEntryPreview.showInfo2('preview',previewEl)}}if(typeof tgmEntryEventActionsClass!='undefined'){tgmEventActions=new tgmEntryEventActionsClass(this);this.objectPool.push(tgmEventActions)}if(typeof tgmClickTrackerClass!='undefined'){tgmClickTracker=new tgmClickTrackerClass(this);this.objectPool.push(tgmClickTracker)}if(typeof tgRoaClass!='undefined'){tgRoa=new tgRoaClass(this);this.objectPool.push(tgRoa)}if(typeof tgAddressbookNotifierClass!='undefined'){tgAddressbookNotifier=new tgAddressbookNotifierClass(this);this.objectPool.push(tgAddressbookNotifier)}if(typeof tgSearchwordHighlighterClass!='undefined'){if($$('body')[0].hasClassName('hpresult')||$$('body')[0].hasClassName('ypresult')){tgSearchwordHighlighter=new tgSearchwordHighlighterClass(this);this.objectPool.push(tgSearchwordHighlighter)}}if(typeof tgmAddressbookClass!='undefined'){tgmAddressbook=new tgmAddressbookClass(this);this.objectPool.push(tgmAddressbook)}if(typeof tgmEntryDetailClass!='undefined'){tgmEntryDetail=new tgmEntryDetailClass(this);this.objectPool.push(tgmEntryDetail)}if(typeof tgmSearchboxClass!='undefined'){var tgmSearchbox=new tgmSearchboxClass(this)}if(typeof tgmClickCheckClass!='undefined'){tgmClickCheck=new tgmClickCheckClass(this);this.objectPool.push(tgmClickCheck)}if(typeof tabbedBoxClass!='undefined'){var tabbedBoxes=$$('div.tabbedBox');if(tabbedBoxes.length>0){tabbedBox=new tabbedBoxClass(this,tabbedBoxes);this.objectPool.push(tabbedBox)}}if(typeof tgmTradeSelectorClass!='undefined'){var tgmTradeSelector=new tgmTradeSelectorClass(this);this.objectPool.push(tgmTradeSelector)}if(typeof highlightBoxClass!='undefined'){var highlightBox=new highlightBoxClass(this);this.objectPool.push(highlightBox)}console.log("Handle Global Click Observer set");$(document.body).observe('click',this.handleGlobalClick.bindAsEventListener(this));if(typeof pandoraData=='undefined'){alert('Please add this to your page init() method:\n$this->addScriptFile(\'/dynamic/javascript\');')}var dropdowns=$$('div.dropdown');if(dropdowns.length>0){dropdowns.each(function(dropdown){var singleDropdown=new tgmUiDropdownClass(this,dropdown);this.objectPool.push(singleDropdown)}.bind(this))}if(typeof tgWidgetBuilderClass!='undefined'){tgWidgetBuilder=new tgWidgetBuilderClass}if(typeof tgmDebugClass!='undefined'){tgmDebug=new tgmDebugClass(this)}this.handleFacebookButton();if(typeof tgTradeListClass!='undefined'){tgTradeList=new tgTradeListClass(this)}if(typeof tgmBookingFormClass!='undefined'){tgmBookingForm=new tgmBookingFormClass(this)}if($('votingBox')!=null){this.log('voting element found!');if(typeof tgVotingClass!='undefined'){this.log('voting class exists!');tgVoting=new tgVotingClass(this,$('votingBox'))}}this.checkCookie(this.notifyNoCookies.bindAsEventListener(this));this.observeEvent('onNewEntry',this.showJsElements.bindAsEventListener(this));var jsAction=this.getUrlParam('_JSA');if(jsAction!=''){if(jsAction=='responseBusiness'){tgmEventActions.dialogResponseBusiness({memo:{entryId:0}})}else if(jsAction=='detailSMS'){if(tgmSmsDialog==null){tgmSmsDialog=new tgmSmsDialogClass()}tgmSmsDialog.entryId=tgmEntryDetail.entryId;tgmSmsDialog.show()}else if(jsAction=='detailFax'){if(tgmFaxDialog==null){tgmFaxDialog=new tgmFaxDialogClass()}tgmFaxDialog.entryId=tgmEntryDetail.entryId;tgmFaxDialog.show()}else if(jsAction=='detailEmail'){if(tgmEmailDialog==null){tgmEmailDialog=new tgmEmailDialogClass()}tgmEmailDialog.entryId=tgmEntryDetail.entryId;tgmEmailDialog.show()}else if(jsAction=='detailWebEmail'){if(tgmContactEmailDialog==null){tgmContactEmailDialog=new tgmContactEmailDialogClass()}tgmContactEmailDialog.entryId=tgmEntryDetail.entryId;tgmContactEmailDialog.show()}else if(jsAction=='login'){if(tgmLoginDialog==null){tgmLoginDialog=new loginDialogClass()}tgmLoginDialog.show()}else if(jsAction=='registration'){if(tgmRegistrationDialog==null){tgmRegistrationDialog=new registrationDialogClass()}tgmRegistrationDialog.show()}else if(jsAction=='bookingMailSent'){tgmBookingForm.showBookingMailSentDialog()}else if(jsAction=='detailSubsidiaryMap'){if(typeof tgmEntryDetail!='undefined'&&tgmEntryDetail!=null){tgmEntryDetail.displayMap()}}else if(jsAction=='authentication'){if(tgmAuthenticationDialog==null){tgmAuthenticationDialog=new tgmAuthenticationDialogClass()}var code=this.getUrlParam('code');var confirmation=this.getUrlParam('confirmation');tgmAuthenticationDialog.code=code;tgmAuthenticationDialog.confirmation=confirmation;tgmAuthenticationDialog.show({code:code,confirmation:confirmation})}}if($$(".subsidiaries_box").length>0&&$("pandoraMap")!=null){initmap()}if(typeof tgAdsClass!='undefined'){tgAds=new tgAdsClass(this);this.objectPool.push(tgAds)}this.pixel=document.createElement("img");this.pixel.style.width="1px";this.pixel.style.height="1px";this.pixel.style.visibility="hidden";if(($("klicktel")!=null&&typeof($("klicktel"))!="undefined")||($("telegate")!=null&&typeof($("telegate"))!="undefined")){document.body.appendChild(this.pixel)}this.baseUrl="http://klicktel.ivwbox.de";if($("klicktel")!=null&&typeof($("klicktel"))!="undefined"){this.context="ktdeDialog"}else{this.context="11880Dialog"}this.observeEvent('onBeforeDialogOpen',this.callWebtrends.bindAsEventListener(this));if($("feedback")){var data={};data.element=$("feedback");$("feedback").observe('click',function(e){tgmMain.fireEvent('onClickDialogFeedback',data)}.bindAsEventListener(this))}},is11880:function(){return(pandoraData.website=='11880')},isFreenet:function(){if((pandoraData.domain).match(/freenet/)!=null){return true}else{return false}},isKlickTel:function(){return(!this.is11880()&&!this.isFreenet())},handleFacebookButton:function(){if(typeof facebookLikeButtonClass!='undefined'){this.log("FACEBOOK: Like button class exists");if($$('.facebookLikeButton').length>0){this.log("FACEBOOK: Like element found");if(typeof pandoraData.facebookAppId=='undefined'){console.error('FACEBOOK: pandoraData.facebookAppId is undefined')}else{this.log("FACEBOOK: appId is set: "+pandoraData.facebookAppId);new facebookLikeButtonClass(pandoraData.facebookAppId,'de_DE',function(href,widgetObject){this.fireEvent('facebookLikeClick',{event:null,href:href,widgetObject:widgetObject})}.bindAsEventListener(this),function(){this.fireEvent('facebookLikeView');this.facebookRenderCompleted=true;var likeText=$$('.likeText')[0];likeText.id='likeBt_'+Math.random();var canEl=$$('link[rel=canonical]');if(canEl.length==0){var url=location.href}else{var canonicalPath=$$('link[rel=canonical]')[0].getAttribute('href');var url='http://'+location.hostname+canonicalPath}new Ajax.Updater(likeText.id,'/ajax/facebookRating/getLikeText',{parameters:{url:url}})}.bindAsEventListener(this));window.setTimeout(function(){if(!this.facebookRenderCompleted){this.warn('Facebook button not rendered within 10 seconds!');this.fireEvent('facebookRenderExpired');if(Prototype.Browser.Gecko&&navigator.appCodeName=='Mozilla'&&navigator.userAgent.indexOf('Firefox')!=-1&&navigator.userAgent.indexOf('Windows')!=-1){if(navigator.userAgent.indexOf('Firefox/3.5.')!=-1){if(typeof FB!='undefined'&&typeof FB.XFBML!='undefined'&&typeof FB.XFBML.parse=='function'){this.warn('Forcing Facebook render on Firefox 3.5.x on Windows');FB.XFBML.parse()}}}}else{this.info('Facebook button rendered.')}}.bindAsEventListener(this),10000);this.observeEvent('updateDetailContent',function(){window.fbAsyncInit()})}}}},getSiteType:function(){return document.body.id},changeButtonImageToActive:function(){$("homeButton").src="/11880/img/home_active.png"},changeButtonImageToInactive:function(){$("homeButton").src="/11880/img/home_inactive.png"},changeInversButtonImageToActive:function(){$("inversButton").src="/11880/img/invers_active.png"},changeInversButtonImageToInactive:function(){$("inversButton").src="/11880/img/invers_inactive.png"},callWebtrends:function(e){if(typeof(_tag)!="undefined"){_tag.DCSext={}}var section="1";if(document.URL.search(/telefonbuch/)!=-1){section="2"}else if(document.URL.search(/branchenbuch/)!=-1){section="3"}else if(document.URL.search(/inverssuche/)!=-1){section="4"}else if(document.URL.search(/kartensuche/)!=-1){section="5"}else if(document.URL.search(/routenplaner/)!=-1){section="6"}var isDetail=false;if($("detailentry")!=null){if(typeof($("detailentry"))!="undefined"){if($("detailentry").hasClassName("premium")){var detailView="1"}else if($("detailentry").hasClassName("standard")){var detailView="2"}isDetail=true}else{tgmMain.log("undef")}}if(isDetail){dcsMultiTrack("DCSext.activeClick",e.memo.dialog.className,"DCSext.sectionAJ",section,"DCSext.detV",detailView)}else{dcsMultiTrack("DCSext.activeClick",e.memo.dialog.className,"DCSext.sectionAJ",section)}var zeit=new Date();if(zeit.getTime()-this.timestamp>1500){this.timestamp=zeit.getTime();if(($("klicktel")!=null&&typeof($("klicktel"))!="undefined")||($("telegate")!=null&&typeof($("telegate"))!="undefined")){this.pixel.src=this.baseUrl+this.path+this.context+";/?r="+document.referrer+"&d="+(Math.random()*100000)}}console.log("Webtrends & IVW Track here")},dump:function(){console.log(this.objectPool)},showJsElements:function(e){if(e!=null&&typeof e.memo!='undefined'){var jsElements=$($(e.memo.element).select('.javascript'));var jsFeatureElements=$($(e.memo.element).select('.jsfeature'))}else{var jsElements=$$('.javascript');var jsFeatureElements=$$('.jsfeature')}if(jsElements.length>0){jsElements.each(function(jsElement){jsElement.show()}.bind(this))}if(jsFeatureElements.length>0){jsFeatureElements.each(function(jsElement){jsElement.classNames().each(function(classN){var matches=classN.match(/^jsfeature_(.*)/);if(matches!=null&&matches.length>0){jsElement.addClassName(matches[1]+'_enabled');jsElement.removeClassName('jsfeature_'+matches[1])}})}.bind(this))}},checkCookie:function(callback){if($('no_cookies_notification')!=null){if(this.getCookie('cookiecheck')!=1&&typeof pandoraData!='undefined'){this.setCookie('cookiecheck','1',60*60*24*365,'/',pandoraData.cookieDomain,false);new Ajax.Request(this.cookieCheckUrl,{method:'get',onSuccess:function(req){if(req.responseText==0){if(callback!=null){callback()}}}})}}},handleGlobalClick:function(e){this.fireEvent('onDocumentClick',e)},fireEvent:function(name,options){console.info('[EVENT: tgm:'+name+']');return this.eventEl.fire('tgm:'+name,options)},observeEvent:function(name,callback){this.eventEl.observe('tgm:'+name,callback)},getTrackingData:function(){var classes=$(document.body).classNames();var returnData={};classes.each(function(cls){if(cls.match(/^track_/)){var trackData=cls.split('_');returnData.page=trackData[1];returnData.id=trackData[2];returnData.entry=trackData[3]}});return returnData},createPane:function(color,opacity,divId){if(color==null){color='white'}if(opacity==null){opacity=0.5}if(divId==null){divId='tgmPane'}var domNode=new Element('div',{id:divId});$(document.body).appendChild(domNode);domNode.setStyle({display:'none',width:'200px',height:'200px',top:'0px',left:'0px',position:'absolute'})},openWin:function(url,width,height){var randomName='tgmWin_'+Math.round(Math.random()*10000);return window.open(url,randomName,"status=0,toolbar=0,menubar=0,directories=0,resizable=1,scrollbars=1,height="+height+',width='+width)},getMaxPopupSize:function(){var dims=$H({width:screen.width,height:screen.height});return dims},showError:function(message){if(typeof tgmUiNotification!='undefined'&&tgmUiNotification!=null){tgmUiNotification.showTimed(message,3)}},getClassesWithout:function(el,stripClass){var classes=el.classNames();var area='';var i=0;var output=new Array();classes.each(function(cls){if(cls!=stripClass){output.push(cls)}i++});return output},getCookie:function(name){return tgmCookieManager.get(name)},setCookie:function(name,value,expires,path,domain,secure){return tgmCookieManager.set(name,value,expires,path,domain,secure)},setStandardCookie:function(name,value,expires){return tgmCookieManager.setStandardCookie(name,value,expires)},notifyNoCookies:function(){if($('no_cookies_notification')!=null){$('no_cookies_notification').show()}},elementAppear:function(el,callback,seconds){if(seconds==null)seconds=0.5;if(typeof Scriptaculous!='undefined'&&!this.isMSIE6){new Effect.Appear(el,{duration:seconds,afterFinish:callback})}else{el.show();if(callback!=null)callback()}},elementFade:function(el,callback,seconds){if(seconds==null)seconds=0.5;if(typeof Scriptaculous!='undefined'&&!this.isMSIE6){new Effect.Fade(el,{duration:seconds,afterFinish:callback})}else{el.hide();if(callback!=null)callback()}},log:function(message){if(this.pandoraData.server=='LOCAL'||this.pandoraData.server=='RELEASE2'||this.pandoraData.server=='DEV'){console.log('[*]'+message)}},warn:function(message){if(this.pandoraData.server=='LOCAL'||this.pandoraData.server=='RELEASE2'||this.pandoraData.server=='DEV'){console.warn('[*]'+message)}},error:function(message){if(this.pandoraData.server=='LOCAL'||this.pandoraData.server=='RELEASE2'||this.pandoraData.server=='DEV'){console.error('[*]'+message)}},info:function(message){if(this.pandoraData.server=='LOCAL'||this.pandoraData.server=='RELEASE2'||this.pandoraData.server=='DEV'){console.info('[*]'+message)}},undefined:function(message){this.fireEvent('onUndefined',message)},trim:function(str){return str.replace(/^\s+/,'').replace(/\s+$/,'')},GM:function(){this.info('Please wait...loading GM...');new Ajax.Request('/ajax/info/gm')},handleLogout:function(e){Event.stop(e);tgmMain.fireEvent('onBeforeLogout');new Ajax.Request('/ajax/dialog/logout',{onComplete:function(res){top.location.reload();tgmMain.fireEvent('onLogout')}.bind(this)});tgmMain.fireEvent('onLogout')},handleOpenapiDialog:function(e){Event.stop(e);if(typeof(tgmOpenapiDialog)=="undefined"){tgmOpenapiDialog=new openapiDialogClass()}if(typeof(_tag)!="undefined"){_tag.DCSext={}}dcsMultiTrack("DCSext.openAPI",'Click');tgmOpenapiDialog.show();tgmMain.fireEvent('onOpenApiDialog')},getUrlParam:function(name){name=name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");var regexS="[\\?&]"+name+"=([^&#]*)";var regex=new RegExp(regexS);var results=regex.exec(window.location.href);if(results==null){return""}else{return results[1]}},enableBookmarkElements:function(){var hiddenBookmarkLinkElements=$$('span.bookmarkLink');if(hiddenBookmarkLinkElements.length>0){hiddenBookmarkLinkElements.each(function(el){if(typeof el.title!='undefined'){var elId='';if(typeof el.id!='undefined'){elId=el.id}var newLink=new Element('a');if(elId!=''){newLink.setAttribute('id',elId)}newLink.update(el.innerHTML);newLink.setAttribute('href',el.title);Element.replace(el,newLink)}})}}});var tgmMain;Event.observe(window,'load',function(){tgmMain=new tgmMainClass()});var md5Class=Class.create({array:function(n){for(i=0;i<n;i++)this[i]=0;this.length=n},integer:function(n){return n%(0xffffffff+1)},shr:function(a,b){a=this.integer(a);b=this.integer(b);if(a-0x80000000>=0){a=a%0x80000000;a>>=b;a+=0x40000000>>(b-1)}else a>>=b;return a},shl1:function(a){a=a%0x80000000;if(a&0x40000000==0x40000000){a-=0x40000000;a*=2;a+=0x80000000}else a*=2;return a},shl:function(a,b){a=this.integer(a);b=this.integer(b);for(var i=0;i<b;i++)a=this.shl1(a);return a},and:function(a,b){a=this.integer(a);b=this.integer(b);var t1=(a-0x80000000);var t2=(b-0x80000000);if(t1>=0)if(t2>=0)return((t1&t2)+0x80000000);else return(t1&b);else if(t2>=0)return(a&t2);else return(a&b)},or:function(a,b){a=this.integer(a);b=this.integer(b);var t1=(a-0x80000000);var t2=(b-0x80000000);if(t1>=0)if(t2>=0)return((t1|t2)+0x80000000);else return((t1|b)+0x80000000);else if(t2>=0)return((a|t2)+0x80000000);else return(a|b)},xor:function(a,b){a=this.integer(a);b=this.integer(b);var t1=(a-0x80000000);var t2=(b-0x80000000);if(t1>=0)if(t2>=0)return(t1^t2);else return((t1^b)+0x80000000);else if(t2>=0)return((a^t2)+0x80000000);else return(a^b)},not:function(a){a=this.integer(a);return(0xffffffff-a)},initialize:function(){this.state=new Array(4);this.count=new Array(2);this.count[0]=0;this.count[1]=0;this.buffer=new Array(64);this.transformBuffer=new Array(16);this.digestBits=new Array(16);this.S11=7;this.S12=12;this.S13=17;this.S14=22;this.S21=5;this.S22=9;this.S23=14;this.S24=20;this.S31=4;this.S32=11;this.S33=16;this.S34=23;this.S41=6;this.S42=10;this.S43=15;this.S44=21;this.ascii="01234567890123456789012345678901"+" !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ"+"[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~"},F:function(x,y,z){return this.or(this.and(x,y),this.and(this.not(x),z))},G:function(x,y,z){return this.or(this.and(x,z),this.and(y,this.not(z)))},H:function(x,y,z){return this.xor(this.xor(x,y),z)},I:function(x,y,z){return this.xor(y,this.or(x,this.not(z)))},rotateLeft:function(a,n){return this.or(this.shl(a,n),(this.shr(a,(32-n))))},FF:function(a,b,c,d,x,s,ac){a=a+this.F(b,c,d)+x+ac;a=this.rotateLeft(a,s);a=a+b;return a},GG:function(a,b,c,d,x,s,ac){a=a+this.G(b,c,d)+x+ac;a=this.rotateLeft(a,s);a=a+b;return a},HH:function(a,b,c,d,x,s,ac){a=a+this.H(b,c,d)+x+ac;a=this.rotateLeft(a,s);a=a+b;return a},II:function(a,b,c,d,x,s,ac){a=a+this.I(b,c,d)+x+ac;a=this.rotateLeft(a,s);a=a+b;return a},transform:function(buf,offset){var a=0,b=0,c=0,d=0;var x=this.transformBuffer;a=this.state[0];b=this.state[1];c=this.state[2];d=this.state[3];for(i=0;i<16;i++){x[i]=this.and(buf[i*4+offset],0xff);for(j=1;j<4;j++){x[i]+=this.shl(this.and(buf[i*4+j+offset],0xff),j*8)}}a=this.FF(a,b,c,d,x[0],this.S11,0xd76aa478);d=this.FF(d,a,b,c,x[1],this.S12,0xe8c7b756);c=this.FF(c,d,a,b,x[2],this.S13,0x242070db);b=this.FF(b,c,d,a,x[3],this.S14,0xc1bdceee);a=this.FF(a,b,c,d,x[4],this.S11,0xf57c0faf);d=this.FF(d,a,b,c,x[5],this.S12,0x4787c62a);c=this.FF(c,d,a,b,x[6],this.S13,0xa8304613);b=this.FF(b,c,d,a,x[7],this.S14,0xfd469501);a=this.FF(a,b,c,d,x[8],this.S11,0x698098d8);d=this.FF(d,a,b,c,x[9],this.S12,0x8b44f7af);c=this.FF(c,d,a,b,x[10],this.S13,0xffff5bb1);b=this.FF(b,c,d,a,x[11],this.S14,0x895cd7be);a=this.FF(a,b,c,d,x[12],this.S11,0x6b901122);d=this.FF(d,a,b,c,x[13],this.S12,0xfd987193);c=this.FF(c,d,a,b,x[14],this.S13,0xa679438e);b=this.FF(b,c,d,a,x[15],this.S14,0x49b40821);a=this.GG(a,b,c,d,x[1],this.S21,0xf61e2562);d=this.GG(d,a,b,c,x[6],this.S22,0xc040b340);c=this.GG(c,d,a,b,x[11],this.S23,0x265e5a51);b=this.GG(b,c,d,a,x[0],this.S24,0xe9b6c7aa);a=this.GG(a,b,c,d,x[5],this.S21,0xd62f105d);d=this.GG(d,a,b,c,x[10],this.S22,0x2441453);c=this.GG(c,d,a,b,x[15],this.S23,0xd8a1e681);b=this.GG(b,c,d,a,x[4],this.S24,0xe7d3fbc8);a=this.GG(a,b,c,d,x[9],this.S21,0x21e1cde6);d=this.GG(d,a,b,c,x[14],this.S22,0xc33707d6);c=this.GG(c,d,a,b,x[3],this.S23,0xf4d50d87);b=this.GG(b,c,d,a,x[8],this.S24,0x455a14ed);a=this.GG(a,b,c,d,x[13],this.S21,0xa9e3e905);d=this.GG(d,a,b,c,x[2],this.S22,0xfcefa3f8);c=this.GG(c,d,a,b,x[7],this.S23,0x676f02d9);b=this.GG(b,c,d,a,x[12],this.S24,0x8d2a4c8a);a=this.HH(a,b,c,d,x[5],this.S31,0xfffa3942);d=this.HH(d,a,b,c,x[8],this.S32,0x8771f681);c=this.HH(c,d,a,b,x[11],this.S33,0x6d9d6122);b=this.HH(b,c,d,a,x[14],this.S34,0xfde5380c);a=this.HH(a,b,c,d,x[1],this.S31,0xa4beea44);d=this.HH(d,a,b,c,x[4],this.S32,0x4bdecfa9);c=this.HH(c,d,a,b,x[7],this.S33,0xf6bb4b60);b=this.HH(b,c,d,a,x[10],this.S34,0xbebfbc70);a=this.HH(a,b,c,d,x[13],this.S31,0x289b7ec6);d=this.HH(d,a,b,c,x[0],this.S32,0xeaa127fa);c=this.HH(c,d,a,b,x[3],this.S33,0xd4ef3085);b=this.HH(b,c,d,a,x[6],this.S34,0x4881d05);a=this.HH(a,b,c,d,x[9],this.S31,0xd9d4d039);d=this.HH(d,a,b,c,x[12],this.S32,0xe6db99e5);c=this.HH(c,d,a,b,x[15],this.S33,0x1fa27cf8);b=this.HH(b,c,d,a,x[2],this.S34,0xc4ac5665);a=this.II(a,b,c,d,x[0],this.S41,0xf4292244);d=this.II(d,a,b,c,x[7],this.S42,0x432aff97);c=this.II(c,d,a,b,x[14],this.S43,0xab9423a7);b=this.II(b,c,d,a,x[5],this.S44,0xfc93a039);a=this.II(a,b,c,d,x[12],this.S41,0x655b59c3);d=this.II(d,a,b,c,x[3],this.S42,0x8f0ccc92);c=this.II(c,d,a,b,x[10],this.S43,0xffeff47d);b=this.II(b,c,d,a,x[1],this.S44,0x85845dd1);a=this.II(a,b,c,d,x[8],this.S41,0x6fa87e4f);d=this.II(d,a,b,c,x[15],this.S42,0xfe2ce6e0);c=this.II(c,d,a,b,x[6],this.S43,0xa3014314);b=this.II(b,c,d,a,x[13],this.S44,0x4e0811a1);a=this.II(a,b,c,d,x[4],this.S41,0xf7537e82);d=this.II(d,a,b,c,x[11],this.S42,0xbd3af235);c=this.II(c,d,a,b,x[2],this.S43,0x2ad7d2bb);b=this.II(b,c,d,a,x[9],this.S44,0xeb86d391);this.state[0]+=a;this.state[1]+=b;this.state[2]+=c;this.state[3]+=d},init:function(){this.count[0]=this.count[1]=0;this.state[0]=0x67452301;this.state[1]=0xefcdab89;this.state[2]=0x98badcfe;this.state[3]=0x10325476;for(i=0;i<this.digestBits.length;i++)this.digestBits[i]=0},update:function(b){var index,i;index=this.and(this.shr(this.count[0],3),0x3f);if(this.count[0]<0xffffffff-7)this.count[0]+=8;else{this.count[1]++;this.count[0]-=0xffffffff+1;this.count[0]+=8}this.buffer[index]=this.and(b,0xff);if(index>=63){this.transform(this.buffer,0)}},finish:function(){var bits=new Array(8);var padding;var i=0,index=0,padLen=0;for(i=0;i<4;i++){bits[i]=this.and(this.shr(this.count[0],(i*8)),0xff)}for(i=0;i<4;i++){bits[i+4]=this.and(this.shr(this.count[1],(i*8)),0xff)}index=this.and(this.shr(this.count[0],3),0x3f);padLen=(index<56)?(56-index):(120-index);padding=new Array(64);padding[0]=0x80;for(i=0;i<padLen;i++)this.update(padding[i]);for(i=0;i<8;i++)this.update(bits[i]);for(i=0;i<4;i++){for(j=0;j<4;j++){this.digestBits[i*4+j]=this.and(this.shr(this.state[i],(j*8)),0xff)}}},hexa:function(n){var hexa_h="0123456789abcdef";var hexa_c="";var hexa_m=n;for(hexa_i=0;hexa_i<8;hexa_i++){hexa_c=hexa_h.charAt(Math.abs(hexa_m)%16)+hexa_c;hexa_m=Math.floor(hexa_m/16)}return hexa_c},MD5:function(nachricht){var l,s,k,ka,kb,kc,kd;this.init();for(k=0;k<nachricht.length;k++){l=nachricht.charAt(k);this.update(this.ascii.lastIndexOf(l))}this.finish();ka=kb=kc=kd=0;for(i=0;i<4;i++)ka+=this.shl(this.digestBits[15-i],(i*8));for(i=4;i<8;i++)kb+=this.shl(this.digestBits[15-i],((i-4)*8));for(i=8;i<12;i++)kc+=this.shl(this.digestBits[15-i],((i-8)*8));for(i=12;i<16;i++)kd+=this.shl(this.digestBits[15-i],((i-12)*8));s=this.hexa(kd)+this.hexa(kc)+this.hexa(kb)+this.hexa(ka);return s}});var tgmCookieManagerClass=Class.create({className:'tgmCookieManagerClass',stuffedCookiePrefix:'tgStuff_',maxCookieLength:4096,maxCookieCount:20,cookies:null,stuffedValues:null,initialize:function(mainObject){mainObject.log(this.className+' initialized');this.cookies=this.getAll(mainObject);this.updateValues(mainObject)},updateValues:function(mainObject){this.stuffedValues=this.getAllStuffedValues(null,mainObject)},paste:function(values){var newValue=values.join('|');return newValue},stuff:function(name,value,mainObject){if(mainObject==null){mainObject=tgmMain}var stuffedCookies=this.getAllStuffed(this.cookies,mainObject);name=name.toString().replace(/[%|]/,'_');value=value.toString().replace(/[%|]/,'_');var exists=this.stuffedValues.get(name);if(exists){this.stuffedValues.set(name,value);this.cleanup(this.cookies,this.stuffedValues,mainObject);return}var stuffValue='|'+name+'='+value;var newLength=stuffValue.length;var storeOk=false;if(stuffedCookies.keys().length>0){stuffedCookies.each(function(c){var cleanValue=unescape(unescape(c.value));var len=cleanValue.length;if(escape(len+newLength)<=this.maxCookieLength){var newValue=cleanValue+stuffValue;this.setStandardCookie(c.key,newValue);this.cookies=this.getAll(mainObject);storeOk=true}else{}}.bind(this))}else{}if(!storeOk){if(this.cookies.keys().length<this.maxCookieCount){var newCookieName=this.stuffedCookiePrefix+Math.round(Math.random()*100000);this.cookies.set(newCookieName,stuffValue);this.setStandardCookie(newCookieName,stuffValue);storeOk=true}}if(!storeOk){return null}else{this.rebuildCache(mainObject);return true}},parseStuffed:function(value){},wipeout:function(name){var stuffedValues=this.getAllStuffedValues();stuffedValues.unset(name);this.cleanup(stuffedValues)},unstuff:function(name,cookies,mainObject){if(mainObject==null){mainObject=tgmMain}var stuffedValues=this.getAllStuffedValues(cookies,mainObject);return stuffedValues.get(name)},getAllStuffed:function(allCookies,mainObject){if(mainObject==null){mainObject=tgmMain}if(allCookies==null){allCookies=this.getAll(mainObject)}var stuffedCookies=new Hash();if(allCookies.keys().length>0){allCookies.each(function(c){if(c.key.substring(0,this.stuffedCookiePrefix.length)==this.stuffedCookiePrefix){stuffedCookies.set(c.key,c.value)}}.bind(this))}return stuffedCookies},cleanup:function(cookies,values,mainObject){if(mainObject==null){mainObject=tgmMain}if(values==null){var values=this.getAllStuffedValues(cookies,mainObject)}if(values.keys().length>0){this.clearAllStuffed(mainObject);values.each(function(v){this.stuff(v.key,v.value,mainObject)}.bind(this))}this.rebuildCache(mainObject)},clearCache:function(){this.stuffedValues=null},rebuildCache:function(mainObject){this.clearCache();this.updateValues(mainObject)},getAllStuffedValues:function(cookies,mainObject){if(this.stuffedValues!=null){return this.stuffedValues}if(cookies==null){cookies=this.getAllStuffed(null,mainObject)}var values=new Hash();if(cookies.keys().length>0){cookies.each(function(c){var cleanValue=unescape(unescape(c.value));var contents=cleanValue.split('|');if(contents.length>0){contents.each(function(con){if(con.length>0){var eqOffset=con.indexOf('=');var svName=con.substring(0,eqOffset);var svValue=con.substring(eqOffset+1,con.length);values.set(svName,svValue)}}.bind(this))}})}return values},getAll:function(mainObject){if(mainObject==null){mainObject=tgmMain}var allCookies=document.cookie.split(';');var allNewCookies=new Hash();if(allCookies.length>0){allCookies.each(function(c){c=mainObject.trim(c);var valueOffset=c.indexOf("=");allNewCookies.set(c.substring(0,valueOffset),c.substring(valueOffset+1,c.length))}.bind(this))}return allNewCookies},clearAllStuffed:function(mainObject){if(mainObject==null){mainObject=tgmMain}var cookies=this.getAllStuffed(this.cookies,mainObject);if(cookies.keys().length>0){cookies.each(function(c){this.deleteStandardCookie(c.key,mainObject)}.bind(this));this.cookies=this.getAll(mainObject)}this.rebuildCache(mainObject)},get:function(name){var i=0;var suche=name+"=";while(i<document.cookie.length){if(document.cookie.substring(i,i+suche.length)==suche){var ende=document.cookie.indexOf(";",i+suche.length);ende=(ende>-1)?ende:document.cookie.length;var cook=document.cookie.substring(i+suche.length,ende);return unescape(cook)}i++}return null},dump:function(cookies){if(cookies==null){cookies=this.getAllStuffed()}if(cookies.keys().length>0){cookies.each(function(c){tgmMain.log(this.className+'> name='+c.key+', value='+c.value)}.bind(this))}else{}},dumpValues:function(){if(this.stuffedValues.keys().length>0){this.stuffedValues.each(function(c){}.bind(this))}else{}},set:function(name,value,expires,path,domain,secure){expires instanceof Date?expires=expires.toGMTString():typeof(expires)=='number'&&(expires=(new Date(+(new Date)+expires*1e3)).toGMTString());var r=[name+"="+escape(value)],s,i;for(i in s={expires:expires,path:path,domain:domain}){s[i]&&r.push(i+"="+s[i])}return secure&&r.push("secure"),document.cookie=r.join(";"),true},setStandardCookie:function(name,value,expires,mainObject){if(mainObject==null){mainObject=tgmMain}if(expires==null){expires=60*60*24*365}if(typeof pandoraData!='undefined'){return this.set(name,value,expires,'/',pandoraData.cookieDomain,false)}else{mainObject.error(this.className+'> pandoraData is not defined! Cannot set cookie.')}return null},deleteStandardCookie:function(name,mainObject){if(mainObject==null){mainObject=tgmMain}return this.setStandardCookie(name,'',-1600,mainObject)}});var tgmCookieManager;var tgmPane=Class.create({className:'tgmPane',color:'white',opacity:0.5,divId:'tgmPane',domNode:null,backgroundColor:'white',zIndex:999999,initialize:function(color,opacity,divId){if(color!=null)this.color=color;if(opacity!=null)this.opacity=opacity;if(divId!=null)this.divId=divId;this.domNode=new Element('div',{id:this.divId});$(document.body).appendChild(this.domNode);this.domNode.setStyle({display:'none',width:'200px',height:'200px',top:'0px',left:'0px',position:'absolute',opacity:this.opacity,backgroundColor:this.backgroundColor,zIndex:this.zIndex});this.domNode.paneObject=this;this.domNode.observe('click',this.handleClick.bindAsEventListener(this))},getZIndex:function(){return this.zIndex},show:function(){if(!$$('fieldset.newsletter')){tgmMain.fireEvent('onBeforePaneOpen')}this.resize();this.domNode.show();Event.observe(window,'resize',this.resize.bindAsEventListener(this));tgmMain.fireEvent('onPaneOpen')},hide:function(){tgmMain.fireEvent('onBeforePaneClose');this.domNode.hide();Event.stopObserving(window,'resize',this.resize.bindAsEventListener(this));tgmMain.fireEvent('onPaneClose')},resize:function(){var bodyDimensions=$(document.body).getDimensions();var newHeight=bodyDimensions.height;var newWidth=bodyDimensions.width;var viewportHeight=document.viewport.getHeight();if(viewportHeight>newHeight){newHeight=viewportHeight}var newDims={height:newHeight+'px',width:newWidth+'px',top:'0',left:'0'};this.domNode.setStyle(newDims)},handleClick:function(e){if(typeof tgmGlobalDialogTools!='undefined'){tgmGlobalDialogTools.closeCurrentDialog()}}});var tgmDialog=Class.create({className:'tgmDialog',contentUrl:null,width:0,height:0,divId:null,contentDivId:null,domNode:null,modal:false,paneObject:null,validationObject:null,loaded:false,openCentered:true,offsetTop:50,measureSpanId:null,isDraggable:false,submitButton:false,backButton:false,skypeButton:false,deleteButton:false,captchaEl:false,isReloaded:false,reqFields:false,errorMessage:'.error',form:false,formSubmitCallback:false,formAction:'',formMethod:'post',forceReload:false,previousDialogName:false,clearFieldsOnOpen:false,entryId:null,step:null,ajaxOptions:{},initialize:function(){this.divId='tgmDialog_'+Math.round(Math.random()*100000);this.contentDivId=this.divId+'_content';this.measureSpanId=this.divId+'_measure';if($('tgmPane')==null){this.paneObject=new tgmPane()}else{this.paneObject=$('tgmPane').paneObject}myZIndex=this.paneObject.getZIndex()+1;this.domNode=new Element('div',{id:this.divId});$(document.body).appendChild(this.domNode);$(this.domNode).setStyle({display:'none',width:this.width+'px',height:this.height+'px',top:'100px',left:'100px',position:'absolute',zIndex:myZIndex,overflow:'hidden'});var contentDiv=new Element('div',{id:this.contentDivId});this.domNode.appendChild(contentDiv);var measureSpan=new Element('span',{id:this.measureSpanId});$(document.body).appendChild(measureSpan);measureSpan.setStyle({position:'absolute',display:'none',top:'100px',left:'-1000px'});if(typeof Draggable!='undefined'){this.isDraggable=true;var draggableZIndex=this.paneObject.getZIndex()+20;new Draggable($(this.domNode),{zindex:draggableZIndex,starteffect:null,endeffect:null,onEnd:function(){window.setTimeout(function(){$(this.domNode).setStyle({zIndex:(this.paneObject.getZIndex()+100)})}.bind(this),100)}.bind(this)})}},pShow:function(justLoaded){tgmGlobalDialogTools.currentDialog=this;tgmMain.fireEvent('onBeforeDialogOpen',{dialog:this,modal:this.modal});if(this.modal){this.paneObject.show();Event.observe(document,'keypress',this.handleKeyEvent.bindAsEventListener(this))}$(this.domNode).setStyle({width:this.width+'px',height:'auto'});if(this.openCentered==true){var winWidth=$(document.body).getWidth();var diff=Math.round((winWidth-this.width)/2)+2;if(typeof window.pageYOffset=='undefined'){var iebody=(document.compatMode&&document.compatMode!="BackCompat")?document.documentElement:document.body;var yOffset=iebody.scrollTop+this.offsetTop}else{var yOffset=window.pageYOffset+this.offsetTop}yOffset+=56;$(this.domNode).setStyle({left:diff+'px',top:yOffset+'px'})}var closeIcon=$(this.domNode).down('.closeX');closeIcon.observe('click',this.hide.bindAsEventListener(this));var closeButtons=$(this.domNode).select('.btClose');if(closeButtons.length){closeButtons.each(function(bt){bt.observe('click',this.hide.bindAsEventListener(this))}.bind(this))}var backButton=$(this.domNode).down('.back');if(backButton!=null){this.backButton=backButton;backButton.observe('click',this.goBack.bindAsEventListener(this))}var submitButton=$(this.domNode).down('.submit');if(submitButton!=null){this.submitButton=submitButton;this.reqFields=$(this.domNode).select('.required')}var skypeButton=$(this.domNode).down('.skype');if(skypeButton!=null){this.skypeButton=skypeButton;skypeButton.observe('click',this.skype.bindAsEventListener(this))}var deleteButton=$(this.domNode).down('.delete');if(deleteButton!=null){this.deleteButton=deleteButton;deleteButton.observe('click',this.del.bindAsEventListener(this))}var deleteConfirmButton=$(this.domNode).down('.delete_confirm');if(deleteConfirmButton!=null){this.deleteConfirmButton=deleteConfirmButton;deleteConfirmButton.observe('click',this.delete_confirm.bindAsEventListener(this))}if(this.form!=null){var infoEl=this.form.down('input.info_business');if(infoEl!=null){infoEl.observe('click',this.openInfoBusinessDialog.bindAsEventListener(this))}var editEl=this.form.down('button.edit_business');if(editEl!=null){editEl.observe('click',function(){this.switchDialog('editBusiness')}.bindAsEventListener(this))}var registerEl=this.form.down('a.registration');if(registerEl!=null){if(typeof registrationDialogClass!='undefined'){tgmRegistrationDialog=new registrationDialogClass()}registerEl.observe('click',this.openRegistrationDialog.bindAsEventListener(this))}var forgetPasswordEl=this.form.down('a.forget_password');if(forgetPasswordEl!=null){if(typeof forgetPasswordDialogClass!='undefined'){tgmForgetPasswordDialog=new forgetPasswordDialogClass()}forgetPasswordEl.observe('click',function(){this.switchDialog('forgetPassword')}.bindAsEventListener(this))}if(justLoaded==true){this.formAction=this.form.getAttribute('action');this.formMethod=this.form.getAttribute('method');this.initializeFormCallback(this.submitAction.bindAsEventListener(this));this.initializeFormEvents()}if(this.clearFieldsOnOpen==true){tgmGlobalDialogTools.clearFormFieldValues(this.form)}var reqElements=this.form.select('.required');if(reqElements!=null){reqElements.each(function(reqEl){var tagName=reqEl.tagName.toLowerCase();var fieldType=reqEl.type;if(tagName=='input'){if(typeof fieldType!='undefined'){if(fieldType=='text'||fieldType=='password'){reqEl.observe('focus',this.checkButton.bindAsEventListener(this))}else if(fieldType=='checkbox'){reqEl.observe('click',this.checkButton.bindAsEventListener(this))}}}else if(tagName=='textarea'){reqEl.observe('focus',this.checkButton.bindAsEventListener(this))}}.bind(this))}var captchaEl=this.form.down('img.captcha_image');if(captchaEl!=null){this.captchaEl=captchaEl;this.captchaEl.observe('click',function(){this.reloadCaptcha(true)}.bindAsEventListener(this))}}var selectbox=$(this.domNode).down('span.selectbox');if(selectbox!=null){var contact_selectbox=new tgmSelectboxClass(tgmMain,selectbox)}this.hideError();tgmGlobalDialogTools.elementAppear(this.domNode,function(){if(this.form.select('input[type=text]').length>0){this.form.focusFirstElement()}}.bindAsEventListener(this));tgmMain.fireEvent('onDialogOpen')},openRegistrationDialog:function(e){tgmMain.fireEvent('onBeforeDialogClose');tgmGlobalDialogTools.elementFade(this.domNode,function(){var closeButtons=$(this.domNode).select('.btClose');if(closeButtons.length){closeButtons.each(function(bt){bt.stopObserving('click',this.hide.bindAsEventListener(this))}.bind(this))}Event.stopObserving(document,'keypress',this.handleKeyEvent.bindAsEventListener(this))}.bind(this));tgmMain.fireEvent('onDialogClose');tgmMain.fireEvent('onClickDialogRegistration');tgmRegistrationDialog.show()},openInfoBusinessDialog:function(e){var el=Event.element(e);var data={};data.entryId=this.form.down('input[name=entryId]').getValue();data.element=el;tgmMain.fireEvent('onBeforeDialogClose');tgmGlobalDialogTools.elementFade(this.domNode,function(){var closeButtons=$(this.domNode).select('.btClose');if(closeButtons.length){closeButtons.each(function(bt){bt.stopObserving('click',this.hide.bindAsEventListener(this))}.bind(this))}Event.stopObserving(document,'keypress',this.handleKeyEvent.bindAsEventListener(this))}.bind(this));tgmMain.fireEvent('onDialogClose');tgmMain.fireEvent('onClickDialogInfoBusiness',data)},show:function(params){if(this.forceReload||this.loaded==false){this.pLoad(function(){this.pShow(true)}.bindAsEventListener(this),params)}else{this.pShow(false)}},hide:function(e,hidePane){tgmMain.fireEvent('onBeforeDialogClose');if(e!=null)Event.stop(e);tgmMain.ratingInProgress=false;tgmGlobalDialogTools.elementFade(this.domNode,function(){if(hidePane==null){this.paneObject.hide()}var closeButtons=$(this.domNode).select('.btClose');if(closeButtons.length){closeButtons.each(function(bt){bt.stopObserving('click',this.hide.bindAsEventListener(this))}.bind(this))}Event.stopObserving(document,'keypress',this.handleKeyEvent.bindAsEventListener(this));if(this.form!=null){}}.bind(this));this.isReloaded=false;tgmGlobalDialogTools.currentDialog=null;tgmMain.fireEvent('onDialogClose')},pLoad:function(callback,additionalParams){var params='';if(this.entryId!=null){params+="entryId="+this.entryId}if(this.step!=null){params+="&step="+this.step}params+="&"+Object.toQueryString(this.ajaxOptions);if(additionalParams!=null){params+="&"+Object.toQueryString(additionalParams)}new Ajax.Request(this.contentUrl,{method:'get',parameters:params,onSuccess:function(transport){$(this.measureSpanId).update(transport.responseText);$(this.measureSpanId).show();var dims=$(this.measureSpanId).getDimensions();this.height=dims.height;this.width=dims.width;$(this.measureSpanId).update('');$(this.measureSpanId).hide();$(this.contentDivId).update(transport.responseText);this.loaded=true;this.form=$(this.contentDivId).down('form');if(typeof this.form.id=='undefined'){this.form.id='form_'+this.className+'_'+Math.round(Math.random(10000,99999))}this.validationObject=new tgmValidationClass(this.form);if(callback){callback()}}.bind(this)})},handleKeyEvent:function(e){var key=e.which||e.keyCode;if(key==Event.KEY_ESC){Event.stop(e);this.hide()}else if(key==Event.KEY_RETURN&&this.submitButton&&this.reqFields){this.checkButton()}else if(this.form.select('.required')!=null){this.checkButton()}},initializeFormEvents:function(){},uninitializeFormEvents:function(){},initializeFormCallback:function(callback){this.formSubmitCallback=callback;this.form.observe('submit',this._handleFormSubmit.bindAsEventListener(this));var submitBt=this.form.down('button[type=submit]');if(submitBt!=null){submitBt.observe('click',this._handleFormSubmit.bindAsEventListener(this))}},uninitializeFormCallback:function(callback){this.formSubmitCallback=callback;this.form.stopObserving('submit',this._handleFormSubmit.bindAsEventListener(this));this.form.down('button[type=submit]').stopObserving('click',this._handleFormSubmit.bindAsEventListener(this))},_handleFormSubmit:function(e){Event.stop(e);this.formSubmitCallback(this.form)},sendJSONRequest:function(jsonData,callback){tgmGlobalDialogTools.sendJSONRequest(jsonData,this.formAction,this.formMethod,callback)},sendJSONRequestAndHandleResult:function(jsonData,callback){this.sendJSONRequest(jsonData,function(jsonResponse,textResponse){if(jsonResponse!=null){if(jsonResponse.success==1){this.hideError();if(jsonResponse.message!=''){var data=jsonResponse.message.split("|");var response=data[0];if(response=='error'){this.reloadCaptcha(true);var errorElements=this.form.select('div.errormessage');data.each(function(errorClass){var errorEl;errorElements.each(function(e){if(e.hasClassName(errorClass)){errorEl=e}}.bind(this));if(errorEl!=null){new Effect.HighlightFont(errorEl,{startcolor:"#19457B",endcolor:"#D56B08",restorecolor:"#D56B08",duration:1});errorEl.show()}}.bind(this))}else{if(response=='preview'){var city=data[1];var trade=data[2];if(city!=''&&trade!=''){if(location.href.match('11880')){var pagePath='/'+'branchensuche'+'/'}else{var pagePath='/'+'branchenbuch'+'/'}var url=pagePath+'index/search?method=searchSimple&_dvform_posted=1&trade='+trade+'&zipCity='+city+'&preview=1#resultList';var currentParams=self.location.href.split("trade=");var newParams=trade+'&zipCity='+city+'&preview=1#resultList';if(currentParams[1]==newParams){self.location.href=pagePath+'index/search?method=searchSimple&_dvform_posted=1&trade='+trade+'&zipCity='+city+'&preview=1'}else{self.location.href=url}}else{tgmGlobalDialogTools.showNotification(jsonResponse.message)}this.hide();Event.stop(e)}else if(response=='infoBusiness'||response=='editBusiness'||response=='responseBusiness'||response=='login'){this.switchDialog(jsonResponse.message)}else if(response=='doNothing'){}else if(response=='feedback'){response=data[1];tgmGlobalDialogTools.showNotification(response,7);this.hide();Event.stop(e)}else{if(typeof tgmGlobalDialogTools!='undefined'&&tgmGlobalDialogTools!=null){tgmGlobalDialogTools.showNotification(jsonResponse.message)}this.hide()}}}}else{this.reloadCaptcha();this.showError(jsonResponse.message);if(callback!=null)callback(false)}}else{this.showError('Der Server hat fehlerhafte Daten geliefert.');if(callback!=null)callback(false)}}.bind(this))},switchDialog:function(dialogData){var data={};var inputEntryId=this.form.down('input[name=entryId]');if(inputEntryId!=null){data.entryId=inputEntryId.getValue()}tgmMain.fireEvent('onBeforeDialogClose');var fieldset=$(this.contentDivId).down('fieldset');if(fieldset!=null){this.previousDialogName=fieldset.classNames()}tgmGlobalDialogTools.elementFade(this.domNode,function(){var closeButtons=$(this.domNode).select('.btClose');if(closeButtons.length){closeButtons.each(function(bt){bt.stopObserving('click',this.hide.bindAsEventListener(this))}.bind(this))}Event.stopObserving(document,'keypress',this.handleKeyEvent.bindAsEventListener(this))}.bind(this));tgmGlobalDialogTools.currentDialog=null;tgmMain.fireEvent('onDialogClose');if(dialogData.match("infoBusiness")){var tmpData=dialogData.split("|");var dialogName=tmpData[0];if(tmpData.length>1){tmpData.each(function(param){if(param.match("=")){var tmpGet=param.split('=');var name=tmpGet[0];var value=tmpGet[1];data.step=value}}.bind(this))}}else{var dialogName=dialogData}var dialogClassName=dialogName.substr(0,1).toUpperCase()+dialogName.substr(1);tgmMain.fireEvent('onClickDialog'+dialogClassName,data)},showError:function(message){this.isReloaded=false;var errorBlock=$(this.contentDivId).down(this.errorMessage);if(errorBlock!=null){if(errorBlock!=null){errorBlock.update(message);errorBlock.show()}}else{alert(message)}},hideError:function(message){var errorBlock=$(this.contentDivId).down(this.errorMessage);if(errorBlock!=null){if(errorBlock!=null){errorBlock.hide()}}},hideErrors:function(){var errorMessages=$(this.contentDivId).select('div.errormessage');errorMessages.each(function(errorMessage){errorMessage.hide()}.bind(this))},checkButton:function(){var formbug=false;if(typeof(this.reqFields)=='object'){this.reqFields.each(function(req){var tagName=req.tagName.toLowerCase();var fieldType=req.type;if(tagName=='input'){if(typeof fieldType!='undefined'){if(fieldType=='text'){if(req.value==''){formbug=true}}else if(fieldType=='checkbox'){if(!req.checked){formbug=true}}}}else if(tagName=='select'){if(req.value==''){formbug=true}}else if(tagName=='textarea'){if(req.value==''){formbug=true}}});if(!formbug){if(this.submitButton.hasClassName('freecall')){var today=new Date();var hours=today.getHours();if(hours>=8&&hours<20){this.submitButton.disabled=false}else{this.submitButton.disabled=true}}else{this.submitButton.disabled=false}}else{this.submitButton.disabled=true}}},goBack:function(){tgmMain.fireEvent('onBackButtonClick');this.switchDialog('editBusiness')},saveResponse:function(e){this.hide(e)},skype:function(e){if(e!=null)Event.stop(e);var selectEl=this.form.down('input[name=phone_selectHiddenField]');if(selectEl!=null){tgmMain.fireEvent('onBeforeSkypeOpen');var value=selectEl.value;tgmMain.fireEvent('onDialogClose');window.open('http://www.skype.com/intl/de/')}},reloadCaptcha:function(ignoreIsReloaded){if(this.captchaEl!=null&&(ignoreIsReloaded||!this.isReloaded)){tgmMain.fireEvent('reloadCaptcha');var cUrl="/ajax/captcha?rnd="+Math.random();tgmMain.log("Captcha reloading: "+cUrl);this.captchaEl.src='/img/space.gif';this.captchaEl.src=cUrl;this.isReloaded=true}}});var tgmUiDropdownClass=Class.create({className:'tgmUiDropdownClass',domEl:null,contentEl:null,isOpen:false,zIndex:800000,initialize:function(mainObject,domEl){this.domEl=domEl;domEl.dropdownObject=this;if(typeof domEl.id=='undefined'||domEl.id==null||domEl.id==''){domEl.id='dropdown_'+Math.round(Math.random()*100000)}checkdropdown=domEl.id;if($(checkdropdown).down('div.dropdown_content')==null){return}mainObject.log('dropdown '+domEl.id+' initialized');mainObject.observeEvent('onBeforeDropdownOpen',this.cleanup.bindAsEventListener(this));mainObject.observeEvent('onDocumentClick',this.cleanup.bindAsEventListener(this));domEl.observe('click',this.handleClick.bindAsEventListener(this));domEl.setStyle({cursor:'pointer'});this.contentEl=domEl.down('div.dropdown_shadow');if(this.contentEl!=null){this.contentEl.setStyle({zIndex:this.zIndex,cursor:'default'})}domEl.dropdown=true},handleClick:function(e){var eventEl=Event.element(e);if(eventEl.tagName.toLowerCase()!='a'){if(eventEl.tagName.toLowerCase()=='strong'&&eventEl.up('a')!=null&&this.isOpen&&eventEl.up('div.dropdown_content')){return}Event.stop(e);if(this.isOpen){this.close()}else{this.open()}}},cleanup:function(e){this.close()},getElement:function(){return $(this.contentEl)},open:function(callback,seconds){if(this.isOpen==false){tgmMain.fireEvent('onBeforeDropdownOpen',this);tgmMain.elementAppear(this.contentEl,function(){this.isOpen=true;tgmMain.fireEvent('onDropdownOpen',this);if(callback!=null){callback()}}.bindAsEventListener(this),seconds)}},close:function(callback,seconds){if(this.isOpen){tgmMain.fireEvent('onBeforeDropdownClose',this);tgmMain.elementFade(this.contentEl,function(){this.isOpen=false;tgmMain.fireEvent('onDropdownClose',this);if(callback!=null){callback()}}.bindAsEventListener(this),seconds)}}});var tgmUiDropdown;var uiNotification=Class.create({className:'uiNotification',divId:'tgmNotification',measureSpanId:null,height:0,width:0,timer:null,initialize:function(){this.measureSpanId=this.divId+'_measure';var domEl=new Element('div',{id:this.divId});$(document.body).appendChild(domEl);domEl.addClassName('ajaxDialog');domEl.setStyle({display:'none'});domEl.observe('click',this.hide.bindAsEventListener(this));if(tgmMain){tgmMain.observeEvent('onDocumentClick',this.hide.bindAsEventListener(this))}var measureSpan=new Element('span',{id:this.measureSpanId});$(document.body).appendChild(measureSpan);measureSpan.setStyle({position:'absolute',display:'none',top:'100px',left:'-1000px',border:'1px solid black',padding:'10px',fontSize:'12px',fontWeight:'bold'})},show:function(content,parentEl){$(this.measureSpanId).update(content);$(this.measureSpanId).show();var dims=$(this.measureSpanId).getDimensions();this.height=dims.height;this.width=dims.width;$(this.measureSpanId).update('');var centerCoords=tgmGlobalDialogTools.getCenterCoordinates(this.width,this.height,parentEl);$(this.divId).update(content);var newX=centerCoords.x+'px';var newY=centerCoords.y+'px';var newWidth=this.width+'px';var newHeight=this.height+'px';$(this.divId).setStyle({'left':newX,'top':newY,'width':newWidth,'height':newHeight});tgmGlobalDialogTools.elementAppear($(this.divId))},hide:function(){tgmGlobalDialogTools.elementFade($(this.divId))},showTimed:function(content,seconds,parentEl){this.show(content,parentEl);if(this.timer!=null){window.clearTimeout(this.timer)}this.timer=window.setTimeout(this.hide.bindAsEventListener(this),(seconds*1000))}});var tgmUiNotification;var tgmSmsDialogClass=Class.create(tgmDialog,{className:'tgmSmsDialogClass',contentUrl:'/ajax/dialog/smsDisplay',modal:true,openCentered:true,entryId:null,clearFieldsOnOpen:true,forceReload:true,submitAction:function(form){this.hideError();var error=this.validationObject.check();if(!error){var entryId=form.down('input[name=entryId]').getValue();var mobile=form.down('input[name=mobile]').getValue();var captcha=form.down('input[name=captcha]').getValue();if(form.down('input[name=mobilePersistent]').checked==true){tgmCookieManager.stuff('phm',mobile)}else{tgmCookieManager.stuff('phm','')}var jsonData=$H({mobile:mobile,captcha:captcha,entryId:entryId}).toJSON();this.sendJSONRequestAndHandleResult(jsonData,function(result){if(result==true){tgmMain.fireEvent('onSmsSent',{entryId:entryId});if(typeof(_tag)!="undefined"){_tag.DCSext={}}dcsMultiTrack("DCSext.dialogSubmit",14)}else{}form.down('input[name=captcha]').value="";this.reloadCaptcha()}.bindAsEventListener(this))}else{form.down('input[name=captcha]').value="";this.reloadCaptcha()}}});var tgmSmsDialog;var tgmFaxDialogClass=Class.create(tgmDialog,{className:'tgmFaxDialogClass',contentUrl:'/ajax/dialog/faxDisplay',modal:true,openCentered:true,entryId:null,clearFieldsOnOpen:true,forceReload:true,submitAction:function(form){this.hideError();var error=this.validationObject.check();if(!error){var entryId=form.down('input[name=entryId]').getValue();var selectedFax=form.down('input[name=fax_selectHiddenField]').getValue();var sender=form.down('input[name=sender]').getValue();var email=form.down('input[name=email]').getValue();var phone=form.down('input[name=phone]').getValue();var message=form.down('textarea[name=message]').getValue();var captcha=form.down('input[name=captcha]').getValue();if(form.down('input[name=sender_persistent]').checked==true){tgmCookieManager.stuff('eml',email)}else{tgmCookieManager.stuff('eml','')}if(form.down('input[name=phone_persistent]').checked==true){tgmCookieManager.stuff('phl',phone)}else{tgmCookieManager.stuff('phl','')}var jsonData=$H({sender:sender,email:email,phone:phone,message:message,captcha:captcha,selectedFax:selectedFax,entryId:entryId}).toJSON();this.sendJSONRequestAndHandleResult(jsonData,function(result){if(result==true){tgmMain.fireEvent('onFaxSent',{entryId:entryId});if(typeof(_tag)!="undefined"){_tag.DCSext={}}dcsMultiTrack("DCSext.dialogSubmit",3)}else{form.down('input[name=captcha]').value="";form.down("img.captcha_image").src="/ajax/captcha?rnd="+Math.random()}}.bindAsEventListener(this))}else{form.down('input[name=captcha]').value="";form.down("img.captcha_image").src="/ajax/captcha?rnd="+Math.random()}}});var tgmFaxDialog;var tgmFeedbackDialogClass=Class.create(tgmDialog,{className:'tgmFeedbackDialogClass',contentUrl:'/ajax/dialog/feedbackDisplay',modal:true,openCentered:true,entryId:null,clearFieldsOnOpen:true,forceReload:true,submitAction:function(form){this.hideError();var error=this.validationObject.check();if(!error){var email=form.down('input[name=email]').getValue();var name=form.down('input[name=name]').getValue();var message=form.down('textarea[name=message]').getValue();var referrer=document.location.href;if(referrer.match(/\/search\?page\=/)){referrer='Benutzer war auf einer Suchergebnisseite'}var topic='';$$('.feedbackcomment').each(function(ele){if($(ele).checked){topic=$(ele).value}});if(typeof(_tag)!="undefined"){_tag.DCSext={}}dcsMultiTrack("DCSext.feedback",'submit');var jsonData=$H({email:email,name:name,message:message,topic:topic,referrer:referrer}).toJSON();this.sendJSONRequestAndHandleResult(jsonData,function(result){if(result==true){tgmMain.fireEvent('onFeedbackSent')}}.bindAsEventListener(this))}}});var tgmFeedbackDialog;var tgmEmailDialogClass=Class.create(tgmDialog,{className:'tgmEmailDialogClass',contentUrl:'/ajax/dialog/emailDisplay',modal:true,openCentered:true,entryId:null,clearFieldsOnOpen:true,forceReload:true,submitAction:function(form){this.hideError();var error=this.validationObject.check();if(!error){var entryId=form.down('input[name=entryId]').getValue();var email=form.down('input[name=email]').getValue();var captcha=form.down('input[name=captcha]').getValue();var pars=this.form.serialize();var jsonData=$H({email:email,captcha:captcha,entryId:entryId}).toJSON();this.sendJSONRequestAndHandleResult(jsonData,function(result){if(result==true){tgmMain.fireEvent('onEmailSent',{entryId:entryId});if(typeof(_tag)!="undefined"){_tag.DCSext={}}dcsMultiTrack("DCSext.dialogSubmit",2)}else{form.down('input[name=captcha]').value="";form.down("img.captcha_image").src="/ajax/captcha?rnd="+Math.random()}}.bindAsEventListener(this))}else{form.down('input[name=captcha]').value="";form.down("img.captcha_image").src="/ajax/captcha?rnd="+Math.random()}}});var tgmEmailDialog;var registrationDialogClass=Class.create(tgmDialog,{className:'registrationDialogClass',contentUrl:'/ajax/dialog/registrationDisplay',modal:true,openCentered:true,clearFieldsOnOpen:true,submitAction:function(form){var error=false;var email=form.down('input[name=email]').getValue();var login=form.down('input[name=login]').getValue();var password='';var terms=form.down('input[name=terms]').getValue();var newsletter=form.down('input[name=newsletter]').getValue();var persistent=false;if(form.down('input[name=persistent]').checked==true){persistent=true;ipersistent='1'}else{ipersistent='0'}if(typeof(_tag)!="undefined"){_tag.DCSext={}}dcsMultiTrack("DCSext.registration",'1','DCSext.persistent',ipersistent);error=this.validationObject.check();if(!error){var jsonData=$H({email:email,login:encodeURI(login),password:password,terms:terms,newsletter:newsletter,persistent:persistent}).toJSON();this.sendJSONRequestAndHandleResult(jsonData);if(typeof(_tag)!="undefined"){_tag.DCSext={}}dcsMultiTrack("DCSext.dialogSubmit",10)}tgmMain.activeDialog=null},sendJSONRequestAndHandleResult:function(jsonData,callback){this.sendJSONRequest(jsonData,function(jsonResponse,textResponse){if(jsonResponse!=null){if(jsonResponse.success==1){this.hideError();if(typeof(jsonResponse.userId)!='undefined'&&typeof(jsonResponse.userH)!='undefined'){if(tgmMain.ratingInProgress){tgmRegistrationDialog.hide();tgmMain.userId=jsonResponse.userId;tgmMain.userH=jsonResponse.userH;$('ratingSubmit').click();tgmMain.ratingInProgress=false}}if(jsonResponse.message!=''){var data=jsonResponse.message.split("|");var response=data[0];if(response=='error'){var errorElements=this.form.select('div.errormessage');data.each(function(errorClass){var errorEl;errorElements.each(function(e){if(e.hasClassName(errorClass)){errorEl=e}}.bind(this));if(errorEl!=null){new Effect.HighlightFont(errorEl,{startcolor:"#19457B",endcolor:"#D56B08",restorecolor:"#D56B08",duration:1});errorEl.show()}}.bind(this))}else{if(response=='login'){tgmMain.fireEvent('onBeforeDialogClose');tgmGlobalDialogTools.elementFade(this.domNode,function(){var closeButtons=$(this.domNode).select('.btClose');if(closeButtons.length){closeButtons.each(function(bt){bt.stopObserving('click',this.hide.bindAsEventListener(this))}.bind(this))}Event.stopObserving(document,'keypress',this.handleKeyEvent.bindAsEventListener(this));if(this.form!=null){}}.bind(this));tgmGlobalDialogTools.currentDialog=null;tgmMain.fireEvent('onDialogClose');tgmLoginDialog.show()}else{if(response=='reload'){var message=data[1]}else{var message=jsonResponse.message}if(typeof tgmGlobalDialogTools!='undefined'&&tgmGlobalDialogTools!=null){if(response=='Hudson Test'){tgmGlobalDialogTools.showNotification(message,666);if(tgmUiNotification==null){tgmUiNotification=new uiNotification()}tgmUiNotification.show(message)}else{tgmGlobalDialogTools.showNotification(message)}}this.hide();if(response=='reload'){window.location.reload()}}}}}else{this.showError(jsonResponse.message);if(callback!=null){callback(false)}}}else{this.showError('Der Server hat fehlerhafte Daten geliefert.');if(callback!=null){callback(false)}}}.bind(this))}});var tgmRegistrationDialog;var newsletterDialogClass=Class.create(tgmDialog,{className:'newsletterDialogClass',contentUrl:'/ajax/dialog/newsletterDisplay',modal:true,openCentered:true,clearFieldsOnOpen:true,submitAction:function(form){var error=false;this.hideError();var email=form.down('input[name=email]').getValue();var salutation=form.down('select[name=salutation]').getValue();var lastname=form.down('input[name=lastname]').getValue();var firstname=form.down('input[name=firstname]').getValue();error=this.validationObject.check();var newsletter=0;if(!error){var jsonData=$H({email:email,salutation:salutation,lastname:lastname,firstname:firstname,newsletter:newsletter}).toJSON();this.sendJSONRequestAndHandleResult(jsonData,function(result){if(result==true){tgmMain.fireEvent('onNewsletterSent',{newsletter:newsletter});if(typeof(_tag)!="undefined"){_tag.DCSext={}}dcsMultiTrack("DCSext.dialogSubmit",9)}}.bindAsEventListener(this))}tgmMain.activeDialog=null}});var tgmNewsletterDialog;var forgetPasswordDialogClass=Class.create(tgmDialog,{className:'forgetPasswordDialogClass',contentUrl:'/ajax/dialog/forgetPasswordDisplay',modal:true,openCentered:true,clearFieldsOnOpen:true,submitAction:function(form){var error=false;this.hideError();error=this.validationObject.check();if(!error){var input=form.down('input[name=input]').getValue();var captcha=form.down('input[name=captcha]').getValue();var jsonData=$H({input:input,captcha:captcha}).toJSON();this.sendJSONRequestAndHandleResult(jsonData);if(typeof(_tag)!="undefined"){_tag.DCSext={}}dcsMultiTrack("DCSext.dialogSubmit",4)}else{form.down('input[name=captcha]').value="";form.down("img.captcha_image").src="/ajax/captcha?rnd="+Math.random()}}});var tgmForgetPasswordDialog;var supportDialogClass=Class.create(tgmDialog,{className:'supportDialogClass',contentUrl:'/ajax/dialog/supportDisplay',modal:true,openCentered:true,clearFieldsOnOpen:true,submitAction:function(form){this.hideError();var error=this.validationObject.check();if(!error){var email=form.down('input[name=email]').getValue();var topic=form.down('input[name=topic]').getValue();var message=form.down('textarea[name=message]').getValue();var captcha=form.down('input[name=captcha]').getValue();var jsonData=$H({email:email,topic:topic,captcha:captcha,message:message}).toJSON();this.sendJSONRequestAndHandleResult(jsonData,function(result){if(result==true){tgmMain.fireEvent('onSupportSent',{email:email,topic:topic,captcha:captcha,message:message});if(typeof(_tag)!="undefined"){_tag.DCSext={}}dcsMultiTrack("DCSext.dialogSubmit",15)}else{form.down('input[name=captcha]').value="";form.down("img.captcha_image").src="/ajax/captcha?rnd="+Math.random()}}.bindAsEventListener(this))}else{form.down('input[name=captcha]').value="";form.down("img.captcha_image").src="/ajax/captcha?rnd="+Math.random()}}});var tgmSupportDialog;var openapiDialogClass=Class.create(tgmDialog,{className:'supportDialogClass',contentUrl:'/ajax/dialog/openapiDisplay',modal:true,openCentered:true,clearFieldsOnOpen:true,submitAction:function(form){this.hideError();var error=this.validationObject.check();if(!error){var email=form.down('input[name=email]').getValue();var name=form.down('input[name=name]').getValue();var message=form.down('textarea[name=message]').getValue();var captcha=form.down('input[name=captcha]').getValue();var jsonData=$H({email:email,name:name,captcha:captcha,message:message}).toJSON();this.sendJSONRequestAndHandleResult(jsonData,function(result){if(result==true){tgmMain.fireEvent('onOpenapiSent',{email:email,name:name,captcha:captcha,message:message});if(typeof(_tag)!="undefined"){_tag.DCSext={}}dcsMultiTrack("DCSext.dialogSubmit",15)}else{form.down('input[name=captcha]').value="";form.down("img.captcha_image").src="/ajax/captcha?rnd="+Math.random()}}.bindAsEventListener(this))}else{form.down('input[name=captcha]').value="";form.down("img.captcha_image").src="/ajax/captcha?rnd="+Math.random()}}});var tgmOpenapiDialog;var loginDialogClass=Class.create(tgmDialog,{className:'loginDialogClass',contentUrl:'/ajax/dialog/loginDisplay',modal:true,openCentered:true,entryId:null,clearFieldsOnOpen:true,migratedLogin:false,comeFrom:'showLoginDialog',submitAction:function(form){var error=false;var persistent=false;if(form.down('input[name=persistent]').checked==true){persistent=true;ipersistent='1'}else{ipersistent='0'}if(typeof(_tag)!="undefined"){_tag.DCSext={}}dcsMultiTrack("DCSext.login",this.comeFrom,"DCSext.persistent",ipersistent);var username=form.down('input[name=login]').getValue();var password=form.down('input[name=password]').getValue();var md5=new md5Class();var error=this.validationObject.check();if(!error){var jsonData=$H({username:username,password:md5.MD5(password),persistent:persistent}).toJSON();this.sendJSONRequestAndHandleResult(jsonData)}form.down('input[name=password]').value=''},sendJSONRequestAndHandleResult:function(jsonData,callback){this.sendJSONRequest(jsonData,function(jsonResponse,textResponse){if(jsonResponse!=null){if(jsonResponse.success==1){var data=jsonResponse.message.split("|");var response=data[0];if(response=='migrated'||response=='converted'){if(typeof(tgmInfoLoginDialog)=="undefined"){tgmInfoLoginDialog=new tgmInfoLoginDialogClass()}tgmLoginDialog.hide(null,true);tgmMain.migrationInProgress=true;tgmInfoLoginDialog.show(jsonResponse.message)}else if(response=='error'){var errorElements=this.form.select('div.errormessage');data.each(function(errorClass){var errorEl;errorElements.each(function(e){if(e.hasClassName(errorClass)){errorEl=e}}.bind(this));if(errorEl!=null){new Effect.HighlightFont(errorEl,{startcolor:"#19457B",endcolor:"#D56B08",restorecolor:"#D56B08",duration:1});errorEl.show()}}.bind(this))}else{if(tgmMain.ratingInProgress){tgmLoginDialog.hide(null,false);$('ratingSubmit').click();tgmMain.ratingInProgress=false}else if($('wrapper_adressbook')){tgmLoginDialog.hide();window.location.href="/adressbuch/"}else{tgmLoginDialog.hide();window.location.replace('http://'+window.location.hostname+'/adressbuch/')}}if(typeof(_tag)!="undefined"){_tag.DCSext={}}dcsMultiTrack("DCSext.dialogSubmit",7)}}else{this.showError('Der Server hat fehlerhafte Daten geliefert.')}}.bind(this))}});var tgmLoginDialog;var tgmContactEmailDialogClass=Class.create(tgmDialog,{className:'tgmContactEmailDialogClass',contentUrl:'/ajax/dialog/contactEmailDisplay',modal:true,openCentered:true,entryId:null,clearFieldsOnOpen:true,forceReload:true,submitAction:function(form){this.hideError();var error=this.validationObject.check();if(!error){var entryId=form.down('input[name=entryId]').getValue();var sender=form.down('input[name=sender]').getValue();var email=form.down('input[name=email]').getValue();var phone=form.down('input[name=phone]').getValue();var message=form.down('textarea[name=message]').getValue();var captcha=form.down('input[name=captcha]').getValue();if(form.down('input[name=senderPersistent]').checked==true){var sender2stuff=sender;tgmCookieManager.stuff('snd',sender2stuff)}else{tgmCookieManager.stuff('snd','')}if(form.down('input[name=phonePersistent]').checked==true){tgmCookieManager.stuff('phl',phone)}else{tgmCookieManager.stuff('phl','')}var jsonData=$H({sender:sender,email:email,phone:phone,message:message,captcha:captcha,entryId:entryId}).toJSON();this.sendJSONRequestAndHandleResult(jsonData,function(result){if(result==true){tgmMain.fireEvent('onContactEmailSent',{entryId:entryId});if(typeof(_tag)!="undefined"){_tag.DCSext={}}dcsMultiTrack("DCSext.dialogSubmit",1)}else{form.down('input[name=captcha]').value="";form.down("img.captcha_image").src="/ajax/captcha?rnd="+Math.random()}}.bindAsEventListener(this))}else{form.down('input[name=captcha]').value="";form.down("img.captcha_image").src="/ajax/captcha?rnd="+Math.random()}}});var tgmContactEmailDialog;var tgmResponsePrivateDialogClass=Class.create(tgmDialog,{className:'tgmResponsePrivateDialogClass',contentUrl:'/ajax/dialog/responsePrivateDisplay',modal:true,openCentered:true,entryId:null,clearFieldsOnOpen:true,forceReload:true,submitButton:null,submitAction:function(form){var error=false;error=this.validationObject.check();if(!error){var email=form.down('input[name=email]').getValue();var url=form.down('input[name=url]').getValue();var entryId=form.down('input[name=entryId]').getValue();var captcha=form.down('input[name=captcha]').getValue();this.submitButton=form.down('button[type=submit]');var jsonData=$H({email:email,url:url,captcha:captcha,entryId:entryId}).toJSON();this.submitButton.disabled=true;this.sendJSONRequestAndHandleResult(jsonData,function(result){this.submitButton.disabled=false;if(result==true){tgmMain.fireEvent('onResponsePrivateSent',{entryId:entryId});if(typeof(_tag)!="undefined"){_tag.DCSext={}}dcsMultiTrack("DCSext.dialogSubmit",12)}else{form.down('input[name=captcha]').value="";form.down("img.captcha_image").src="/ajax/captcha?rnd="+Math.random()}}.bindAsEventListener(this))}else{form.down('input[name=captcha]').value="";form.down("img.captcha_image").src="/ajax/captcha?rnd="+Math.random()}}});var tgmResponsePrivateDialog;var tgmEditBusinessDialogClass=Class.create(tgmDialog,{className:'tgmEditBusinessDialogClass',contentUrl:'/ajax/dialog/editBusinessDisplay',modal:true,openCentered:true,entryId:null,clearFieldsOnOpen:true,forceReload:true,submitAction:function(form){this.hideError();var error=this.validationObject.check();if(!error){dcsMultiTrack("DCSext.actionEditBusiness",'responseBusinessDisplay');var company=form.down('input[name=company]').getValue();var trade=form.down('input[name=trade]').getValue();var street=form.down('input[name=street]').getValue();var streetnumber=form.down('input[name=streetNumber]').getValue();var city=form.down('input[name=city]').getValue();var zipcode=form.down('input[name=zipcode]').getValue();var phonecode=form.down('input[name=phonecode]').getValue();var phonenumber=form.down('input[name=phonenumber]').getValue();var faxcode=form.down('input[name=faxcode]').getValue();var faxnumber=form.down('input[name=faxnumber]').getValue();var entryId=form.down('input[name=entryId]').getValue();var jsonData=$H({company:company,trade:trade,street:street,streetnumber:streetnumber,city:city,zipcode:zipcode,phonecode:phonecode,phonenumber:phonenumber,faxcode:faxcode,faxnumber:faxnumber,entryId:entryId}).toJSON();this.sendJSONRequestAndHandleResult(jsonData,function(result){if(result==true){tgmMain.fireEvent('onEditBusinessSent',{entryType:entryType,entryId:entryId});if(typeof(_tag)!="undefined"){_tag.DCSext={}}dcsMultiTrack("DCSext.dialogSubmit",11)}}.bindAsEventListener(this))}else{dcsMultiTrack("DCSext.actionEditBusiness",'editBusinessError')}if(typeof(_tag)!="undefined"){_tag.DCSext={}}tgmMain.activeDialog=null}});var tgmEditBusinessDialog;var tgmResponseBusinessDialogClass=Class.create(tgmDialog,{className:'tgmResponseBusinessDialogClass',contentUrl:'/ajax/dialog/responseBusinessDisplay',modal:true,openCentered:true,entryId:null,clearFieldsOnOpen:true,forceReload:true,newEntry:false,submitButton:null,submitAction:function(form){this.hideError();var error=this.validationObject.check();if(!error){var contact=form.down('input[name=contact]').getValue();var email=form.down('input[name=email]').getValue();if(form.down('input[name=url]')){var url=form.down('input[name=url]').getValue()}var terms=form.down('input[name=terms]').getValue();var information=form.down('input[name=information]').getValue();var entryId=form.down('input[name=entryId]').getValue();var captcha=form.down('input[name=captcha]').getValue();this.submitButton=form.down('button[type=submit]');var recno=tgmMain.getUrlParam('recno');var site=tgmMain.getUrlParam('site');var did=tgmMain.getUrlParam('did');var name=encodeURI(tgmMain.getUrlParam('name'));var street=encodeURI(tgmMain.getUrlParam('street'));var streetNr=tgmMain.getUrlParam('streetN');var zipCode=tgmMain.getUrlParam('zip');var city=encodeURI(tgmMain.getUrlParam('city'));var phoneArea=tgmMain.getUrlParam('phoneA');var phoneNumber=tgmMain.getUrlParam('phoneN');var faxArea=tgmMain.getUrlParam('faxA');var faxNumber=tgmMain.getUrlParam('faxN');var jsonData=$H({contact:contact,email:email,url:url,terms:terms,information:information,captcha:captcha,entryId:entryId,recno:recno,site:site,did:did,name:name,street:street,streetNr:streetNr,zipCode:zipCode,city:city,phoneArea:phoneArea,phoneNumber:phoneNumber,faxArea:faxArea,faxNumber:faxNumber}).toJSON();if(entryId!=''){this.newEntry=false}else{this.newEntry=true}this.sendJSONRequestAndHandleResult(jsonData);if(typeof(_tag)!="undefined"){_tag.DCSext={}}dcsMultiTrack("DCSext.dialogSubmit",11)}else{dcsMultiTrack("DCSext.actionEditBusiness",'responseBusinessError');form.down('input[name=captcha]').value="";form.down("img.captcha_image").src="/ajax/captcha?rnd="+Math.random()}if(typeof(_tag)!="undefined"){_tag.DCSext={}}tgmMain.activeDialog=null},sendJSONRequestAndHandleResult:function(jsonData,callback){this.submitButton.disabled=true;this.sendJSONRequest(jsonData,function(jsonResponse,textResponse){this.submitButton.disabled=false;if(jsonResponse!=null){if(jsonResponse.success==1){this.hideError();if(jsonResponse.message!=''){var data=jsonResponse.message.split("|");var response=data[0];if(response=='error'){this.reloadCaptcha(true);dcsMultiTrack("DCSext.actionEditBusiness",'responseBusinessError');var errorElements=this.form.select('div.errormessage');data.each(function(errorClass){var errorEl;errorElements.each(function(e){if(e.hasClassName(errorClass)){errorEl=e}}.bind(this));if(errorEl!=null){new Effect.HighlightFont(errorEl,{startcolor:"#19457B",endcolor:"#D56B08",restorecolor:"#D56B08",duration:1});errorEl.show()}}.bind(this))}else{if(response=='preview'){var city=data[1];var trade=data[2];if(city!=''&&trade!=''){if(location.href.match('11880')){var pagePath='/'+'branchensuche'+'/'}else{var pagePath='/'+'branchenbuch'+'/'}var url=pagePath+'index/search?method=searchSimple&_dvform_posted=1&trade='+trade+'&zipCity='+city+'&preview=1#resultList';var currentParams=self.location.href.split("trade=");var newParams=trade+'&zipCity='+city+'&preview=1#resultList';if(currentParams[1]==newParams){self.location.href=pagePath+'index/search?method=searchSimple&_dvform_posted=1&trade='+trade+'&zipCity='+city+'&preview=1'}else{self.location.href=url}}else{tgmGlobalDialogTools.showNotification(jsonResponse.message)}this.hide();Event.stop(e)}else if(response=='infoBusiness'||response=='editBusiness'||response=='responseBusiness'||response=='login'){this.switchDialog(jsonResponse.message)}else if(response=='doNothing'){}else{if(typeof tgmGlobalDialogTools!='undefined'&&tgmGlobalDialogTools!=null){tgmGlobalDialogTools.showNotification(jsonResponse.message)}this.hide()}}}}else{this.reloadCaptcha();this.showError(jsonResponse.message);if(callback!=null)callback(false)}}else{this.showError('Der Server hat fehlerhafte Daten geliefert.');if(callback!=null)callback(false)}}.bind(this));return error}});var tgmResponseBusinessDialog;var tgmInfoBusinessDialogClass=Class.create(tgmDialog,{className:'tgmInfoBusinessDialogClass',contentUrl:'/ajax/dialog/infoBusinessDisplay',modal:true,openCentered:true,clearFieldsOnOpen:true,forceReload:true,submitAction:function(form){dcsMultiTrack("DCSext.actionEditBusiness",'editBusinessDisplay');this.hideError();var error=this.validationObject.check();if(!error){var entryId=form.down('input[name=entryId]').getValue();var trade=form.down('input[name=trade]').getValue();var city=form.down('input[name=city]').getValue();var jsonData=$H({trade:trade,city:city,entryId:entryId}).toJSON();this.sendJSONRequestAndHandleResult(jsonData);if(typeof(_tag)!="undefined"){_tag.DCSext={}}dcsMultiTrack("DCSext.dialogSubmit",6)}}});var tgmInfoBusinessDialog;var tgmEditProfileDialogClass=Class.create(tgmDialog,{className:'tgmEditProfileDialogClass',contentUrl:'/ajax/dialog/editProfileDisplay',modal:true,openCentered:true,clearFieldsOnOpen:true,forceReload:true,submitAction:function(form){this.hideError();var error=this.validationObject.check();if(!error){var login=form.down('input[name=login]').getValue();var firstname=form.down('input[name=firstname]').getValue();var lastname=form.down('input[name=lastname]').getValue();var street=form.down('input[name=street]').getValue();var streetnumber=form.down('input[name=streetNumber]').getValue();var city=form.down('input[name=city]').getValue();var zipcode=form.down('input[name=zipcode]').getValue();var email=form.down('input[name=email]').getValue();var password=form.down('input[name=password]').getValue();var passwordConfirm=form.down('input[name=passwordConfirm]').getValue();var jsonData=$H({login:login,firstname:firstname,lastname:lastname,street:street,streetNumber:streetnumber,city:city,zipCode:zipcode,email:email,password:password,passwordConfirm:passwordConfirm}).toJSON();this.sendJSONRequestAndHandleResult(jsonData,function(result){if(result==true){tgmMain.fireEvent('onEditProfileSent',{});if(typeof(_tag)!="undefined"){_tag.DCSext={}}dcsMultiTrack("DCSext.dialogSubmit",18)}}.bindAsEventListener(this))}if(typeof(_tag)!="undefined"){_tag.DCSext={}}tgmMain.activeDialog=null}});var tgmEditProfileDialog;var globalDialogTools=Class.create({className:'globalDialogTools',linkObserverAttached:false,currentDialog:null,initialize:function(){if($('nav')!=null){var loginDialogEl=$('nav').down('div.login a');if(loginDialogEl!=null){tgmLoginDialog=new loginDialogClass();if(this.linkObserverAttached==false){loginDialogEl.observe('click',this.showLoginDialog.bindAsEventListener(this))}}var themeBoxEl=$('themeBoxNav');if(themeBoxEl!=null){var infoEl=themeBoxEl.down('.info_business');if(infoEl!=null){var data={};data.entryId=0;data.element=infoEl;infoEl.observe('click',function(e){tgmMain.fireEvent('onClickDialogInfoBusiness',data)}.bindAsEventListener(this))}}var themeBoxEl=$('themeBoxNav');var assignCompany=$('assignCompany');if(themeBoxEl!=null||assignCompany!=null){if(themeBoxEl==null){themeBoxEl=assignCompany}var actions=themeBoxEl.select('.action');actions.each(function(el){if(el.hasClassName('products_shop')){}else if(el.hasClassName('city_guide')){}else if(el.hasClassName('registration')){tgmRegistrationDialog=new registrationDialogClass();if(this.linkObserverAttached==false){el.observe('click',this.showRegistrationDialog.bindAsEventListener(this));this.linkObserverAttached=true}}else if(el.hasClassName('newsletter')){tgmNewsletterDialog=new newsletterDialogClass();el.observe('click',this.showNewsletterDialog.bindAsEventListener(this))}else if(el.hasClassName('support')){tgmSupportDialog=new supportDialogClass();el.observe('click',this.showSupportDialog.bindAsEventListener(this))}}.bind(this))}var noResultBoxEl=$('noResult');if(noResultBoxEl!=null){var infoBusinessEl=noResultBoxEl.down('a.action.info_business');var data={};data.entryId=0;data.element=infoEl;if(typeof(infoBusinessEl)!='undefined'){infoBusinessEl.observe('click',function(e){tgmMain.fireEvent('onClickDialogInfoBusiness',data)}.bindAsEventListener(this))}}}},showLoginDialog:function(){tgmLoginDialog.show()},showInfoBusinessDialog:function(){if(tgmInfoBusinessDialog==null){tgmInfoBusinessDialog=new tgmInfoBusinessDialogClass()}tgmInfoBusinessDialog.entryId=0;tgmInfoBusinessDialog.show()},showRegistrationDialog:function(){tgmRegistrationDialog.show()},showNewsletterDialog:function(e){Event.stop(e);tgmNewsletterDialog.show()},showSupportDialog:function(e){Event.stop(e);tgmSupportDialog.show()},clearFormFieldValues:function(form){if(form!=null){form.select('input[type=text]').each(function(field){field.value=''});form.select('input[type=password]').each(function(field){field.value=''});form.select('input[type=checked]').each(function(field){field.checked=false})}},sendJSONRequest:function(json,formAction,formMethod,callback){json=json.replace(/\?/,'%3F');new Ajax.Request(formAction,{method:formMethod,parameters:json,evalJSON:true,onComplete:function(response){if(callback!=null){callback(response.responseJSON,response.responseText)}}})},showNotification:function(content,seconds,parentEl){tgmMain.fireEvent('onBeforeNotificationOpen');if(seconds==null){seconds=5}if(parentEl==null&&$('page_margins')!=null){parentEl=$('page_margins')}if(tgmUiNotification==null){tgmUiNotification=new uiNotification()}tgmUiNotification.showTimed(content,seconds,parentEl);tgmMain.fireEvent('onNotificationOpen')},getCenterCoordinates:function(width,height,parentEl){if(parentEl==null){parentEl=$(document.body)}var winWidth=parentEl.getWidth();var winHeight=parentEl.getHeight();var diffX=Math.round((winWidth-width)/2);var diffY=this.getVerticalScrollOffset()+100;return{x:diffX,y:diffY}},getVerticalScrollOffset:function(){if(typeof window.pageYOffset=='undefined'){var iebody=(document.compatMode&&document.compatMode!="BackCompat")?document.documentElement:document.body;var yOffset=iebody.scrollTop}else{var yOffset=window.pageYOffset}return yOffset},elementAppear:function(el,callback,seconds){tgmMain.elementAppear(el,callback,seconds)},elementFade:function(el,callback,seconds){tgmMain.elementFade(el,callback,seconds)},closeCurrentDialog:function(){if(this.currentDialog!=null){this.currentDialog.hide()}}});var tgmGlobalDialogTools;Event.observe(window,'load',function(){tgmGlobalDialogTools=new globalDialogTools()});var tgmUserNameDialogClass=Class.create(tgmDialog,{className:'tgmUserNameDialogClass',contentUrl:'/ajax/dialog/userNameDisplay',modal:true,openCentered:true,clearFieldsOnOpen:true,submitAction:function(form){username=form.down('input[name=login]').getValue();form.down('div.errormessage.usernameexists').hide();form.down('div.errormessage.login').hide();error=this.validationObject.check();if(!error){var jsonData=$H({username:username}).toJSON();this.sendJSONRequest(jsonData,function(jsonResponse,textResponse){if(jsonResponse!=null){if(jsonResponse.success==1){if(typeof(_tag)!="undefined"){_tag.DCSext={}}dcsMultiTrack("DCSext.dialogSubmit",16);top.location.reload()}else{if(jsonResponse.message=='usernameexists'){this.validationObject.showError(form.down('div.errormessage.usernameexists'))}}}else{this.showError('Der Server hat fehlerhafte Daten geliefert.')}}.bind(this))}}});var tgmUserNameDialog;var tgmInfoLoginDialogClass=Class.create(tgmDialog,{className:'tgmInfoLoginDialogClass',contentUrl:'/ajax/dialog/infoLoginDisplay',modal:true,openCentered:true,clearFieldsOnOpen:true,forceReload:true,submitAction:function(form){this.hide();dcsMultiTrack("DCSext.dialogSubmit",17);if(tgmMain.ratingInProgress){$('ratingSubmit').click();tgmMain.ratingInProgress=false}if(tgmMain.migrationInProgress){tgmMain.migrationInProgress=false;window.location.replace('http://'+window.location.hostname+'/adressbuch/')}},show:function($super,params){$super({message:params})}});var tgmInfoLoginDialog;var tgmRatingBadwordsDialogClass=Class.create(tgmDialog,{className:'tgmRatingBadwordsDialogClass',contentUrl:'/ajax/dialog/ratingBadwordsDisplay',modal:true,openCentered:true,clearFieldsOnOpen:true,forceReload:false,submitAction:function(form){this.hide();if(tgmMain.ratingInProgress){$('ratingSubmit').click();tgmMain.ratingInProgress=false}},show:function($super,params){$super({message:params})}});var tgmInfoLoginDialog;var tgmSelectboxClass=Class.create({className:'tgmSelectboxClass',visible:false,selectboxEl:null,selectboxId:null,linkEl:null,foldoutEl:null,selectEl:null,hiddenField:null,formEl:null,autosubmit:false,maxHeightWithoutScrolling:200,scrollbarWidth:24,initialize:function(mainObject,selectboxEl,autosubmit){if(mainObject==null){mainObject=tgmMain}mainObject.log('tgmSelectbox initialized');if(autosubmit){this.autosubmit=autosubmit}this.selectboxEl=selectboxEl;this.selectboxId=selectboxEl.id;this.formEl=selectboxEl.up('form');var foldoutEl=this.selectboxEl.down('span.selectbox_options');if(foldoutEl!=null){this.foldoutEl=foldoutEl;this.linkEl=selectboxEl;var type=foldoutEl.title;var hiddenField=this.formEl.down('input[name='+this.selectboxId+'_selectHiddenField]');if(hiddenField==null){tgmMain.error('['+this.className+'] Hidden field '+this.selectboxId+'_selectHiddenField not found in form, unable to set value')}else{this.hiddenField=hiddenField}this.selectEl=this.selectboxEl.down('span.selected_option');this.selectEl.addClassName('pulldown');this.formEl.down('span.selectbox').addClassName('pulldown');this.linkEl.observe('click',this.toggle.bindAsEventListener(this));var links=this.foldoutEl.select('li a, li a img');if(links.length>0){links.each(function(link){link.observe('click',this.handleOptionClick.bindAsEventListener(this))}.bind(this))}}mainObject.observeEvent('onDocumentClick',this.handleDocumentClick.bindAsEventListener(this));mainObject.observeEvent('onBeforeSuggestOpen',this.close.bindAsEventListener(this))},handleDocumentClick:function(e){this.close()},handleOptionClick:function(e){var el=Event.element(e);Event.stop(e);var title;var value;if(el.tagName.toLowerCase()=='a'){title=el.innerHTML;value=el.id}else if(el.tagName.toLowerCase()=='img'){var refA=el.up('a');title=refA.innerHTML;value=refA.id}else{}this.selectEl.update(title);this.hiddenField.setValue(value);this.close();if(this.autosubmit){this.formEl.submit()}},open:function(e,callback){var dropdownDims=this.foldoutEl.getDimensions();var dropdownWidth=dropdownDims.width;var fieldWidth=this.selectEl.up('span.selectbox').getWidth();var tooHigh=false;if(dropdownDims.height>this.maxHeightWithoutScrolling){this.foldoutEl.setStyle({overflowX:'hidden',height:this.maxHeightWithoutScrolling+'px',width:(dropdownWidth+this.scrollbarWidth)+'px'});var dropdownDims=this.foldoutEl.getDimensions();var dropdownWidth=dropdownDims.width}var hasWideClass=false;tgmMain.elementAppear(this.foldoutEl,function(){tgmMain.fireEvent('onBeforeSelectboxOpen');if(callback!=null){callback()}this.visible=true;tgmMain.fireEvent('onSelectboxOpen')}.bindAsEventListener(this))},close:function(e,callback){if(!this.visible)return;tgmMain.elementFade(this.foldoutEl,function(){tgmMain.fireEvent('onBeforeSelectboxClose');if(callback!=null){callback()}this.foldoutEl.hide();this.visible=false;tgmMain.fireEvent('onSelectboxClose')}.bindAsEventListener(this))},toggle:function(e){Event.stop(e);if(this.visible==true){this.close(e)}else{this.open(e)}}});var tgmSearchboxClass=Class.create({className:'tgmSearchboxClass',suggestSwitches:null,citySelectors:null,visible:false,initialize:function(mainObject){mainObject.log('tgmSearchbox initialized');this.suggestSwitches=new Array();this.citySelectors=new Array();var searchboxes=$$('form.searchbox');if(searchboxes.length>0){searchboxes.each(function(searchbox){var home=($$('body.hphome')!='')?1:0;if(home){var url='/ajax/searchbox/';new Ajax.Request(url,{method:'get',evalScripts:true,onComplete:function(res){if(res.responseText!=''){searchbox['zipCity'].value=res.responseText;searchbox['zipCity'].defaultValue=res.responseText;searchbox['zipCity'].setAttribute('alt',res.responseText)}}.bind(this)})}if(typeof tgmSuggestSwitchClass!='undefined'){var suggestSwitch=searchbox.down('span.suggestswitch');if(suggestSwitch!=null){var ss=new tgmSuggestSwitchClass(mainObject);ss.initSwitchElement(suggestSwitch);mainObject.objectPool.push(ss);this.suggestSwitches.push(ss)}}var citySelector=searchbox.down('span.cityselector');if(citySelector!=null){var selector=new tgmCitySelectorClass(mainObject,citySelector)}var RadialSelector=searchbox.down('span.radialselector');if(RadialSelector!=null){var selector=new tgmRadialSelectorClass(mainObject,RadialSelector)}var CategorySelector=searchbox.down('span.categoryselector');if(CategorySelector!=null){var selector=new tgmCategorySelectorClass(mainObject,CategorySelector)}}.bind(this))}if(typeof tgmSuggestObserverClass!='undefined'){tgmSuggestObserver=new tgmSuggestObserverClass(mainObject);mainObject.objectPool.push(tgmSuggestObserver)}if(typeof tgmToplocationsSuggestObserverClass!='undefined'){tgmToplocationsSuggestObserver=new tgmToplocationsSuggestObserverClass(mainObject);mainObject.objectPool.push(tgmToplocationsSuggestObserver)}mainObject.objectPool.push(this)}});var tgmSearchbox;var tgmCitySelectorClass=Class.create({className:'tgmCitySelectorClass',visible:false,domEl:null,linkEl:null,streetEl:null,streetNumberEl:null,foldoutEl:null,inputEl:null,formEl:null,autosubmit:true,maxHeightWithoutScrolling:200,scrollbarWidth:24,initialize:function(mainObject,el){mainObject.log('tgmCitySelector initialized');this.domEl=el;this.formEl=el.up('form');var foldoutEl=this.domEl.down('span.cityselector_cities');if(foldoutEl!=null){this.foldoutEl=foldoutEl;this.linkEl=el;this.formEl.down('span.cityselector').removeClassName('disabled');this.formEl.down('span.cityselector').addClassName('enabled');this.inputEl=this.formEl.down('input[name=zipCity]');this.streetEl=this.formEl.down('input[name=street]');this.streetNumberEl=this.formEl.down('input[name=streetNumber]');this.formEl.down('input.zipCity').addClassName('pulldown');this.formEl.down('span.zipCity').addClassName('pulldown');this.linkEl.observe('click',this.toggle.bindAsEventListener(this));var cityLinks=this.foldoutEl.select('a');if(cityLinks.length>0){cityLinks.each(function(cityLink){cityLink.observe('click',this.handleCityClick.bindAsEventListener(this))}.bind(this))}el.show()}mainObject.observeEvent('onDocumentClick',this.handleDocumentClick.bindAsEventListener(this));mainObject.observeEvent('onBeforeSuggestOpen',this.close.bindAsEventListener(this))},handleDocumentClick:function(e){this.close()},handleCityClick:function(e){var el=Event.element(e);Event.stop(e);var locationId=el.href.replace(/(.*)#/,'');var locationName=el.firstChild.data;var locationIdField=this.formEl.down('input[name=location_id]');if(locationIdField!=null){if(el.hasClassName('address')){var cityInfo=locationId.match(/^([0-9]+)\|([^|]+)\|([^|]*)\|(.*)/);var locationId='A'+cityInfo[1];if(this.streetEl!=null&&this.streetNumberEl!=null){this.inputEl.setValue(Utf8.decode(unescape(cityInfo[4])));this.streetEl.setValue(Utf8.decode(unescape(cityInfo[2])));this.streetNumberEl.setValue(Utf8.decode(unescape(cityInfo[3])))}else{this.inputEl.setValue(Utf8.decode(unescape(cityInfo[2]+' - '+cityInfo[3]+' '+cityInfo[4])))}}else{this.inputEl.setValue(locationName)}locationIdField.setValue(locationId);this.close();if(this.autosubmit){this.formEl.submit()}}else{tgmMain.error('['+this.className+'] Hidden field location_id not found in form, unable to set value')}this.close()},open:function(e,callback){var dropdownDims=this.domEl.down('span.cityselector_cities').getDimensions();var dropdownWidth=dropdownDims.width;var fieldWidth=this.inputEl.up('span.zipCity').getWidth();var tooHigh=false;if(dropdownDims.height>this.maxHeightWithoutScrolling){this.foldoutEl.setStyle({overflowX:'hidden',height:this.maxHeightWithoutScrolling+'px',width:(dropdownWidth+this.scrollbarWidth)+'px'});var dropdownDims=this.foldoutEl.getDimensions();var dropdownWidth=dropdownDims.width}var browser=navigator.appName;var version=parseInt(navigator.appVersion.split("MSIE")[1]);if(browser=='Netscape'){if(tgmMain.is11880()){fieldWidth=fieldWidth-12}else{fieldWidth=fieldWidth-2}}else{if(version==6){fieldWidth=fieldWidth-49}else if(version==7){fieldWidth=fieldWidth-22}else if(version==8){fieldWidth=fieldWidth-12}if(!tgmMain.is11880()){fieldWidth+=10}}var hasWideClass=false;this.foldoutEl.setStyle({width:(fieldWidth)+'px'});this.foldoutEl.removeClassName('disabled');this.foldoutEl.hide();this.foldoutEl.addClassName('enabled');tgmMain.elementAppear(this.foldoutEl,function(){tgmMain.fireEvent('onBeforeCitySelectorOpen');if(callback!=null){callback()}this.visible=true;tgmMain.fireEvent('onCitySelectorOpen')}.bindAsEventListener(this))},close:function(e,callback){if(!this.visible)return;tgmMain.elementFade(this.foldoutEl,function(){tgmMain.fireEvent('onBeforeCitySelectorClose');if(callback!=null){callback()}this.foldoutEl.hide();this.visible=false;tgmMain.fireEvent('onCitySelectorClose')}.bindAsEventListener(this))},toggle:function(e){Event.stop(e);if(this.visible==true){this.close(e)}else{this.open(e)}}});var tgmRadialSelectorClass=Class.create({className:'tgmRadialSelectorClass',visible:false,domEl:null,linkEl:null,foldoutEl:null,inputEl:null,formEl:null,autosubmit:false,maxHeightWithoutScrolling:200,radialWidth:41,radialWidthKlicktel:39,initialize:function(mainObject,el){mainObject.log('tgmRadialSelector initialized');this.domEl=el;this.formEl=el.up('form');var foldoutEl=this.domEl.down('span.radialselector_numbers');if(foldoutEl!=null){this.foldoutEl=foldoutEl;this.linkEl=el;this.formEl.down('span.radialselector').removeClassName('disabled');this.formEl.down('span.radialselector').addClassName('enabled');this.inputEl=this.formEl.down('input[name=radial]');this.formEl.down('input.radial').addClassName('pulldown');this.formEl.down('span.streetNumber').addClassName('pulldown');if($("telegate")){this.inputEl.setStyle({borderRight:'none',padding:'0.60em 5px 0.70em 5px',width:this.radialWidth+'px'})}else if($("klicktel")){this.inputEl.setStyle({borderRight:'none',padding:'0.55em 5px 0.45em 5px',width:this.radialWidthKlicktel+'px'})}this.linkEl.observe('click',this.toggle.bindAsEventListener(this));var radialLinks=this.foldoutEl.select('a');if(radialLinks.length>0){radialLinks.each(function(radialLink){radialLink.observe('click',this.handleRadialClick.bindAsEventListener(this))}.bind(this))}el.show()}mainObject.observeEvent('onDocumentClick',this.handleDocumentClick.bindAsEventListener(this));mainObject.observeEvent('onBeforeSuggestOpen',this.close.bindAsEventListener(this))},handleDocumentClick:function(e){this.close()},handleRadialClick:function(e){var el=Event.element(e);Event.stop(e);var radialId=el.href.replace(/(.*)#/,'');var radialName=el.firstChild.data;this.inputEl.setValue(radialName);if(this.autosubmit){this.formEl.submit()}this.close()},open:function(e,callback){var dropdownDims=this.domEl.down('span.radialselector_numbers').getDimensions();var dropdownWidth=dropdownDims.width;var tooHigh=false;if(dropdownDims.height>this.maxHeightWithoutScrolling){this.foldoutEl.setStyle({overflowX:'hidden',height:this.maxHeightWithoutScrolling+'px',width:(dropdownWidth+this.scrollbarWidth)+'px'});var dropdownDims=this.foldoutEl.getDimensions();var dropdownWidth=dropdownDims.width}this.foldoutEl.removeClassName('disabled');this.foldoutEl.hide();this.foldoutEl.addClassName('enabled');tgmMain.elementAppear(this.foldoutEl,function(){tgmMain.fireEvent('onBeforeRadialSelectorOpen');if(callback!=null){callback()}this.visible=true;tgmMain.fireEvent('onRadialSelectorOpen')}.bindAsEventListener(this))},close:function(e,callback){if(!this.visible)return;tgmMain.elementFade(this.foldoutEl,function(){tgmMain.fireEvent('onBeforeRadialSelectorClose');if(callback!=null){callback()}this.foldoutEl.hide();this.visible=false;tgmMain.fireEvent('onRadialSelectorClose')}.bindAsEventListener(this))},toggle:function(e){Event.stop(e);if(this.visible==true){this.close(e)}else{this.open(e)}}});var tgmCategorySelectorClass=Class.create({className:'tgmCategorySelectorClass',visible:false,domEl:null,linkEl:null,foldoutEl:null,inputEl:null,formEl:null,autosubmit:false,maxHeightWithoutScrolling:200,categoryWidth:235,scrollbarWidth:24,initialize:function(mainObject,el){mainObject.log('tgmCategorySelector initialized');this.domEl=el;this.formEl=el.up('form');var foldoutEl=this.domEl.down('span.categoryselector_numbers');if(foldoutEl!=null){this.foldoutEl=foldoutEl;this.linkEl=el;this.formEl.down('span.categoryselector').removeClassName('disabled');this.formEl.down('span.categoryselector').addClassName('enabled');this.inputEl=this.formEl.down('input[name=category]');this.formEl.down('input.category').addClassName('pulldown');this.formEl.down('span.category').addClassName('pulldown');this.inputEl.setStyle({borderRight:'none',padding:'0.60em 1em 0.70em 1em',width:this.categoryWidth+'px'});this.linkEl.observe('click',this.toggle.bindAsEventListener(this));this.inputEl.observe('click',this.toggle.bindAsEventListener(this));var categoryLinks=this.foldoutEl.select('a');if(categoryLinks.length>0){categoryLinks.each(function(categoryLink){categoryLink.observe('click',this.handleCategoryClick.bindAsEventListener(this))}.bind(this))}el.show()}mainObject.observeEvent('onDocumentClick',this.handleDocumentClick.bindAsEventListener(this));mainObject.observeEvent('onBeforeSuggestOpen',this.close.bindAsEventListener(this))},handleDocumentClick:function(e){this.close()},handleCategoryClick:function(e){var el=Event.element(e);Event.stop(e);var categoryId=el.href.replace(/(.*)#/,'');var categoryName=el.firstChild.data;this.inputEl.setValue(categoryName);if(this.autosubmit){this.formEl.submit()}this.close()},open:function(e,callback){var dropdownDims=this.domEl.down('span.categoryselector_numbers').getDimensions();var dropdownWidth=dropdownDims.width;var fieldWidth=this.inputEl.getWidth();if(tgmMain.isMSIE6){fieldWidth=this.inputEl.getWidth()+10}var tooHigh=false;if(dropdownDims.height>this.maxHeightWithoutScrolling){this.foldoutEl.setStyle({overflowX:'hidden',height:this.maxHeightWithoutScrolling+'px',width:(fieldWidth+this.scrollbarWidth)+'px'});var dropdownDims=this.foldoutEl.getDimensions();var dropdownWidth=dropdownDims.width}this.foldoutEl.removeClassName('disabled');this.foldoutEl.hide();this.foldoutEl.addClassName('enabled');tgmMain.elementAppear(this.foldoutEl,function(){tgmMain.fireEvent('onBeforeCategorySelectorOpen');if(callback!=null){callback()}this.visible=true;tgmMain.fireEvent('onCategorySelectorOpen')}.bindAsEventListener(this))},close:function(e,callback){if(!this.visible)return;tgmMain.elementFade(this.foldoutEl,function(){tgmMain.fireEvent('onBeforeCategorySelectorClose');if(callback!=null){callback()}this.foldoutEl.hide();this.visible=false;tgmMain.fireEvent('onCategorySelectorClose')}.bindAsEventListener(this))},toggle:function(e){Event.stop(e);Event.element(e).blur();if(this.visible==true){this.close(e)}else{this.open(e)}}});var tgmTradeSelectorClass=Class.create({className:'tgmTradeSelectorClass',visible:false,domEl:null,linkEl:null,foldoutEl:null,loaded:false,contentUrl:'/ajax/foldout/trade',onHomepage:false,initialize:function(mainObject,el){mainObject.log('tgmTradeSelector initialized');this.domEl=$('tradeSelectorLink');if(this.domEl==null){if($('tradeSelectorLinkHomepage')!=null){this.domEl=$('tradeSelectorLinkHomepage');this.onHomepage=true;$('tradeSelectorLinkHomepage').observe('click',this.toggle.bindAsEventListener(this))}else{mainObject.info(this.className+'> tradeSelector link not there, setting up nothing');return}}else{$('tradeSelectorLink').observe('click',this.toggle.bindAsEventListener(this))}this.foldoutEl=$('tradeSelectorFoldout');mainObject.observeEvent('onDocumentClick',this.close.bindAsEventListener(this));mainObject.observeEvent('onBeforeSuggestOpen',this.close.bindAsEventListener(this));mainObject.observeEvent('onBeforeCitySelectorOpen',this.close.bindAsEventListener(this));mainObject.observeEvent('onBeforeDropdownSelectorOpen',this.close.bindAsEventListener(this))},load:function(callback){tgmMain.log(this.className+'] load is called');new Ajax.Request(this.contentUrl,{method:'get',parameters:{trade_id:123,name:'auto',onHomepage:this.onHomepage,city_id:0},onSuccess:function(transport){$(this.foldoutEl).update(transport.responseText);this.loaded=true;if(callback){callback()}}.bind(this)})},show:function(callback){tgmMain.elementAppear(this.foldoutEl,function(){tgmMain.fireEvent('onBeforeTradeSelectorOpen');if(typeof callback!='undefined'&&callback!=null){}this.visible=true;tgmMain.fireEvent('onTradeSelectorOpen')}.bindAsEventListener(this))},open:function(e,callback){if(this.loaded==false){this.load(this.show.bindAsEventListener(this))}else{this.show()}},close:function(e,callback){if(!this.visible)return;tgmMain.elementFade(this.foldoutEl,function(){tgmMain.fireEvent('onBeforeTradeSelectorClose');if(callback!=null){callback()}this.foldoutEl.hide();this.visible=false;tgmMain.fireEvent('onTradeSelectorClose')}.bindAsEventListener(this))},toggle:function(e){Event.element(e).blur();Event.stop(e);if(this.visible==true){this.close(e)}else{this.open(e)}}});var tgmTradeSelector;var tgmValidationClass=Class.create({className:'tgmValidationClass',error:false,requiredClass:'required',errorClass:'errormessage',form:null,initialize:function(formEl,mainObject){this.form=formEl;if(mainObject==null){mainObject=tgmMain}mainObject.log(this.className+' initialized')},check:function(){var fields=this.form.select('input, select, checkbox, textarea');this.error=false;if(fields.length>0){fields.each(function(field){if(typeof field.name!='undefined'){if(field.type!='hidden'){var errorElements=this.form.select('div.'+this.errorClass);var errorEl;errorElements.each(function(e){if(e.hasClassName(field.name)){errorEl=e}}.bind(this));if(field.hasClassName(this.requiredClass)&&errorEl==null){tgmMain.error(this.className+' > error element is missing ('+this.errorClass+' '+field.name+')')}else{if(this.validate(field)){if(errorEl!=null){errorEl.hide()}}else{this.error=true;if(errorEl!=null){this.showError(errorEl)}}}}}}.bind(this))}return this.error},showError:function(e){new Effect.HighlightFont(e,{startcolor:"#19457B",endcolor:"#D56B08",restorecolor:"#D56B08",duration:1});e.show()},validate:function(field){var tagName=field.tagName.toLowerCase();var fieldType=field.type;if(tagName=='input'){if(typeof fieldType!='undefined'){if(fieldType=='text'||fieldType=='textfield'||fieldType=='password'){if(field.hasClassName(this.requiredClass)&&field.value==''){return false}else if(!field.hasClassName(this.requiredClass)&&field.value==''){return true}if(field.hasClassName('number')){var regex=/^[0-9\-]+$/;return regex.match(field.value)}else if(field.hasClassName('letter')){var regex=/^[a-zA-Z]+$/;return regex.match(field.value)}else if(field.hasClassName('loginemail')){var regexLogin=/^([0-9a-zA-Z\.\_\-]){3,32}$/;var regexEmail=/^([a-zA-Z0-9\_\.\-])+\@(([a-zA-Z0-9\ü\ä\ö\-])+\.)+([a-zA-Z]{2,6})+$/;return(regexLogin.match(field.value)||regexEmail.match(field.value))}else if(field.hasClassName('username')){var regex=/^([0-9a-zA-Z\.\_\-]){3,32}$/;return regex.match(field.value)}else if(field.hasClassName('phone')){var regex=/^([0-9\ \/\-\+\(\)])+$/;if(field.hasClassName('landline')){if(regex.match(field.value)){var regex=/^[\(]?0[\)]?[2-9]{1}[0-9\ \-\+\/\(\)]+$/;if(regex.match(field.value)){var regex=/^[\(]?0[\)]?[800]{1}/;if(regex.match(field.value)){return false}else{var regex=/^[\(]?0[\)]?[900]{1}/;if(!regex.match(field.value)){return true}}}}}else if(field.hasClassName('mobile')){if(regex.match(field.value)){var regex=/^[\(]?0[\)]?1[5-7][0-9][\ ]?[\-\/)]?[\ ]?[1-9][0-9\ ]{6,16}$/;return regex.match(field.value)}}else{return regex.match(field.value)}}else if(field.hasClassName('zip')){var regex=/^[0-9]{5}$/;return regex.match(field.value)}else if(field.hasClassName('city')){var regex=/^[a-zA-ZßäöüÄÖÜ\,\s\-\/]+$/;return regex.match(field.value)}else if(field.hasClassName('street')){var regex=/^[a-zA-Z0-9ßäöüÄÖÜ\,\s\-\/\.]+$/;return regex.match(field.value)}else if(field.hasClassName('streetNumber')){var regex=/^[a-zA-Z0-9\-\/\ ]+$/;return regex.match(field.value)}else if(field.hasClassName('email')){var regex=/^([a-zA-Z0-9\_\.\-])+\@(([a-zA-Z0-9\ü\ä\ö\-])+\.)+([a-zA-Z]{2,6})+$/;return regex.match(field.value)}else if(field.hasClassName('url')){var regex=/^([wW]{3}\.)*(([a-zA-Z0-9\-])+\.)+([a-zA-Z]{2,6})+([\/]{1}[a-zA-Z0-9\/\-\.\?\&\%\=]*)*$/;var regex2=/^https?\:\/\/([wW]{3}\.)*(([a-zA-Z0-9\ü\ä\ö\-])+\.)+([a-zA-Z]{2,6})+([\/]{1}[a-zA-Z0-9\/\-\.\?\&\%\=]*)*$/;if(!regex.match(field.value)){return regex2.match(field.value)}return true}else if(field.hasClassName('password')){var passwordConfirm=this.form.select('input.passwordConfirm')[0];if(passwordConfirm!=null){if(passwordConfirm.value==field.value&&passwordConfirm.value.length>5){return true}else{return false}}if(field.value.length>2){return true}}else if(field.hasClassName('passwordConfirm')){var password=this.form.select('input.password')[0];console.log(password.value+"=="+field.value);if(password.value==field.value){return true}}else if(field.hasClassName('captcha')){var regex=/^[a-zA-Z]{5}$/;return regex.match(field.value)}else{return true}}else if(fieldType=='checkbox'){if(field.hasClassName(this.requiredClass)){return field.checked}else{return true}}else if(fieldType=='radio'){if(field.hasClassName(this.requiredClass)){return field.checked}else{return true}}}}else if(tagName=='select'){if(field.hasClassName(this.requiredClass)&&field.getValue()==''){return false}else{return true}}else if(tagName=='textarea'){if(field.hasClassName(this.requiredClass)&&field.getValue()==''){return false}else{return true}}else{console.warn('ValidationClass: Undefined form field detected!');return true}return false}});var tgmSuggestSwitchClass=Class.create({className:'tgmSuggestSwitchClass',switchEl:null,checkboxEl:null,active:false,cookieName:'sugsw',initialize:function(mainObject){var oldValue=tgmCookieManager.get('suggestswitch');if(oldValue!=null){tgmCookieManager.deleteStandardCookie('suggestswitch',mainObject)}var status=tgmCookieManager.unstuff(this.cookieName,null,mainObject);if(status==null){if(oldValue!=null){this.active=(oldValue==1)}else{this.active=true}var newValue=0;if(this.active){newValue=1}tgmCookieManager.stuff(this.cookieName,newValue,mainObject)}else{if(status==1){this.active=true}else{this.active=false}}},init:function(el){},initSwitchElement:function(domEl){this.switchEl=domEl;var checkbox=domEl.down('span.checkbox');if(checkbox!=null){domEl.setStyle({cursor:'pointer'});checkbox.observe('click',this.handleSuggestSwitchClick.bindAsEventListener(this));this.checkbox=checkbox}if(this.active){this.checkbox.addClassName('active')}else{this.checkbox.removeClassName('active')}this.switchEl.suggestSwitchObject=this;domEl.show()},handleSuggestSwitchClick:function(e){Event.stop(e);if(this.active==true){this.active=false;this.checkbox.removeClassName('active');tgmMain.fireEvent('onSuggestDisable',{suggest:this})}else{this.active=true;this.checkbox.addClassName('active');tgmMain.fireEvent('onSuggestEnable',{suggest:this})}tgmMain.fireEvent('onSuggestModify',{suggest:this});var cookieValue=0;if(this.active==true){cookieValue=1}tgmCookieManager.stuff(this.cookieName,cookieValue,tgmMain)}});var tgmSuggestSwitch;var tgmSuggestObserverClass=Class.create({className:'tgmSuggestObserverClass',suggestFields:[],forms:[],openSuggest:null,suggestObjects:[],isMSIE6:false,delayTimer:null,lastInsertCloseEvent:null,focusedElement:null,isMSIE:false,id:-1,active:false,initialize:function(mainObject){mainObject.log('tgmSuggestObserver initialized');this.ieMSIE6=mainObject.ieMSIE6;mainObject.observeEvent('onDocumentClick',this.handleDocumentClick.bindAsEventListener(this));this.setupObservers(mainObject);if(typeof tgmSuggestSwitch!='undefined'&&tgmSuggestSwitch.active){this.active=true}mainObject.observeEvent('onSuggestDisable',this.cleanup.bindAsEventListener(this));mainObject.observeEvent('onSuggestModify',this.updateStatus.bindAsEventListener(this));mainObject.observeEvent('onBeforeCitySelectorOpen',this.cleanup.bindAsEventListener(this));mainObject.observeEvent('showDistanceSlider',this.cleanup.bindAsEventListener(this));this.isMSIE=Prototype.Browser.IE;this.updateStatus()},getOpenSuggest:function(formEl){},updateStatus:function(e){var suggestSwitches=$$('span.suggestswitch');if(suggestSwitches.length>0){suggestSwitches.each(function(suggestSwitch){var obj=suggestSwitch.suggestSwitchObject;this.active=obj.active}.bind(this))}},setupObservers:function(utilsObject,fieldsCity,fieldsWhat){var fields=new Array();if(fieldsCity==null){fieldsCity=$$('form input.suggest_city')}if(fieldsWhat==null){fieldsWhat=$$('form input.suggest_trade')}var newFields=0;if(fieldsCity.length>0){fieldsCity.each(function(fld){if(typeof fld.suggestFieldObject=='undefined'||fld.suggestFieldObject==null){newFields++;fields.push(fld)}})}if(fieldsWhat.length>0){fieldsWhat.each(function(fld){if(typeof fld.suggestFieldObject=='undefined'||fld.suggestFieldObject==null){newFields++;fields.push(fld)}})}if(newFields>0&&fields.length>0){fields.each(function(fld){if(typeof fld.id=='undefined'||fld.id==null||fld.id==''){var tmp=parseInt(Math.random()*10000);if(this.id<1){this.id=tmp}fld.id='suggest_form_field_'+tmp}var type='branchenbuch';if(fld.hasClassName('telefonbuch')){type='telefonbuch'}var frm=fld.up('form');var autosearch=false;if(fld.hasClassName('autosearch'))autosearch=true;if(typeof frm.id=='undefined'){frm.id='suggest_form_'+parseInt(Math.random()*10000)}var obj=new tgmSuggestFieldClass(utilsObject,fld.id,frm.getAttribute('name'),frm.id,type,autosearch);fld.suggestFieldObject=obj;fld.suggest=obj;this.suggestObjects.push(obj);this.forms.push(frm.id)}.bind(this));this.forms=this.forms.uniq()}if(this.forms.length>0){this.forms.each(function(frm){frm=$(frm);if(typeof frm.suggestObserverObject=='undefined'||frm.suggestObserverObject==null){var submitButton=frm.select('button[type=submit]')[0];frm.observe('submit',this.handleSubmit.bindAsEventListener(this),true);if(submitButton!=null){submitButton.observe('mouseup',function(e){this.handleSubmit(e,true)}.bindAsEventListener(this),true)}frm.suggestObserverObject=this}}.bind(this))}var formFields=new Array();if(this.forms.length>0){this.forms.each(function(frm){var flds=$(frm).select('input','textarea','select');if(flds.length>0){flds.each(function(singleField){singleField.observe('focus',this.handleFormFocus.bindAsEventListener(this),true);singleField.observe('click',this.handleFormClick.bindAsEventListener(this),true);singleField.observe('keyup',this.handleKeyEvent.bindAsEventListener(this),true);singleField.observe('keydown',this.handleFormFocus.bindAsEventListener(this),true)}.bind(this))}}.bind(this))}},cleanup:function(stayOpenObject){if(this.suggestObjects.length>0){this.suggestObjects.each(function(sg){if(stayOpenObject!=null&&stayOpenObject.id==sg.id){}else{sg.close()}})}},getKeyType:function(keycode){var r='';switch(keycode){case Event.KEY_RETURN:r='enter';break;case Event.KEY_ESC:r='esc';break;case Event.KEY_UP:r='arrowup';break;case Event.KEY_DOWN:r='arrowdown';break;case 39:r='arrowright';break;case 37:r='arrowleft';break;case Event.KEY_TAB:r='tab';break}return r},getTag:function(el){var tag='';if(el!=null){if(typeof el.tagName!='undefined'){tag=el.tagName.toLowerCase()}}return tag},isSuggestField:function(el){return(el.hasClassName('suggest_trade')||el.hasClassName('suggest_city')||el.hasClassName('suggest_city_toplocations')||el.hasClassName('suggest_none'))},handleKeyEvent:function(e){if(this.active==false)return;var el=Event.element(e);var key=this.getKeyType(e.keyCode);if(key=='esc'||key=='tab'){if(typeof el.suggest!='undefined'){el.suggest.handleESC()}this.cleanup()}else if(this.isSuggestField(el)&&typeof el.suggest!='undefined'){if(this.getTag(el)=='input'){if(typeof el.type!='undefined'){if(el.type=='text'){if(el.suggest.isOpen){if(el.suggest.getValue()==''){this.cleanup()}if(key=='arrowup'||key=='arrowdown'||key=='arrowright'||key=='arrowleft'){el.suggest.handleKeyNavigation(key,el)}else if(key=='enter'){Event.stop(e);this.lastInsertCloseEvent=='enter';el.suggest.insertClose(e)}else{el.suggest.handleKeyEvent(el)}}else{if(key!='enter'){el.suggest.handleKeyEvent(el)}else{if(this.lastInsertCloseEvent=='enter'){}}}}}}}else{var openedSuggest=null;if(this.isMSIE){this.suggestObjects.each(function(s){if(s.isOpen){openedSuggest=s}})}if(key=='enter'){if(openedSuggest!=null){$(openedSuggest.id).focus();openedSuggest.insertClose(e)}else{this.submitCompleteForm(el.up('form'))}}}},handleSubmit:function(e,fromSubmitButton){if(this.active==false)return;var forceIESubmission=false;if(this.isMSIE){if(fromSubmitButton&&e.type=='mouseup'&&Event.isLeftClick(e)){forceIESubmission=true}}var el=Event.element(e);Event.stop(e);var openSuggests=0;var openedSuggest=null;this.suggestObjects.each(function(s){if(s.isOpen){openSuggests++;openedSuggest=s;this.openSuggest=s}}.bind(this));if(openSuggests==0){if(typeof el.suggest!='undefined'){var frm=$(el.suggest.formId);if(frm==null&&typeof el.tagName!='undefined'){if(el.tagName.toLowerCase()=='form'){frm=el}else{tgmMain.error('Whoops - no form for submission found!')}}this.submitCompleteForm(frm)}else{if(el.tagName.toLowerCase()!='form'){this.submitCompleteForm(el.up('form'))}else{this.submitCompleteForm(el)}}}else{if(this.focusedElement!=null){if(!this.isSuggestField(this.focusedElement)){if(el.up('form')!=null){this.submitCompleteForm(el.up('form'))}}else{if(this.isMSIE){this.focusedElement.suggest.insertClose(e)}else{Event.stop(e);this.openSuggest.insertClose(e)}}}else{if(this.isMSIE){if(typeof el.suggest!='undefined'){el.suggest.insertClose(e)}else{if(openedSuggest.suggestType=='city'){var el=$('suggest_city_entry_'+openedSuggest.position+'_'+openedSuggest.id);if(el!=null){openedSuggest.handleCityClick(el);return}}else{openedSuggest.id.value='*****'+openedSuggest.currentValue}openedSuggest.close();$(openedSuggest.id).focus();if(openedSuggest.autosearch){this.submitCompleteForm(openedSuggest.formId)}else{if(forceIESubmission){this.submitCompleteForm($(openedSuggest.formId))}Event.stop(e)}}}else{}}}},submitCompleteForm:function(formEl){var newURL=$(formEl).action+'?'+$(formEl).serialize();var e=tgmMain.fireEvent('onBeforeSuggestFormSubmit');if(e.stopped!==true){if($(formEl).hasClassName('ajax')){}else{top.location.href=newURL}}},handleFormClick:function(e){if(this.active==false)return;var el=Event.element(e);this.focusedElement=el;var isNoKeyInput=false;if(typeof e.keyCode!=undefined){var isNoKeyInput=true}if(this.isSuggestField(el)&&!isNoKeyInput){this.cleanup();el.suggest.open()}else{if(this.MSIE){if(typeof el.tagName!='undefined'&&el.tagName=='button'){if(el.getAttribute('type')&&el.getAttribute('type')=='submit'){Event.stop(e);this.submitCompleteForm(el.up('form'))}}}}},handleFormFocus:function(e){if(this.active==false)return;var el=Event.element(e);this.focusedElement=el},handleDocumentClick:function(e){if(this.active==false)return;if(typeof e.memo!='undefined'){var el=Event.element(e.memo)}else{var el=Event.element(e)}if(!this.isSuggestField(el)){var eventForm=el.up('form');if(eventForm==null){this.cleanup()}else{if(eventForm.down('input.suggest_city')!=null||eventForm.down('input.suggest_trade')!=null){Event.stop(e);if(this.openSuggest!=null){if(this.openSuggest.entrySelected==false){if(el.tagName.toLowerCase()=='button'&&el.getAttribute('type')=='submit'){this.submitCompleteForm(el.up('form'))}}}}}}else{this.cleanup(el.suggestObject);this.focusedElement=el}},checkRefocus:function(e){}});var tgmSuggestObserver;var tgmSuggestFieldClass=Class.create({className:'tgmSuggestFieldClass',id:null,containerId:null,listId:null,iframeId:null,spanId:null,formName:null,formId:null,type:null,autosearch:null,isOpen:false,width:0,height:0,currentValue:'',delayTimer:null,urlPath:'/ajax/suggest/',url:'',position:0,position_alt:0,fieldWidth:0,suggestType:null,cityBrackets:false,isMSIE6:false,shortVersion:false,active:true,resultCount:0,displayCount:0,originalContent:'',entrySelected:false,category:null,initialize:function(utilsObject,id,formName,formId,type,autosearch){utilsObject.log('tgmSuggestField initialized for '+id);this.id=id;this.formName=formName;this.formId=formId;this.type=type;this.autosearch=autosearch;if(utilsObject.getCookie('tgmSuggestActive')==1||this.active){this.active=1}else{this.active=0}if($(id).hasClassName('suggest_trade')){this.url=this.urlPath+'trade';this.suggestType='trade'}else if($(id).hasClassName('suggest_name')){this.url=this.urlPath+'name';this.suggestType='name'}else if($(id).hasClassName('suggest_city_toplocations')){this.url=this.urlPath+'cityToplocations';this.suggestType='city_toplocations'}else{this.url=this.urlPath+'city';this.suggestType='city';if(type=='branchenbuch'){this.cityBrackets=true}}$(id).setAttribute('autocomplete','off');this.containerId='suggest_container_'+this.id;this.listId='suggest_list_'+this.id;this.spanId='suggest_span_'+this.id;ajaxContainer=new Element('div',{id:this.containerId});ajaxContainerList=new Element('ul',{id:this.listId});$(document.body).appendChild(ajaxContainer);ajaxContainer.setStyle({'display':'none'});ajaxContainer.appendChild(ajaxContainerList);$(ajaxContainerList.id).setStyle({zIndex:9999999,display:'block'});this.isMSIE6=utilsObject.isMSIE6;dimensions=$(this.id).getDimensions();this.width=dimensions.width;this.height=dimensions.height;dimX=dimensions.width;dimY=dimensions.height;this.fieldWidth=dimensions.width;position=$(this.id).cumulativeOffset();posX=position[0]+5;posY=position[1]+dimY-1+5;if(!Prototype.Browser.IE){$(ajaxContainerList.id).setStyle({position:'absolute'})}else{posX++}ajaxContainerList.addClassName('suggestList');ajaxContainer.addClassName('suggestContainer');ajaxContainerList.observe('mouseout',this.mouseLeaveSuggest.bindAsEventListener(this));$(this.containerId).setStyle({left:posX+'px',top:posY+'px'});span=new Element('span',{id:this.spanId});$(document.body).appendChild(span);$(this.spanId).setStyle({position:'absolute',left:'-1000px'});$(this.spanId).addClassName('suggestList');$(this.id).suggestObject=this},getElement:function(){return $(this.containerId)},open:function(){this.originalContent=$F(this.id);var alreadyOpen=false;if(!this.isOpen){tgmMain.fireEvent('onBeforeSuggestOpen',this)}else{alreadyOpen=true}$(this.containerId).setStyle({width:this.width+'px',height:this.height+'px'});var res_suggest_container=false;var fieldsCityselector=$$('form span.cityselector');if(fieldsCityselector.length>0){fieldsCityselector.each(function(fld){if(fld.hasClassName('enabled')){res_suggest_container=$('suggest_container_suggest_form_field_'+tgmSuggestObserver.id)}})}$(this.containerId).show();var suggest_container=$('suggest_container_suggest_form_field_'+tgmSuggestObserver.id);var suggest_list=$('suggest_list_suggest_form_field_'+tgmSuggestObserver.id);if(document.all){var version=parseInt(navigator.appVersion.split("MSIE")[1]);if(version<7){suggest_list.style.marginLeft='-1px'}else{suggest_container.style.marginLeft='-1px'}}if(res_suggest_container){lis=res_suggest_container.select('li');if(lis.length>0){var li=$('suggest_city_entry_1_suggest_form_field_'+tgmSuggestObserver.id);if(li.getWidth()<282){if(suggest_list){suggest_list.style.width='282px'}if(suggest_container){suggest_container.style.width='294px'}}}}this.isOpen=true;tgmSuggestObserver.openSuggest=this;this.currentValue='';if(!alreadyOpen){tgmMain.fireEvent('onSuggestOpen',this)}},close:function(){this.originalContent='';if(this.isOpen){var e=tgmMain.fireEvent('onBeforeSuggestClose',this);if(e.stopped!==true){this.currentValue='';$(this.containerId).hide();this.isOpen=false;tgmMain.fireEvent('onSuggestClose',this);tgmSuggestObserver.openSuggest=null}}},getValue:function(){return $F(this.id)},update:function(input){if(this.delayTimer!=null){window.clearTimeout(this.delayTimer)}this.position=0;var thisObj=this;var shortString=0;if(this.shortVersion)shortString=1;var maxResults=10;if(this.shortVersion){if(this.suggestType=='city'){maxResults=3}else{maxResults=7}}if(this.suggestType=='city_toplocations'){this.category=$$(".category .pulldown")[0].value}new Ajax.Request(this.url,{method:'get',parameters:'input='+encodeURIComponent(input)+'&field='+thisObj.id+'&maxresults='+maxResults+'&category='+this.category,onComplete:function(req){var resultCount=req.responseJSON.resultCount;var displayCount=req.responseJSON.displayCount;var htmlContent=req.responseJSON.html;this.resultCount=resultCount;this.displayCount=displayCount;this.additionalData=req.responseJSON.additionalData;if(htmlContent){if($(thisObj.spanId)!=null){$(thisObj.spanId).update(htmlContent);var ddsDims=$(thisObj.spanId).getDimensions();var ddsWidth=ddsDims.width;var ddsHeight=ddsDims.height;if(ddsWidth<this.fieldWidth)ddsWidth=this.fieldWidth;thisObj.width=ddsWidth;thisObj.height=ddsHeight}$(thisObj.listId).update(htmlContent);$(thisObj.spanId).update("");$(thisObj.containerId).setStyle({height:(thisObj.height-5)+'px'});if(Prototype.Browser.IE){$(thisObj.containerId).setStyle({width:(thisObj.width)+'px'});$(thisObj.listId).setStyle({width:(thisObj.width-12)+'px'})}else{$(thisObj.containerId).setStyle({width:(thisObj.width-5)+'px'});$(thisObj.listId).setStyle({width:(thisObj.width-12)+'px'})}if(thisObj.iframeId){Position.clone($(thisObj.containerId),$(thisObj.iframeId));$(thisObj.iframeId).setStyle({width:thisObj.width+'px',height:thisObj.height+'px'})}if(tgmSuggestObserver.focusedElement==$(thisObj.id)||tgmToplocationsSuggestObserver.focusedElement==$(thisObj.id)){thisObj.open()}else{}}else{thisObj.close()}}.bind(this),onError:function(e){tgmMain.showError('Suggest: Fehler beim Datenabruf vom Server')},evalScripts:true})},mouseOver:function(pos){this.position=pos;var el=$('suggest_'+this.suggestType+'_entry_'+pos+'_'+this.id);this.highlightEntry(el,pos);this.entrySelected=true},mouseLeaveSuggest:function(e){},mouseLeave:function(pos){this.entrySelected=false},isCitySuggestEntry:function(el){return(this.suggestType=='city')},handleKeyEvent:function(el){if(!this.isActive())return;var value=el.getValue();if(value!=''){if(this.delayTimer!=null){window.clearTimeout(this.delayTimer)}this.delayTimer=window.setTimeout(function(){this.update(value)}.bindAsEventListener(this),80)}},highlightEntry:function(el,pos){if(el==null)return;var field=$('suggest_'+this.suggestType+'_entry_'+pos+'_'+this.id);if(field!=null){var lis=field.up('ul').select('li');if(lis.length>0){lis.each(function(l){l.removeClassName('current')})}$(field).addClassName('current');if($$('body.maps')==''&&$("mapsForm")==null&&this.suggestType=="trade"){$('pandoraForm').trade_id.value=$(field).getAttribute('rel')}}},handleKeyNavigation:function(key,el){if(key=='arrowup'||key=='arrowleft'){this.entrySelected=true;if(this.position<=1){this.position=this.displayCount}else{this.position--}}else if(key=='arrowdown'||key=='arrowright'){this.entrySelected=true;if(this.position>=-1){this.position++;if(this.position>this.displayCount){this.position=1}}}var newValue=this.getElementValue(this.position);if(this.isCitySuggestEntry()){newValue=newValue}$(this.id).setValue(newValue);this.highlightEntry(el,this.position)},getElementByPosition:function(pos){console.log("getElement: "+this.suggestType);var what='suggest_'+this.suggestType+'_entry_'+pos+'_'+this.id;return $(what)},getElementValue:function(pos){var el=this.getElementByPosition(this.position).firstChild;if(typeof el.tagName=='undefined'){return el.data}if(el.tagName.toLowerCase()=='em'){var el=el.firstChild;var value=el.data.replace(/^.*>\s*/,'');return value}},submitForm:function(e){if(e!=null)Event.stop(e);tgmSuggestObserver.submitCompleteForm(this.formId)},handleESC:function(){return;$(this.id).setValue(this.originalContent)},handleCityClick:function(el){var selectedCityId=this.additionalData[this.position-1];var selectedCity=this.getElementValue(this.position);var hiddenField=$(this.formId).down('input[name=location_id]');if(hiddenField==null){tgmMain.error('Cannot set city id: Hidden field location_id is missing in the form '+this.formId)}else{hiddenField.setValue(selectedCityId);$(this.id).setValue(selectedCity)}this.hasChanged=false;this.close();$(this.id).focus();if(this.autosearch){ajaxSuggestObserver.submitCompleteForm(this.formId)}},insertClose:function(e){Event.stop(e);if(this.suggestType=='city'){var el=$('suggest_'+this.suggestType+'_entry_'+this.position+'_'+this.id);if(el!=null){this.handleCityClick(el);return}}else{this.id.value=this.currentValue}if(this.entrySelected==false&&this.autosearch){this.close();tgmSuggestObserver.submitCompleteForm(this.formId);return}this.close();$(this.id).focus();if(this.autosearch){tgmSuggestObserver.submitCompleteForm(this.formId)}else{}},isActive:function(){if(this.active||tgmMain.getCookie('tgmSuggestActive')==1){this.active=1}else{this.active=0}return this.active}});var tgmClickTrackerClass=Class.create({className:'tgmClickTrackerClass',pageTrackingData:null,initialize:function(utilsObj){utilsObj.log('tgmClickTracker initialized');utilsObj.observeEvent('onClickEntry',this.handleListClick.bindAsEventListener(this));utilsObj.observeEvent('onSmsSent',function(e){this.handleAction('sms|sent',e.memo.entryId)}.bindAsEventListener(this));utilsObj.observeEvent('onEmailSent',function(e){this.handleAction('email|sent',e.memo.entryId)}.bindAsEventListener(this));utilsObj.observeEvent('onContactEmailSent',function(e){this.handleAction('email|contact-sent',e.memo.entryId)}.bindAsEventListener(this));this.pageTrackingData=utilsObj.getTrackingData()},handleAction:function(area,entryId){this.sendActionToServer(area,entryId)},handleListClick:function(rawEvent){e=rawEvent.memo.event;var eventSource=rawEvent.memo.source;var eventEl=Event.element(e);var elementTag=eventEl.tagName.toLowerCase();var listEl=eventEl;if(elementTag!='li'){listEl=eventEl.up('li.entry')}else if(!listEl.hasClassName('entry')){listEl=eventEl.up('li.entry')}if(listEl==null){return}var listElement=listEl.up('ul');var entryUrl='';if(elementTag=='a'){entryUrl=eventEl.href}else{var mainLink=eventEl.up('a');if(mainLink==null){mainLink=listEl.down('a.namelink')}if(mainLink!=null){entryUrl=mainLink.href}}if(typeof listEl!='undefined'&&listEl!=null){var entryType='unknown';if(listEl.hasClassName('standard')){entryType='standard'}else if(listEl.hasClassName('premium')){entryType='premium'}else{entryType='unexpected'}var entryId=listEl.id.match(/entry_(.*)/);if(entryId!=null&&entryId.length>0){entryId=entryId[1]}if(entryId==null){entryId=''}var offset=listEl.cumulativeOffset();var dims=listEl.getDimensions();var relativeX=e.pageX-offset[0];var relativeY=e.pageY-offset[1];var trackEl=eventEl;if(!eventEl.hasClassName('track')){trackEl=eventEl.up('.track')}var area='unknown';if(typeof trackEl!='undefined'&&trackEl!=null){var classes=tgmMain.getClassesWithout(trackEl,'track');area='';var i=0;classes.each(function(cls){area+=cls;if(i<classes.length-1){area+=','}i++});var trackLinkEl=eventEl;if(trackEl.hasClassName('options')){if(elementTag!='a'){trackLinkEl=trackEl.down('a')}if(trackLinkEl==null){trackLinkEl=trackEl.up('a')}if(trackLinkEl!=null){var classes='';if(trackLinkEl.hasClassName('action')){classes=tgmMain.getClassesWithout(trackLinkEl,'action')}else if(trackLinkEl.hasClassName('micro_action')){classes=tgmMain.getClassesWithout(trackLinkEl,'micro_action')}if(classes.length>0){area+='|'+classes[0]}}}}if(typeof trackLinkEl!='undefined'&&trackLinkEl.hasClassName('disabled')){return}var resultlisttype='unknown';if(listElement.hasClassName('directresults')){resultlisttype='direct'}else if(listElement.hasClassName('regionalresults')){resultlisttype='regional'}else if(listElement.hasClassName('nationwideresults')){resultlisttype='nationwide'}var activeTab='unknown';var activeTabEl=$('resultList').down('div.tabs a.current');if(activeTabEl!=null){if(activeTabEl.hasClassName('directtab')){activeTab='direct'}else if(activeTabEl.hasClassName('regionaltab')){activeTab='regional'}}else{activeTab='direct'}this.sendToServer(entryId,entryType,relativeX,relativeY,area,resultlisttype,activeTab)}},sendToServer:function(id,entryType,x,y,area,resultlisttype,tab,callback){var page='unknown';if(typeof $(document.body).id!='undefined'){page=$(document.body).id}var url='/tracking/track?page='+page+'&entry='+id+'&type='+entryType+'&x='+x+'&y='+y+'&area='+area+'&resultlist='+resultlisttype+'&tab='+tab+'&id='+this.pageTrackingData.id;new Ajax.Request(url,{method:'get',onComplete:callback});if(resultlisttype=='direct'&&(page=='telegate'||page=='klicktel')){var resultList='';if($$('span.feedbackFuzzy').length>0){resultList='Fuzzy'}else if($$('span.feedbackRadius').length>0){resultList='Radius'}if(typeof(_tag)!="undefined"){_tag.DCSext={}}if(resultList!=''){dcsMultiTrack("DCSext.resultSet",resultList)}}},sendPageAccessToServer:function(webPage,id,entry,callback){if(typeof $(document.body).id!='undefined'){page=$(document.body).id}var url='/tracking/track?page='+page+'&id='+id+'&webpage='+webPage+'&entry='+entry;new Ajax.Request(url,{method:'get',onComplete:callback})},sendActionToServer:function(area,entry,callback){if(typeof $(document.body).id!='undefined'){page=$(document.body).id}var url='/tracking/track?page='+page+'&id='+this.pageTrackingData.id+'&area='+area+'&entry='+entry;new Ajax.Request(url,{method:'get',onComplete:callback})}});var tgmClickTracker;var tgmEntryToolsClass=Class.create({className:'tgmEntryToolsClass',list:null,listEntries:null,listHeader:null,initialize:function(utilsObject){if($('detailentry')==null){var entries=$('resultList').select('a');if(entries.length>0){entries.each(function(entry){entry.observe('click',function(e){this.handleClick(e,'a')}.bindAsEventListener(this))}.bind(this));var entryUrlElements=$('resultList').select('p.customurl');if(entryUrlElements.length>0){entryUrlElements.each(function(el){el.observe('mouseover',this.entryUrlOver.bindAsEventListener(this));el.observe('mouseout',this.entryUrlOut.bindAsEventListener(this))}.bind(this))}var entryEmailElements=$('resultList').select('p.email');if(entryEmailElements.length>0){entryEmailElements.each(function(el){el.observe('mouseover',this.entryEmailOver.bindAsEventListener(this));el.observe('mouseout',this.entryEmailOut.bindAsEventListener(this))}.bind(this))}var entrylistImages=$$('#resultList div.addons>img.img');if(entrylistImages.length>0){entrylistImages.each(function(el){el.observe('mouseover',this.entryListImagesOver.bindAsEventListener(this,'listimg'))}.bind(this))}var entrylistVideoImages=$$('#resultList div.addons a.videoPreview img.img');if(entrylistVideoImages.length>0){entrylistVideoImages.each(function(el){el.observe('mouseover',this.entryListImagesOver.bindAsEventListener(this,'video'))}.bind(this))}var entrylistWWWImages=$$('#resultList div.addons a.wwwPreview img');if(entrylistWWWImages.length>0){entrylistWWWImages.each(function(el){el.observe('mouseover',this.entryListImagesOver.bindAsEventListener(this,'www'))}.bind(this))}}if($$('div.resPerPage form').length>0){var submitBt=$$('div.resPerPage form')[0].down('button[type=submit]');if(submitBt!=null){submitBt.remove()}}var print_list=$('resultList').down('.print_list');if(print_list!=null){print_list.observe('click',this.handlePrintClick.bindAsEventListener(this))}this.listEntries=new Array();this.listHeader=new Array();var resultLists=$$('ul.listing');this.list=$$('ul.listing li');if(resultLists.length>0){resultLists.each(function(list){var listEntries=list.select('li.entry');if(listEntries.length>0){listEntries.each(function(li){this.listEntries.push(li);li.setStyle({cursor:'pointer'});li.observe('click',function(e){this.handleClick(e,'li')}.bindAsEventListener(this))}.bind(this))}var listHeader=list.select('li.listhead');if(listHeader.length>0){listHeader.each(function(li){this.listHeader.push(li)}.bind(this))}}.bind(this))}}else{var entries=$('detailentry').select('a');if(entries.length>0){entries.each(function(entry){if(entry.hasClassName('micro_action')||entry.hasClassName('action')){entry.observe('click',function(e){this.handleClick(e,'a')}.bindAsEventListener(this))}}.bind(this))}}if($('mediaBanner')!=null){var subBannerGroup=$('mediaBanner').select('div.subBanner');subBannerGroup.each(function(subBanner){subBanner.observe('click',this.handleClick.bindAsEventListener(this))}.bind(this))}var admLinks=$$('a.adminDetailLink');if(admLinks.length>0){admLinks.each(function(admLink){admLink.observe('click',this.showAdmInfo.bindAsEventListener(this))}.bind(this))}},handlePrintClick:function(e){this.list.each(function(li){li.removeClassName('printoff')}.bind(this));window.print()},entryUrlOver:function(e){var el=Event.element(e);if(el.tagName.toLowerCase()=='a'){el=el.up('p')}var divEl=el.up('div');var emailEl=divEl.down('p.email');var entryurlLink=el.select('a');if(entryurlLink.length>0){el.addClassName('customurlactive')}divEl.addClassName('dataactive');emailEl.addClassName('emailinactive')},entryUrlOut:function(e){var el=Event.element(e);if(el.tagName.toLowerCase()=='a'){el=el.up('p')}var divEl=el.up('div');var emailEl=divEl.down('p.email');var entryurlLink=el.select('a');if(entryurlLink.length>0){el.removeClassName('customurlactive')}divEl.removeClassName('dataactive');emailEl.removeClassName('emailinactive')},entryEmailOver:function(e){var el=Event.element(e);if(el.tagName.toLowerCase()=='a'||el.tagName.toLowerCase()=='img'){el=el.up('p')}var divEl=el.up('div');var urlEl=divEl.down('p.customurl');var entryEmailLink=el.select('a');if(entryEmailLink.length>0){el.addClassName('emailactive')}divEl.addClassName('dataactive');urlEl.addClassName('customurlinactive')},entryEmailOut:function(e){var el=Event.element(e);if(el.tagName.toLowerCase()=='a'||el.tagName.toLowerCase()=='img'){el=el.up('p')}if(Position.within(el,Event.pointerX(e),(Event.pointerY(e)+3))&&Position.within(el.down('a'),Event.pointerX(e),(Event.pointerY(e)))){return}var divEl=el.up('div');var urlEl=divEl.down('p.customurl');var entryEmailLink=el.select('a');if(entryEmailLink.length>0){el.removeClassName('emailactive')}divEl.removeClassName('dataactive');urlEl.removeClassName('customurlinactive')},entryListImagesClick:function(e){},entryListImagesOver:function(e,imgtype){if($("greatListImg")==null){var el=Event.element(e);var elImgSrc=el.getAttribute('src');var startImgMediaId=elImgSrc.search(/id_media/)+9;var finishImgMediaId=elImgSrc.search(/&size/);var startWWWId=elImgSrc.search(/screen_url/)+11;var finishWWWId=elImgSrc.search(/&size/);var newEl=el.cloneNode(true);var divEl=document.createElement('div');divEl.id='greatListImg';Element.setStyle(divEl,{zIndex:10000,cursor:'pointer',position:'absolute',left:Position.cumulativeOffset(el)[0]+'px'});if(imgtype=='www'){Element.setStyle(divEl,{top:(Position.cumulativeOffset(el)[1]-100)+'px'})}else{Element.setStyle(divEl,{top:Position.cumulativeOffset(el)[1]+'px'})}Element.setStyle(newEl,{border:'1px solid #CBCBCB'});if(imgtype=='video'){newEl.setAttribute('src','/dynamic/media/image?id_media='+elImgSrc.substring(startImgMediaId,finishImgMediaId)+'&size=157x143&method=fix&video=2')}else if(imgtype=='listimg'){newEl.setAttribute('src','/dynamic/media/image?id_media='+elImgSrc.substring(startImgMediaId,finishImgMediaId)+'&size=157x143&method=fix')}else{newEl.setAttribute('src','/dynamic/websiteScreenshot/?screen_url='+elImgSrc.substring(startWWWId,finishWWWId)+'&size=157x143&method=fix')}divEl.appendChild(newEl);document.body.appendChild(divEl);var greatListImg=$("greatListImg");if($("greatListImg")!=null){greatListImg.observe('mouseout',this.entryListImagesOut.bindAsEventListener(this));greatListImg.observe('click',function(e){var listEl=el.up('li');if(listEl.id!='entry_preview'){if(imgtype=='video'){var nameLink=listEl.down('a.videoPreview')}else if(imgtype=='listimg'){var nameLink=listEl.down('a.namelink')}else{var nameLink=listEl.down('a.wwwPreview')}if(nameLink!=null){if(imgtype=='video'){if(typeof(_tag)!="undefined"){_tag.DCSext={}}dcsMultiTrack("DCSext.mediaEntryVideo",'list',"DCSext.mediaEntryVideoReferrer",document.location.href);var url=listEl.down('a.videoPreview').href;window.setTimeout(function(){$("greatListImg").remove();top.location.href=url},100)}else if(imgtype=='listimg'){var url=listEl.down('a.namelink').href;window.setTimeout(function(){$("greatListImg").remove();top.location.href=url},100)}else{var url=listEl.down('a.wwwPreview').href;window.setTimeout(function(){$("greatListImg").remove();window.open(url)},100)}}}})}}},entryListVideoImagesOver:function(e){if($("greatListImg")==null){var el=Event.element(e);var elImgSrc=el.getAttribute('src');var startImgMediaId=elImgSrc.search(/id_media/)+9;var finishImgMediaId=elImgSrc.search(/&fileformat/);var newEl=el.cloneNode(true);var divEl=document.createElement('div');divEl.id='greatListImg';Element.setStyle(divEl,{zIndex:10000,cursor:'pointer',position:'absolute',top:Position.cumulativeOffset(el)[1]+'px',left:Position.cumulativeOffset(el)[0]+'px'});Element.setStyle(newEl,{border:'1px solid #CBCBCB'});newEl.setAttribute('src','/dynamic/media/image?id_media='+elImgSrc.substring(startImgMediaId,finishImgMediaId)+'&fileformat=gif&method=fix');divEl.appendChild(newEl);document.body.appendChild(divEl);var greatListImg=$("greatListImg");if($("greatListImg")!=null){greatListImg.observe('mouseout',this.entryListImagesOut.bindAsEventListener(this));greatListImg.observe('click',function(e){var linkPreview=el.up('a');if(linkPreview!=null){var url=linkPreview.href;window.setTimeout(function(){$("greatListImg").remove();top.location.href=url},100)}})}}},entryListImagesOut:function(e){if($("greatListImg")!=null){$("greatListImg").remove()}},showAdmInfo:function(e){var el=Event.element(e);Event.stop(e);if(el!=null){var liEl=el.up('li');var elId=liEl.id;elId=elId.replace(/^admLink_/,'');new Ajax.Request('/ajax/info/entryInfo?id='+elId,{onSuccess:function(transport){var spm=new Element('span',{});el.appendChild(spm);spm.update(transport.responseText)}})}},getAddressbookLinks:function(){var links=new Array();if(this.listEntries!=null){if(this.listEntries.length>0){this.listEntries.each(function(li){var aLink=li.down('a.adressbook');if(aLink!=null){aLink.entryId=li.id.replace(/^entry_/,'');links.push(aLink)}})}}else{var clsN=$(document.body).classNames();var isDetailPage=false;clsN.each(function(cls){if(cls.match(/^([a-z]{2})detail/)||cls.match(/^track_detail_/)){isDetailPage=true}});if(isDetailPage==true){var aLink=$('detailentry').down('a.adressbook');if(aLink!=null){var idEl=$$('div.detail.premium');if(idEl.length>0||idEl!=""){aLink.entryId=idEl[0].id}else{var idEl=$$('div.detail.standard');if(idEl.length>0){aLink.entryId=idEl[0].id;if(aLink.entryId.match(/_/)){var splitted=aLink.entryId.split("_");aLink.entryId=splitted[1]}}}links.push(aLink)}}}return links},handleClick:function(e,eventSource){var el=Event.element(e);var data={};if(!el.hasClassName('subBanner')){if(el.up('div.subBanner')!=null){el=el.up('div.subBanner')}}if(el.hasClassName('subBanner')){var entryId=el.id.replace(/^banner_/,'');var subBannerUrl;if(entryId=='dummy_banner'){subBannerUrl='http://www.telegate-media-ag.de/Banner.1455.0.html'}else{if($$("body#telegate").length>0){subBannerUrl='/branchensuche/detail?id='+entryId}else{subBannerUrl='/branchenbuch/detail?id='+entryId}}Event.stop(e);window.open(subBannerUrl,'_self')}if(el.up('div.listFooter')!=null||el.up('div.tabs')!=null){return}if(el.up('a.videoPreview')!=null){Event.element(e).blur();return}var onClickData={event:e,source:eventSource};tgmMain.fireEvent('onClickEntry',onClickData);if(el.tagName.toLowerCase()=='a'&&(el.hasClassName('videoPreview')||el.hasClassName('vcf')||el.hasClassName('vcf_enabled')||el.hasClassName('disabled'))){Event.element(e).blur();return}if(el.up('span.voting')!=null||el.hasClassName('rating')){el.blur();return}if(tgmMain.is11880()&&el.up('span.image_actions')!=null){if(el.tagName.toLowerCase()=='img'){el=el.up('a')}if(el.hasClassName('disabled')){el.blur();Event.stop(e);return}}if(tgmMain.is11880()&&(el.up('div.customaction')!=null||el.hasClassName('customaction'))){el.blur();return}if(el.hasClassName('maps')){return}if(el.hasClassName('action')||el.hasClassName('micro_action')||el.hasClassName('faxnumber')||el.hasClassName('freecall')||el.hasClassName('contact')||el.hasClassName('preview')||el.hasClassName('response_private')||el.hasClassName('info_business')){if($('resultList')!=null){var listEl=el.up('li.entry')}else{var listEl=el.up('div.detail')}if(listEl!=null){var entryId=listEl.id.match(/entry_(.*)/);if(entryId!=null&&entryId.length>0){entryId=entryId[1]}if(entryId==null){entryId=''}}if(entryId==null&&$$('span.menu.phonebook .addrbook')){var idEl=$$('div.detail.premium');if(idEl.length>0){entryId=idEl[0].id}}data.entryId=entryId;data.element=el;if(entryId!=''){if(el.hasClassName('printentry_enabled')){Event.stop(e);tgmMain.fireEvent('onClickEntryPrint',data)}else if(el.hasClassName('sms_enabled')){tgmMain.fireEvent('onClickDialogSms',data);Event.stop(e)}else if(el.hasClassName('email_enabled')){tgmMain.fireEvent('onClickDialogEmail',data);Event.stop(e)}else if(el.hasClassName('freecall')&&el.hasClassName('dialoglink')){if(!el.hasClassName('disabled')){tgmMain.fireEvent('onClickPhoneNumber',data);Event.stop(e)}}else if(el.hasClassName('freecall')){if(!el.hasClassName('disabled')){tgmMain.fireEvent('onClickDialogFreecall',data);Event.stop(e)}}else if(el.hasClassName('faxnumber')){tgmMain.fireEvent('onClickFaxNumber',data);Event.stop(e)}else if(el.hasClassName('contact')){tgmMain.fireEvent('onClickEmail',data);Event.stop(e)}else if(el.hasClassName('response_private')){tgmMain.fireEvent('onClickDialogResponsePrivate',data);Event.stop(e)}else if(el.hasClassName('info_business')){tgmMain.fireEvent('onClickDialogInfoBusiness',data);Event.stop(e)}else if(el.hasClassName('maps')){tgmMain.fireEvent('onClickMapRoute',data);Event.stop(e)}else if(el.hasClassName('adressbook')&&!el.hasClassName('disabled')){tgmMain.fireEvent('onClickAddressbookAdd',data);Event.stop(e)}else if(el.hasClassName('vcf_enabled')){tgmMain.fireEvent('onClickVcfDownload',data)}else if(el.hasClassName('info')){tgmMain.fireEvent('onClickInfo',data);Event.stop(e)}else if(el.hasClassName('preview')){tgmMain.fireEvent('onClickPreview',data);Event.stop(e)}else if(el.hasClassName('domain')){}}}else{var listEl=el;if(listEl!=null){if(el.up('li.entry')!=null){listEl=el.up('li.entry')}onClickData.listEl=listEl;onClickData.srcEl=el;if(el.hasClassName('action')&&el.hasClassName('remoteurl')){return}tgmMain.fireEvent('onClickEntryArea',onClickData)}}}});var tgmEntryTools;var tgmEntryEventActionsClass=Class.create({className:'tgmEntryEventActionsClass',initialize:function(mainObject){mainObject.log('tgmEventActions initialized');mainObject.observeEvent('onClickEntryPrint',this.printMenu.bindAsEventListener(this));mainObject.observeEvent('onClickDialogSms',this.dialogSms.bindAsEventListener(this));mainObject.observeEvent('onClickDialogFax',this.dialogFax.bindAsEventListener(this));mainObject.observeEvent('onClickDialogEmail',this.dialogEmail.bindAsEventListener(this));mainObject.observeEvent('onClickDialogContactEmail',this.dialogContactEmail.bindAsEventListener(this));mainObject.observeEvent('onClickDialogForgetPassword',this.dialogForgetPassword.bindAsEventListener(this));mainObject.observeEvent('onClickDialogResponsePrivate',this.dialogResponsePrivate.bindAsEventListener(this));mainObject.observeEvent('onClickDialogEditBusiness',this.dialogEditBusiness.bindAsEventListener(this));mainObject.observeEvent('onClickDialogResponseBusiness',this.dialogResponseBusiness.bindAsEventListener(this));mainObject.observeEvent('onClickDialogInfoBusiness',this.dialogInfoBusiness.bindAsEventListener(this));mainObject.observeEvent('onClickDialogFreecall',this.dialogFreecall.bindAsEventListener(this));mainObject.observeEvent('onClickMapRoute',this.mapRoute.bindAsEventListener(this));mainObject.observeEvent('onClickAddressbookAdd',this.addressbookAction.bindAsEventListener(this));mainObject.observeEvent('onClickAddressbookRemove',this.addressbookRemove.bindAsEventListener(this));mainObject.observeEvent('onClickVcfDownload',this.vcfDownload.bindAsEventListener(this));mainObject.observeEvent('onClickEntryArea',this.goEntry.bindAsEventListener(this));mainObject.observeEvent('onAddressbookLoad',this.updateAddressbookList.bindAsEventListener(this));mainObject.observeEvent('onClickInfo',this.infoWindow.bindAsEventListener(this));mainObject.observeEvent('onClickPreview',this.entryPreview.bindAsEventListener(this));mainObject.observeEvent('onAddressbookAdd',this.updateEntryAddressbookStatus.bindAsEventListener(this));mainObject.observeEvent('onAddressbookRemove',this.updateEntryAddressbookStatus.bindAsEventListener(this));mainObject.observeEvent('onClickFaxNumber',this.openDetailViewAndFaxDialog.bindAsEventListener(this));mainObject.observeEvent('onClickPhoneNumber',this.openDetailViewAndFreecallDialog.bindAsEventListener(this));mainObject.observeEvent('onClickEmail',this.openDetailViewAndContactMailDialog.bindAsEventListener(this));mainObject.observeEvent('onClickDialogFeedback',this.dialogFeedback.bindAsEventListener(this))},printMenu:function(e){if(!Event.element(e).hasClassName('printview')&&!$('resultList'))return;Event.stop(e);tgmEntryTools.list.each(function(li){if(li.id!='entry_'+entryId){li.removeClassName('printoff')}}.bind(this));if($('resultList')!=null){var entryId=e.memo.entryId;var liElements=tgmEntryTools.list;this.printEntry(entryId,liElements)}else{window.print()}},printEntry:function(entryId,liElements){var liCurrent=null;var liCurrentHeader=null;var listHeader=new Array();liElements.each(function(li){if(li.hasClassName('listhead')){listHeader.push(li)}else if(li.id!='entry_'+entryId){li.addClassName('printoff')}else{liCurrentHeader=listHeader.last();liCurrent=li}}.bind(this));listHeader.each(function(header){if(header!=liCurrentHeader){header.addClassName('printoff')}}.bind(this));tgRoa.sendToServer(entryId,'print');window.print()},infoWindow:function(e){Event.stop(e);tgmMain.openWin('http://www.11880.com/CMS/Hilfe/index_DEU_HTML.htm',700,500)},entryPreview:function(e){Event.stop(e);if(tgmEntryPreview==null){tgmEntryPreview=new tgmEntryPreviewClass()}tgmEntryPreview.showInfo1(e.memo.entryId,e.memo.element)},dialogSms:function(e){if(tgmSmsDialog==null){tgmSmsDialog=new tgmSmsDialogClass()}tgmSmsDialog.entryId=e.memo.entryId;tgmSmsDialog.show()},dialogFax:function(e){if(tgmFaxDialog==null){tgmFaxDialog=new tgmFaxDialogClass()}tgmFaxDialog.entryId=e.memo.entryId;tgmFaxDialog.show()},dialogEmail:function(e){if(tgmEmailDialog==null){tgmEmailDialog=new tgmEmailDialogClass()}tgmEmailDialog.entryId=e.memo.entryId;tgmEmailDialog.show()},dialogContactEmail:function(e){if(tgmContactEmailDialog==null){tgmContactEmailDialog=new tgmContactEmailDialogClass()}tgmContactEmailDialog.entryId=e.memo.entryId;tgmContactEmailDialog.show()},dialogForgetPassword:function(e){if(tgmForgetPasswordDialog==null){tgmForgetPasswordDialog=new tgmForgetPasswordDialogClass()}tgmForgetPasswordDialog.show()},dialogResponsePrivate:function(e){if(tgmResponsePrivateDialog==null){tgmResponsePrivateDialog=new tgmResponsePrivateDialogClass()}tgmResponsePrivateDialog.entryId=e.memo.entryId;tgmResponsePrivateDialog.show()},dialogEditBusiness:function(e){if(tgmEditBusinessDialog==null){tgmEditBusinessDialog=new tgmEditBusinessDialogClass()}tgmEditBusinessDialog.entryId=e.memo.entryId;tgmEditBusinessDialog.show()},dialogResponseBusiness:function(e){if(tgmResponseBusinessDialog==null){tgmResponseBusinessDialog=new tgmResponseBusinessDialogClass()}tgmResponseBusinessDialog.entryId=e.memo.entryId;tgmResponseBusinessDialog.show()},dialogInfoBusiness:function(e){dcsMultiTrack("DCSext.actionEditBusiness","infoBusinessDialog");if(tgmInfoBusinessDialog==null){tgmInfoBusinessDialog=new tgmInfoBusinessDialogClass()}tgmInfoBusinessDialog.entryId=e.memo.entryId;tgmInfoBusinessDialog.step=e.memo.step;tgmInfoBusinessDialog.show()},dialogFeedback:function(e){if(tgmFeedbackDialog==null){tgmFeedbackDialog=new tgmFeedbackDialogClass()}tgmFeedbackDialog.show();if(typeof(_tag)!="undefined"){_tag.DCSext={}}dcsMultiTrack("DCSext.feedback",'view')},dialogFreecall:function(e){var kostenlostelefonieren=window.open('http://'+pandoraData.apiDuoDomain+'/kostenlosanrufen/initiateCall.php?id='+e.memo.entryId+'&website='+pandoraData.website,'kostenlostelefonieren','status=no,scrollbars=yes,resizable=no,width=530,height=520');if(kostenlostelefonieren){kostenlostelefonieren.focus()}else{alert('Das Fenster zum kostenlosen telefonieren kann nicht geöffnet werden.\nBitte deaktivieren Sie vorübergehend den PopUp-Blocker für diese Seite!');return}var urlNow=top.location.href;if(urlNow.indexOf(e.memo.entryId)==-1&&e.memo.element!=null){var el=e.memo.element;var entryLink=el.up('li').down('a.namelink');var lnk=entryLink.href;top.location.href=lnk}},openDetailViewAndFreecallDialog:function(e){var el=e.memo.element;var entryLink=el.up('li').down('a.namelink');var lnk=entryLink.href;top.location.href=lnk},openDetailViewAndFaxDialog:function(e){var el=e.memo.element;var entryLink=el.up('li').down('a.namelink');var lnk=entryLink.href;if(lnk.match(/\?/)){lnk=lnk+'&_JSA=detailFax'}else{lnk=lnk+'?_JSA=detailFax'}top.location.href=lnk},openDetailViewAndContactMailDialog:function(e){var el=e.memo.element;var entryLink=el.up('li').down('a.namelink');var lnk=entryLink.href;if(lnk.match(/\?/)){lnk=lnk+'&_JSA=detailWebEmail'}else{lnk=lnk+'?_JSA=detailWebEmail'}top.location.href=lnk},mapRoute:function(e){},updateEntryAddressbookStatus:function(e){tgmMain.info('updateEntryAddressbookStatus');if($('entry_'+e.memo.entryId)!=null){var domEl=$('entry_'+e.memo.entryId)}if(typeof domEl!="undefined"){if(domEl!=null){var addrbookLink=domEl.down('p.options a.adressbook');if(addrbookLink!=null){addrbookLink.blur();if(addrbookLink.hasClassName('remove')){addrbookLink.removeClassName('remove')}else{addrbookLink.addClassName('remove')}}tgmAddressbook.load(tgmMain,function(){tgmMain.info('Loaded addressbook')})}}else{if($$('span.menu.phonebook .addrbook')!=null){var addrbookLink=$$('span.menu.phonebook .addrbook')[0];if(addrbookLink!=null){addrbookLink.blur();if(addrbookLink.hasClassName('remove')){addrbookLink.removeClassName('remove')}else{addrbookLink.addClassName('remove')}}tgmAddressbook.load(tgmMain,function(){tgmMain.info('Loaded addressbook')})}}},addressbookAction:function(e){if(e.memo.element.hasClassName('remove')){this.addressbookRemove(e)}else{this.addressbookAdd(e)}},addressbookAdd:function(e){if(typeof tgmAddressbook!='undefined'&&tgmAddressbook!=null){tgmAddressbook.add(e.memo.entryId)}},addressbookRemove:function(e){if(typeof tgmAddressbook!='undefined'&&tgmAddressbook!=null){tgmAddressbook.remove(e.memo.entryId)}},vcfDownload:function(e){},goEntry:function(e,options){var listEl=e.memo.listEl;var nameLink=listEl.down('a.namelink');if(nameLink!=null){var url=listEl.down('a.namelink').href;window.setTimeout(function(){top.location.href=url},100)}},updateAddressbookList:function(){if(typeof tgmEntryTools!='undefined'&&tgmEntryTools!=null&&typeof tgmAddressbook!='undefined'&&tgmAddressbook!=null){if(tgmAddressbook.entries.length>0){var links=tgmEntryTools.getAddressbookLinks();if(links.length>0){links.each(function(lnk){if(tgmAddressbook.entries.indexOf(lnk.entryId)!=-1){if(tgmMain.is11880()){var linkImg=lnk.down('img');var imgSrc=linkImg.src;if(imgSrc.match(/_active/)){linkImg.src=imgSrc.replace(/_active/,'_inactive');lnk.addClassName('disabled')}else{}}else{if(!lnk.hasClassName('disabled')){lnk.addClassName('disabled')}}}else{if(tgmMain.siteType=="telegate"){var linkImg=lnk.down('img');var imgSrc=linkImg.src;linkImg.src=imgSrc.replace(/_inactive/,'_active');lnk.removeClassName('disabled')}else{lnk.removeClassName('disabled')}}}.bind(this))}}}}});var tgmEventActions;var tgmEntryPreviewClass=Class.create({className:'tgmEntryPreviewClass',url1:'/ajax/preview',url2:'/ajax/preview/booking',currentEntryId:null,moveToTopPosition:true,info1El:null,info2El:null,info1ElLoaded:false,info2ElLoaded:false,isMSIE:false,isMSIE6:false,initialize:function(){if(tgmMain){tgmMain.log(this.className+' initialized')}else{console.log(this.className+' initialized')}if(navigator.userAgent.indexOf("Opera")==-1){if(navigator.appVersion.indexOf("MSIE")!=-1){var temp=navigator.appVersion.split("MSIE");var version=parseFloat(temp[1]);this.isMSIE=true;this.isMSIE6=(version<7)}}this.info1El=new Element('div',{id:'tgmEntryPreview1_container'});$(document.body).appendChild(this.info1El);this.info1El.setStyle({display:'none',position:'absolute',zIndex:150});this.info2El=new Element('div',{id:'tgmEntryPreview2_container'});$(document.body).appendChild(this.info2El);this.info2El.setStyle({display:'none',position:'absolute',zIndex:150});if(tgmMain){tgmMain.observeEvent('onDocumentClick',function(e){this.hideInfo1();this.hideInfo2()}.bindAsEventListener(this))}},attach:function(domEl,what){var elPos=domEl.cumulativeOffset();var elDims=domEl.getDimensions();var x=elPos[0];var y=elPos[1]+elDims.height;var yWidth=6;if(this.isMSIE6){yWidth=9}else if(this.isMSIE){yWidth=9}else{yWidth=7}x=47;y=y+yWidth;what.setStyle({top:y+'px',left:x+'px'})},showInfo1:function(entryId,linkEl){this.currentEntryId=entryId;var entryEl=$('entry_'+entryId);this.attach(linkEl,this.info1El);if(this.info1ElLoaded==false){this.loadInfo1(entryId,function(){this.info1ElLoaded=true;tgmMain.elementAppear(this.info1El)}.bindAsEventListener(this))}else{tgmMain.elementAppear(this.info1El)}},showInfo2:function(entryId,linkEl){this.currentEntryId=entryId;var entryEl=$('entry_'+entryId);this.attach(linkEl,this.info2El);if(this.info2ElLoaded==false){this.loadInfo2(entryId,function(){this.info2ElLoaded=true;tgmMain.elementAppear(this.info2El)}.bindAsEventListener(this))}else{tgmMain.elementAppear(this.info2El)}},hideInfo1:function(e,callback){if(e!=null){Event.stop(e)}tgmMain.elementFade(this.info1El,callback)},hideInfo2:function(e,callback){if(e!=null){Event.stop(e)}tgmMain.elementFade(this.info2El,callback)},loadInfo1:function(entryId,callback){new Ajax.Request(this.url1,{method:'get',parameters:{id:entryId},onComplete:function(response){var html=response.responseText;this.info1El.update(html);this.info1El.down('.closeBt').observe('click',this.hideInfo1.bindAsEventListener(this));this.info1El.down('.previewBt').observe('click',this.preview.bindAsEventListener(this));if(callback!=null){callback()}}.bind(this)})},loadInfo2:function(entryId,callback){new Ajax.Request(this.url2,{method:'get',onComplete:function(response){var html=response.responseText;this.info2El.update(html);this.info2El.down('.disagree').observe('click',this.disagree.bindAsEventListener(this));this.info2El.down('.info').observe('click',this.info.bindAsEventListener(this));this.info2El.down('.agree').observe('click',this.agree.bindAsEventListener(this));if(callback!=null){callback()}}.bind(this)})},disagree:function(e){this.hideInfo1();this.hideInfo2();if(e!=null){Event.stop(e)}var previewEl=$('entry_preview');previewEl.hide();var premiumCount=$('resultList').select('li.premium').size();if(premiumCount==1){$('resultList').down('li.premiumheader').hide()}else{var nextSiblings=previewEl.nextSiblings();if(nextSiblings!=null){var nextLiEl=nextSiblings[0];if(nextLiEl.hasClassName('standardheader')||nextLiEl.hasClassName('standard')){$('resultList').down('li.premiumheader').hide()}}}window.location.href="/"},info:function(e){Event.stop(e);window.open('http://www.telegate-media-ag.de/MEDIA-Eintrag.1441.0.html','_blank')},agree:function(e){Event.stop(e);window.open('/homepage/booking?usession=1','_blank')},preview:function(e){this.hideInfo1();this.hideInfo2();if(e!=null){Event.stop(e)}var entryId=this.currentEntryId;var entryEl=$('entry_'+entryId);var dummyLiId='entry_'+entryId+'_preview';if($(dummyLiId)==null){var dummyLi=new Element('li',{id:dummyLiId});entryEl.insert({before:dummyLi});dummyLi.setStyle({display:'none'});dummyLi.update('<h5>Bitte warten...</h5>')}if(this.moveToTopPosition){entryEl.up('ul').insert({top:dummyLi});dummyLi.scrollTo()}dummyLi.show();new Ajax.Request(this.url1+'/preview',{method:'get',parameters:{id:entryId,type:'preview'},onComplete:function(response){var html=response.responseText;new Effect.BlindUp(entryEl,{duration:0.5,afterFinish:function(){entryEl.remove();new Effect.BlindUp(dummyLi,{duration:0.5,afterFinish:function(){var oldEl=dummyLi.replace(html);var useId=dummyLi.id;var useEl=dummyLi;if(useId.match(/_preview$/)){useId=useId.replace(/_preview$/,'');useEl=$(useId)}useEl.down('div.previewlinks').show();tgmMain.fireEvent('onNewEntry',{id:useId,element:useEl})}.bindAsEventListener(this)})}.bindAsEventListener(this)})}.bind(this)})}});var tgmEntryPreview;var tgmClickCheckClass=Class.create({className:'tgm ,      ,             Class',initialize:function(mainObject){mainObject.log('tgmClickCheckClass initialized');this.setupObservers();mainObject.observeEvent('onNewForm',this.setupObservers.bindAsEventListener(this))},setupObservers:function(){var autoCheckFields=$$('form input.clickcheck');if(autoCheckFields.length>0){autoCheckFields.each(function(fld){if(fld.clickCheckObject==null){fld.observe('focus',this.clickCheck.bindAsEventListener(this));fld.observe('blur',this.clickCheck.bindAsEventListener(this));fld.clickCheckObject=this}var rel=fld.getAttribute('alt');var val=$F(fld).strip();if(rel==val||val==''){fld.value=rel;$(fld).addClassName('default')}}.bind(this))}},clickCheck:function(e){var el=Event.element(e);var eventType=e.type.toLowerCase();if(el.hasClassName('clickcheck')){$(el).removeClassName('default');var rel=el.getAttribute('alt');var val=$F(el).strip();locationInCookie=unescape(document.cookie.replace(/\+/g," ")).indexOf(el.getAttribute('alt'));profilLocation='';if(el.getAttribute('name')=='zipCity'&&!locationInCookie){if(eventType=='blur'){if(rel==val||val==''){el.value=rel;var url='/ajax/searchbox/';new Ajax.Request(url,{method:'get',evalScripts:true,onComplete:function(res){if(res.responseText!=''){locationInProfil=unescape(res.responseText.replace(/\+/g," ")).indexOf(el.getAttribute('alt'));if(locationInProfil>-1){el.value='';el.setAttribute('alt','')}}}.bind(this)})}}}if(eventType=='blur'){if(rel==val||val==''){el.value=rel;if(locationInCookie>-1){el.value='';el.setAttribute('alt','')}if(!$(el).hasClassName('default')){$(el).addClassName('default')}}}else{if(rel==val){el.value=''}}}}});var tgmClickCheck;var tgmAddressbookClass=Class.create({className:'tgmAddressbookClass',url:'/ajax/addressbook',entries:null,initialize:function(mainObject){mainObject.log('tgmAddressbook initialized')},load:function(utilsObject,callback){utilsObject.log('addressbook:load');if(utilsObject==null){utilsObject=tgmUtils}new Ajax.Request(this.url+'/load',{method:'get',evalJSON:true,onComplete:function(response){if(response.responseJSON!=null){if(response.responseJSON.success==1){this.entries=response.responseJSON.message;utilsObject.fireEvent('onAddressbookLoad')}else{utilsObject.showError('Die Adressbuchdaten konnten nicht geladen werden');if(callback!=null)callback(false)}}else{utilsObject.showError('Der Server hat fehlerhafte Daten geliefert.');if(callback!=null)callback(false)}}.bind(this)})},add:function(entryId){tgmMain.log('addressbook:add('+entryId+')');var data={entryId:entryId};new Ajax.Request(this.url+'/add',{method:'get',parameters:data,evalJSON:true,onComplete:function(response){if(response.responseJSON!=null){if(response.responseJSON.success==1){tgmMain.fireEvent('onAddressbookAdd',data)}else{tgmMain.showError('Der Eintrag konnte nicht zum Adressbuch hinzugefügt werden.');if(callback!=null)callback(false)}}else{tgmMain.showError('Der Server hat fehlerhafte Daten geliefert.');if(callback!=null)callback(false)}}.bind(this)})},remove:function(entryId){console.log('addressbook:remove('+entryId+')');var data={entryId:entryId};new Ajax.Request(this.url+'/remove',{method:'get',parameters:data,evalJSON:true,onComplete:function(response){if(response.responseJSON!=null){if(response.responseJSON.success==1){tgmMain.fireEvent('onAddressbookRemove',data)}else{tgmMain.showError('Der Eintrag konnte nicht zum Adressbuch hinzugefügt werden.');if(callback!=null)callback(false)}}else{tgmMain.showError('Der Server hat fehlerhafte Daten geliefert.');if(callback!=null)callback(false)}}.bind(this)})}});var tgmAddressbook;var Utf8={encode:function(string){string=string.replace(/\r\n/g,"\n");var utftext="";for(var n=0;n<string.length;n++){var c=string.charCodeAt(n);if(c<128){utftext+=String.fromCharCode(c)}else if((c>127)&&(c<2048)){utftext+=String.fromCharCode((c>>6)|192);utftext+=String.fromCharCode((c&63)|128)}else{utftext+=String.fromCharCode((c>>12)|224);utftext+=String.fromCharCode(((c>>6)&63)|128);utftext+=String.fromCharCode((c&63)|128)}}return utftext},decode:function(utftext){var string="";var i=0;var c=c1=c2=0;while(i<utftext.length){c=utftext.charCodeAt(i);if(c<128){string+=String.fromCharCode(c);i++}else if((c>191)&&(c<224)){c2=utftext.charCodeAt(i+1);string+=String.fromCharCode(((c&31)<<6)|(c2&63));i+=2}else{c2=utftext.charCodeAt(i+1);c3=utftext.charCodeAt(i+2);string+=String.fromCharCode(((c&15)<<12)|((c2&63)<<6)|(c3&63));i+=3}}return string}};var tgRoaClass=Class.create({className:'tgRoaClass',initialize:function(utilsObj){utilsObj.log(this.className+' initialized');utilsObj.observeEvent('onMapEntryRouteSet',function(e){this.sendToServer(e.memo,'MapEntryRouteSet')}.bindAsEventListener(this))},sendToServer:function(gid,action){var url='/tracking/track/roa?gid='+gid+'&action='+action;new Ajax.Request(url,{method:'get'})}});var tgRoa;var tgAdsClass=Class.create({className:'tgAdsClass',adEl:null,cookieName:'ads_p',initialize:function(mainObject){mainObject.log(this.className+' initialized');if(typeof adtype!='undefined'&&adtype=='wallpaper'){mainObject.log('var adtype found -- Stroer-Interactive wallpaper-mode');$(document.body).addClassName('hockeystick');if(typeof bgcolor!='undefined'){mainObject.log('var bgcolor found -- Stroer-Interactive setting body to '+bgcolor+'');$(document.body).setStyle({backgroundColor:bgcolor,backgroundImage:"none"})}}if(($('superBanner')!=null)&&($('skyScraper')!=null)){var omHBannerDims;var omVBannerDims;var omBannerType;var spBanner=$('superBanner');var skyBanner=$('skyScraper');if(spBanner!=null){omHBannerDims=Element.getDimensions(spBanner);omVBannerDims=Element.getDimensions(skyBanner);mainObject.log('superBanner:'+omHBannerDims['width']+'px x '+omHBannerDims['height']+'px');mainObject.log('skyScraper:'+omVBannerDims['width']+'px x '+omVBannerDims['height']+'px')}if(omHBannerDims['width']>='468'&&omHBannerDims['width']<'728'&&omHBannerDims['height']>='60'&&omHBannerDims['height']<'90'){omBannerType='standard'}else if(omHBannerDims['width']>='728'&&omHBannerDims['height']>='90'&&omVBannerDims['width']>='120'&&omVBannerDims['width']<'160'){omBannerType='leaderboardat120'}else if(omHBannerDims['width']>='728'&&omHBannerDims['height']>='90'&&omVBannerDims['width']>='160'&&omVBannerDims['width']<'200'){omBannerType='leaderboardat160'}else if(omHBannerDims['width']>='728'&&omHBannerDims['height']>='90'&&omVBannerDims['width']>='200'){omBannerType='leaderboardat200'}else if(omVBannerDims['width']<='1'){omBannerType='leaderboardat120'}if(typeof omBannerType!='undefined'){$('superBanner').addClassName(omBannerType)}}else if($('superBanner')!=null){var omHBannerDims;var omBannerType;var spBanner=$('superBanner');if(spBanner!=null){omHBannerDims=Element.getDimensions(spBanner)}if(omHBannerDims['width']>='468'&&omHBannerDims['width']<'728'&&omHBannerDims['height']>='60'&&omHBannerDims['height']<'90'){omBannerType='standard'}else if(omHBannerDims['width']>='728'&&omHBannerDims['height']>='90'){omBannerType='leaderboardat120'}if(typeof omBannerType!='undefined'){$('superBanner').addClassName(omBannerType)}}if($('wdLeaderboard')!=null){var omHBannerDims;var omBannerType;var wdBanner=$('wdLeaderboard');omHBannerDims=Element.getDimensions(wdBanner);if(omHBannerDims['height']>='60'&&omHBannerDims['height']<'90'){omBannerType='wdsmall'}else{omBannerType='wdstandard'}if(typeof omBannerType!='undefined'){$('wdLeaderboard').addClassName(omBannerType)}}if($('dynamicAd')!=null){this.adEl=$('dynamicAd');var maxAdNo=1;var clsNames=$w(this.adEl.className);if(clsNames.length>0){clsNames.each(function(cls){var matches=cls.match(/^maxAdNo_([0-9]+)/);if(matches!=null){maxAdNo=matches[1];var adNo=tgmCookieManager.unstuff(this.cookieName,null,mainObject);if(adNo==null||adNo=="undefined"){tgmCookieManager.stuff(this.cookieName,1,mainObject);adNo=1}else{adNo++;if(adNo>maxAdNo){adNo=1}tgmCookieManager.stuff(this.cookieName,adNo,mainObject)}new Ajax.Updater('dynamicAd','/dynamic/dynamicAd/show?adno='+adNo,{onComplete:function(){$('dynamicAd').show()}})}}.bind(this))}else{mainObject.warn(this.className+': dynamicAd is missing a class maxAdNo_...')}}},init:function(el){},initSwitchElement:function(domEl){this.switchEl=domEl;var checkbox=domEl.down('span.checkbox');if(checkbox!=null){domEl.setStyle({cursor:'pointer'});checkbox.observe('click',this.handleSuggestSwitchClick.bindAsEventListener(this));this.checkbox=checkbox}if(this.active){this.checkbox.addClassName('active')}else{this.checkbox.removeClassName('active')}this.switchEl.suggestSwitchObject=this;domEl.show()},handleSuggestSwitchClick:function(e){Event.stop(e);if(this.active==true){this.active=false;this.checkbox.removeClassName('active');tgmMain.fireEvent('onSuggestDisable',{suggest:this})}else{this.active=true;this.checkbox.addClassName('active');tgmMain.fireEvent('onSuggestEnable',{suggest:this})}tgmMain.fireEvent('onSuggestModify',{suggest:this});var cookieValue=0;if(this.active==true){cookieValue=1}tgmCookieManager.stuff(this.cookieName,cookieValue,tgmMain)}});var tgAds;var tgTradeListClass=Class.create({initialize:function(){var uls=$$('ul.cat2list');if(uls.length>0){uls.each(function(u){var dots=u.select('li a.tripledots');if(dots.length>0){dots.each(function(dot){dot.observe('click',function(e){var eventEl=Event.element(e);Event.stop(e);var hiddenEl=eventEl.up('li').down('.hiddencat');if(hiddenEl!=null){hiddenEl.toggle()}})})}})}}});var tgTradeList;var tgAddressbookNotifierClass=Class.create({notificationLayer:null,isMaps:false,initialize:function(mainObject){mainObject.log('tgAddressbookNotifierClass initialized...');this.notificationLayer=new Element('div',{id:'addressbookNotificationLayer'});$(document.body).appendChild(this.notificationLayer);mainObject.observeEvent('onAddressbookAdd',this.show.bindAsEventListener(this));if($(document.body).hasClassName('maps')){this.isMaps=true;this.notificationLayer.setStyle({'display':'none','position':'absolute','width':'80px','border':'1px solid #eee','backgroundColor':'#63879C','padding':'6px 1px','zIndex':999999,'color':'white','textAlign':'center'});if(pandoraData.website=='11880'){this.notificationLayer.update('<strong>Eintrag im Adressbuch gespeichert</strong>')}else{this.notificationLayer.update('<strong>Eintrag als Favorit gespeichert</strong>')}}else{this.notificationLayer.setStyle({'display':'none','position':'absolute','width':'80px','border':'1px solid #eee','backgroundColor':'#63879C','padding':'6px 1px','zIndex':999999,'color':'white','textAlign':'center'});if(pandoraData.website=='11880'){this.notificationLayer.update('<strong>Eintrag im Adressbuch gespeichert</strong>')}else{this.notificationLayer.update('<strong>Eintrag als Favorit gespeichert</strong>')}}},show:function(e){var gid=e.memo.entryId;var infoWinEl=e.memo.el;if(this.isMaps){if(infoWinEl!=null){var saveEl=infoWinEl}else{var saveEl=$('list_'+gid).down('a.saved')}}else{if($('entry_'+gid)!=null){var saveEl=$('entry_'+gid).down('p.options').down('a.adressbook')}else{var saveEl=null}}if(saveEl!=null){var pos=saveEl.cumulativeOffset();var widthD=250;var leftPos=(pos[0]-70)+'px';var topPos=(pos[1]-30)+'px';if(saveEl.up('.detailcontent')!=null){leftPos=(pos[0]-110)+'px'}else if(infoWinEl!=null&&infoWinEl.up('.tgInfoWindowContent')!=null){tgmMain.log('MAPS MAPAREA INFOWINDOW')}else if(saveEl.up('#sidebar_resultlist')!=null){tgmMain.log('MAPS RESULTLIST');var scrollList=saveEl.up('#sidebar_resultlist');var scrollListPos=scrollList.cumulativeScrollOffset();topPos=(pos[1]-scrollListPos[1]-30)+'px'}this.notificationLayer.setStyle({'left':leftPos,'top':topPos,'width':widthD+'px'});new Effect.Appear(this.notificationLayer);window.setTimeout(function(){new Effect.Fade(this.notificationLayer)}.bind(this),3000)}},getVerticalScrollOffset:function(){if(typeof window.pageYOffset=='undefined'){var iebody=(document.compatMode&&document.compatMode!="BackCompat")?document.documentElement:document.body;var yOffset=iebody.scrollTop}else{var yOffset=window.pageYOffset}return yOffset}});var tgAddressbookNotifier;Effect.HighlightFont=Class.create(Effect.Base,{initialize:function(element){this.element=$(element);if(!this.element)throw(Effect._elementDoesNotExistError);var options=Object.extend({startcolor:'#ffff99'},arguments[1]||{});this.start(options)},setup:function(){if(this.element.getStyle('display')=='none'){this.cancel();return}this.oldStyle={};if(!this.options.keepBackgroundImage){this.oldStyle.backgroundImage=this.element.getStyle('background-image');this.element.setStyle({backgroundImage:'none'})}if(!this.options.endcolor)this.options.endcolor=this.element.getStyle('color').parseColor('#ffffff');if(!this.options.restorecolor)this.options.restorecolor=this.element.getStyle('color');this._base=$R(0,2).map(function(i){return parseInt(this.options.startcolor.slice(i*2+1,i*2+3),16)}.bind(this));this._delta=$R(0,2).map(function(i){return parseInt(this.options.endcolor.slice(i*2+1,i*2+3),16)-this._base[i]}.bind(this))},update:function(position){this.element.setStyle({color:$R(0,2).inject('#',function(m,v,i){return m+((this._base[i]+(this._delta[i]*position)).round().toColorPart())}.bind(this))})},finish:function(){this.element.setStyle(Object.extend(this.oldStyle,{color:this.options.restorecolor}))}});var facebookLikeButtonClass=Class.create({initialize:function(appId,locale,callback,callbackRender){window.fbAsyncInit=function(){if(typeof FB=='undefined'){return}FB.init({appId:appId,status:true,cookie:true,xfbml:true});FB.Event.subscribe('edge.create',function(href,widget){if(callback!=null){callback(href,widget)}});FB.Event.subscribe('xfbml.render',function(){if(callbackRender!=null){callbackRender()}})};if($('fb-root')==null){var fbEl=new Element('div',{id:'fb-root'});$(document.body).appendChild(fbEl);var sc=new Element('script',{type:'text/javascript',src:document.location.protocol+'//connect.facebook.net/'+locale+'/all.js',async:true});fbEl.appendChild(sc);window.fbInitDone=true}}});var tgSearchwordHighlighterClass=Class.create({maxSearchwordLines:4,maxWidth:140,initialize:function(mainObject){mainObject.log('tgSearchwordHighlighter initialized');if($$('body')[0].hasClassName('hpresult')||$$('body')[0].hasClassName('ypresult')){if($('resultList')!=null){var frm=$('pandoraForm');var searchTerm='';if(frm!=null){var termFld=frm.down('input[name=term]');if(typeof termFld!='undefined'&&termFld!=null){searchTerm=termFld.getValue();if(searchTerm==termFld.getAttribute('alt')){searchTerm=''}}else{var tradeFld=frm.down('input[name=trade]');if(typeof tradeFld!='undefined'&&tradeFld!=null){searchTerm=tradeFld.getValue();if(searchTerm==tradeFld.getAttribute('alt')){searchTerm=''}}else{mainObject.warn('tgSearchwordHighlighter: Neither found term nor trade field in search form!')}}}if(searchTerm!=''){searchTerm=searchTerm.toLowerCase();var entryList=$('resultList').down('ul.listing');if(entryList!=null){var entries=entryList.select('li.premium,li.top');if(entries.length>0){entries.each(function(entry){var entryId=entry.getAttribute('id');var realEntryId=entryId.match(/^entry_(.*)/);if(realEntryId){var eId=realEntryId[1];if(eId){var allSearchwordsVar='allSearchwords_'+eId;var shSearchwordsVar='shortenedSearchwords_'+eId;eval('var allExists = (typeof '+allSearchwordsVar+' != \'undefined\')');eval('var shExists = (typeof '+shSearchwordsVar+' != \'undefined\')');if(!allExists){mainObject.error('tgSearchwordHighlighter: Variable '+allSearchwordsVar+' not found in template!')}if(!shExists){mainObject.error('tgSearchwordHighlighter: Variable '+shSearchwordsVar+' not found in template!')}if(allExists&&shExists){eval('var all = '+allSearchwordsVar+';');eval('var sh  = '+shSearchwordsVar+';');if(all.length>0){var searchwordLi=entry.down('ul.keywords');var matchingWord='';var arrayOffset=null;var j=0;all.each(function(entrySw){if(this.html_entity_decode(entrySw).toLowerCase()==searchTerm){matchingWord=entrySw;arrayOffset=j}j++}.bind(this));if(matchingWord!=''){matchingWord=this.html_entity_decode(matchingWord);if(typeof sh[arrayOffset]!='undefined'){mainObject.log('Match found: '+sh[arrayOffset]);searchwordLi.select('li').each(function(swLi){if(typeof swLi.firstChild!='undefined'&&swLi.firstChild!=null){var val=swLi.firstChild.data;if(val!=null){val=val.strip()}else{val=''}var comp=this.html_entity_decode(sh[arrayOffset]);comp=comp.strip();if(val==comp){swLi.remove()}}}.bind(this));Element.insert(searchwordLi,{top:'<li>'+this.boldToFit(matchingWord,searchwordLi)+'</li>'})}else{mainObject.log('No match found in shortened array: '+sh[arrayOffset]);if(sh.length>(this.maxSearchwordLines-1)){searchwordLi.select('li')[(this.maxSearchwordLines-1)].remove();Element.insert(searchwordLi,{top:'<li>'+this.boldToFit(matchingWord,searchwordLi)+'</li>'})}else{Element.insert(searchwordLi,{top:'<li>'+this.boldToFit(matchingWord,searchwordLi)+'</li>'})}}}}}}}}.bind(this))}}}else{mainObject.log('tgSearchwordHighlighter: No search term found or default value')}}}},boldToFit:function(str,listEl){newEl=new Element('li',{id:'tempBdfLi'});listEl.appendChild(newEl);var newStr='<span id="tempBdfLiSpan"><strong>'+str+'</strong></span>';newEl.update(newStr);var tempSpan=$('tempBdfLiSpan');var width=tempSpan.getWidth();var addDots=false;while(width>this.maxWidth){addDots=true;str=str.substr(0,str.length-2);newStr='<strong>'+str+'...</strong>';tempSpan.update(newStr);width=tempSpan.getWidth()}if(addDots){str+='...'}newEl.remove();return'<strong>'+str+'</strong>'},html_entity_decode:function(string,quote_style){var hash_map={},symbol='',tmp_str='',entity='';tmp_str=string.toString();if(false===(hash_map=this.get_html_translation_table('HTML_ENTITIES',quote_style))){return false}hash_map['&']='&amp;';for(symbol in hash_map){entity=hash_map[symbol];tmp_str=tmp_str.split(entity).join(symbol)}tmp_str=tmp_str.split('&#039;').join("'");return tmp_str},get_html_translation_table:function(table,quote_style){var entities={},hash_map={},decimal=0,symbol='';var constMappingTable={},constMappingQuoteStyle={};var useTable={},useQuoteStyle={};constMappingTable[0]='HTML_SPECIALCHARS';constMappingTable[1]='HTML_ENTITIES';constMappingQuoteStyle[0]='ENT_NOQUOTES';constMappingQuoteStyle[2]='ENT_COMPAT';constMappingQuoteStyle[3]='ENT_QUOTES';useTable=!isNaN(table)?constMappingTable[table]:table?table.toUpperCase():'HTML_SPECIALCHARS';useQuoteStyle=!isNaN(quote_style)?constMappingQuoteStyle[quote_style]:quote_style?quote_style.toUpperCase():'ENT_COMPAT';if(useTable!=='HTML_SPECIALCHARS'&&useTable!=='HTML_ENTITIES'){throw new Error("Table: "+useTable+' not supported')}entities['38']='&amp;';if(useTable==='HTML_ENTITIES'){entities['160']='&nbsp;';entities['161']='&iexcl;';entities['162']='&cent;';entities['163']='&pound;';entities['164']='&curren;';entities['165']='&yen;';entities['166']='&brvbar;';entities['167']='&sect;';entities['168']='&uml;';entities['169']='&copy;';entities['170']='&ordf;';entities['171']='&laquo;';entities['172']='&not;';entities['173']='&shy;';entities['174']='&reg;';entities['175']='&macr;';entities['176']='&deg;';entities['177']='&plusmn;';entities['178']='&sup2;';entities['179']='&sup3;';entities['180']='&acute;';entities['181']='&micro;';entities['182']='&para;';entities['183']='&middot;';entities['184']='&cedil;';entities['185']='&sup1;';entities['186']='&ordm;';entities['187']='&raquo;';entities['188']='&frac14;';entities['189']='&frac12;';entities['190']='&frac34;';entities['191']='&iquest;';entities['192']='&Agrave;';entities['193']='&Aacute;';entities['194']='&Acirc;';entities['195']='&Atilde;';entities['196']='&Auml;';entities['197']='&Aring;';entities['198']='&AElig;';entities['199']='&Ccedil;';entities['200']='&Egrave;';entities['201']='&Eacute;';entities['202']='&Ecirc;';entities['203']='&Euml;';entities['204']='&Igrave;';entities['205']='&Iacute;';entities['206']='&Icirc;';entities['207']='&Iuml;';entities['208']='&ETH;';entities['209']='&Ntilde;';entities['210']='&Ograve;';entities['211']='&Oacute;';entities['212']='&Ocirc;';entities['213']='&Otilde;';entities['214']='&Ouml;';entities['215']='&times;';entities['216']='&Oslash;';entities['217']='&Ugrave;';entities['218']='&Uacute;';entities['219']='&Ucirc;';entities['220']='&Uuml;';entities['221']='&Yacute;';entities['222']='&THORN;';entities['223']='&szlig;';entities['224']='&agrave;';entities['225']='&aacute;';entities['226']='&acirc;';entities['227']='&atilde;';entities['228']='&auml;';entities['229']='&aring;';entities['230']='&aelig;';entities['231']='&ccedil;';entities['232']='&egrave;';entities['233']='&eacute;';entities['234']='&ecirc;';entities['235']='&euml;';entities['236']='&igrave;';entities['237']='&iacute;';entities['238']='&icirc;';entities['239']='&iuml;';entities['240']='&eth;';entities['241']='&ntilde;';entities['242']='&ograve;';entities['243']='&oacute;';entities['244']='&ocirc;';entities['245']='&otilde;';entities['246']='&ouml;';entities['247']='&divide;';entities['248']='&oslash;';entities['249']='&ugrave;';entities['250']='&uacute;';entities['251']='&ucirc;';entities['252']='&uuml;';entities['253']='&yacute;';entities['254']='&thorn;';entities['255']='&yuml;'}if(useQuoteStyle!=='ENT_NOQUOTES'){entities['34']='&quot;'}if(useQuoteStyle==='ENT_QUOTES'){entities['39']='&#39;'}entities['60']='&lt;';entities['62']='&gt;';for(decimal in entities){symbol=String.fromCharCode(decimal);hash_map[symbol]=entities[decimal]}return hash_map}});var tgSearchwordHighlighter;var tgVotingClass=Class.create({mainObject:null,votingEl:null,debugLinkInitialized:false,votingLinkInitialized:false,barColors:['#19457B','#19457B','#19457B','#19457B','#19457B','#19457B'],initialize:function(mainObject,votingEl){mainObject.log('tgVoting initializing');this.mainObject=mainObject;this.votingEl=votingEl;this.load()},load:function(showConfirmationText){if($('votingDebugLink')!=null){if(this.debugLinkInitialized){$('votingDebugLink').stopObserving('click',this.reload.bindAsEventListener(this));this.debugLinkInitialized=false}$('votingDebugLink').remove()}if($('votingformlink')!=null){if(this.votingLinkInitialized){$('votingformlink').stopObserving('click',this.reload.bindAsEventListener(this));this.votingLinkInitialized=false}$('votingformlink').remove()}this.mainObject.log('tgVoting: Updating view via AJAX');if(showConfirmationText==null){confirmation='false'}else{confirmation='true'}new Ajax.Updater(this.votingEl.id,'/ajax/voting/display',{parameters:{confirmation:confirmation},onComplete:function(){if(pandoraData.server=='LOCAL'){Element.insert(this.votingEl,{'before':'<a href="#" style="padding:2px 5px;margin:5px 0;background-color:red;color:white;font-weight:bold;" id="votingDebugLink">[Reload Voting Box]</a>'});$('votingDebugLink').setStyle({textDecoration:'underline',display:'block'});$('votingDebugLink').observe('click',this.reload.bindAsEventListener(this));this.debugLinkInitialized=true}if(this.votingEl.down("a.submit")!=null){this.votingEl.down("a.submit").observe("click",this.submit.bindAsEventListener(this))}if(this.votingEl.down("a.resultview")){this.votingEl.down("a.resultview").observe("click",this.displayResults.bindAsEventListener(this))}this.updatePercentages()}.bind(this)})},displayResults:function(e){Event.stop(e);var aj=new Ajax.Updater(this.votingEl.id,'/ajax/voting/display',{'method':'POST',parameters:{forceResults:'true'},onComplete:function(r){this.updatePercentages();if($('votingformlink')!=null){$('votingformlink').observe('click',this.reload.bindAsEventListener(this));this.votingLinkInitialized=true}}.bind(this)})},updatePercentages:function(){var values=this.votingEl.select("span.percentage_value");var bars=this.votingEl.select("div.percentage_bar");var w=Math.floor(0.8*this.votingEl.getWidth());var i=0;if(values.length>0){values.each(function(val){value=parseInt(val.firstChild.data);bars[i].setStyle({backgroundColor:this.barColors[i],borderBottom:'1px solid #8498A4',borderRight:'1px solid #8498A4',marginTop:'2px',height:'8px',width:'1px'});var targetWidth=Math.floor((w*value)/100);new Effect.Morph(bars[i],{style:'width: '+targetWidth+'px;'});i++}.bind(this))}},submit:function(e){Event.stop(e);var votingId=this.votingEl.down("input[name=voting_id]").getValue();var checked=this.votingEl.down("form").getInputs('radio','option').find(function(radio){return radio.checked});if(checked==null){alert("Bitte treffen Sie eine Auswahl.");return false}else{selected=checked.getValue()}new Ajax.Request("/ajax/voting/castVote",{method:'post',parameters:{option_id:selected,voting_id:votingId},onComplete:function(request){if(request.status!=200){alert("Es ist leider ein interner Fehler aufgetreten. Bitte versuchen Sie es später erneut.");return}var j=request.responseJSON;if(j!=null&&j.errorCode==0){this.update()}else{alert("Es ist ein Fehler beim Speichern aufgetreten. Bitte versuchen Sie es später erneut.")}}.bind(this)});return false},update:function(){this.load(true)},reload:function(e){Event.stop(e);this.load()}});var tgVoting;var tgmSliderDistanceClass=Class.create({headerHeight:250,slider:null,field:null,handle:null,track:null,panel:null,backdrop:null,closeX:null,resetX:null,swtch:null,val:null,active:false,initialize:function(inputfield,sliderDiv){this.field=inputfield;var searchboxes=$$("div.searchbox");if(searchboxes.length>0){var searchbox=searchboxes[0];var t=searchbox.cumulativeOffset()[1];this.headerHeight=t+searchbox.getHeight()}this.track=sliderDiv.down("div.distance.track");this.handle=sliderDiv.down("img.distance.handle");this.val=sliderDiv.down("span.distance_value");this.panel=sliderDiv;this.closeX=this.panel.down("a.close");var anchor=$$('a[rel="'+this.panel.id+'"]')[0];var sp=anchor.up("span.distance");this.resetX=sp.down("a.reset");this.resetLink=this.panel.down("a.delete");if(inputfield.value==inputfield.getAttribute("alt")){this.resetX.style.display="none"}else{this.resetX.style.display="block"}this.swtch=sp.down("a.switch");Event.observe(this.swtch,"click",this.switchHandler.bindAsEventListener(this));Event.observe(this.closeX,"click",this.hidePanel.bindAsEventListener(this));Event.observe(this.resetX,"click",this.resetInput.bindAsEventListener(this));Event.observe(this.resetLink,"click",this.resetInput.bindAsEventListener(this));this.backdrop=new Element("div");this.backdrop.addClassName("distancebackdrop");document.body.appendChild(this.backdrop);$("page").style.position="relative";this.backdrop.setStyle({'display':'none','backgroundColor':'#ffffff','position':'absolute','top':this.headerHeight+'px','left':'0','zIndex':'90000','width':'800px','height':'1px','opacity':'0.5'});Event.observe(this.backdrop,"click",this.hidePanel.bindAsEventListener(this));$A(inputfield.up("form").getElementsByTagName("input")).each(function(el){Event.observe(el,"focus",this.hidePanel.bindAsEventListener(this))}.bind(this))},changeHandler:function(v){if(v<=67){var range=Math.ceil((v/67)*10)}else{var range=(Math.ceil(((v-67)/33)*4)+1)*10}var r=range+" km";this.field.value=r;this.val.update("von <strong>"+r+"</strong>");tgmMain.fireEvent("distanceSliderChanged")},setSlider:function(km){if(km<1){km=1}if(km>50){km=50}if(km<=10){var v=Math.floor(67*(km/10))}else{var v=Math.floor(67+(((km-10)/40)*33))}this.slider.setValue(v)},switchHandler:function(e){if(this.active==true){this.hidePanel(e)}else{this.showPanel(e)}},hidePanel:function(e){tgmMain.fireEvent("hideDistanceSlider");new Effect.Fade(this.panel,{duration:0.25,afterFinish:function(){this.swtch.removeClassName("enabled");tgmMain.fireEvent("distanceSliderHidden")}.bind(this)});this.active=false;this.backdrop.hide();if(this.field.value!=this.field.alt){this.resetX.style.display="block"}if(e!=null){Event.stop(e)}},showPanel:function(e){tgmMain.fireEvent("showDistanceSlider");new Effect.Appear(this.panel,{duration:0.25,afterFinish:function(){this.swtch.addClassName("enabled");if(this.slider==null){this.slider=new Control.Slider(this.handle,this.track,{range:$R(1,100),onSlide:this.changeHandler.bindAsEventListener(this),onChange:this.changeHandler.bindAsEventListener(this)});if(this.field.value!=this.field.getAttribute("alt")){this.setSlider(parseInt(this.field.value))}tgmMain.fireEvent("distanceSliderInitialized");var offset=this.panel.cumulativeOffset();var t=offset[1];var l=offset[0];var p=this.panel.parentNode;p.removeChild(this.panel);document.body.appendChild(this.panel);this.panel.style.top=t+"px";this.panel.style.left=l+"px"}tgmMain.fireEvent("distanceSliderShown")}.bind(this)});this.active=true;this.backdrop.show();var t=this.backdrop.cumulativeOffset()[1];var h=Element.getHeight(document.body)-t;var w=Element.getWidth($("main"));this.backdrop.style.width=w+"px";this.backdrop.style.height=h+"px";this.resetX.hide();if(e!=null){Event.stop(e)}},resetInput:function(e){tgmMain.fireEvent("resetDistanceSlider");this.hidePanel(e);if(this.slider!=null){this.slider.setValue(1)}this.val.update('');this.field.value=this.field.getAttribute("alt");this.resetX.style.display="none";if(e!=null){Event.stop(e)}}});var boxes=[{divName:'google_inner_list',adCount:2},{divName:'google_bottom_list',adCount:2},{divName:'google_detail_top',adCount:1},{divName:'google_detail_bottom',adCount:2}];var googleAdsSkip=0;function google_ad_request_done(ga){if(typeof google_afs_client!='undefined'){return}Event.observe(window,"load",function(){after_load_google_ad_request_done(ga)})}function after_load_google_ad_request_done(ga){if(ga.length>0){adsFound=true}adArray=ga.slice();if(adArray.length>0){fillBox(2)}if(adArray.length>1){fillBox(3)}}function secondBox(){fillBox(1)}function fillBox(boxNum){var counter=0;if(adArray.length>0){var start=0;var end=boxes[boxNum].adCount;if(adArray.length<2){end=adArray.length}if(counter==1){start=2;end=adArray.length}var narrowAds="";for(i=start;i<end;i++){narrowAds=narrowAds+'<div class="googleentry">'+'<div class="headline"><a target="_blank" onmouseover="javascript:this.style.cursor=\'pointer\';window.status=\'go to '+adArray[i+googleAdsSkip].visible_url+'\';return true;" onmouseout="javascript:window.status=\'\';return true;" href="'+adArray[i+googleAdsSkip].url+'">'+adArray[i+googleAdsSkip].line1+'</a></div>'+'<div class="inforow1"><span>'+adArray[i+googleAdsSkip].line2+' '+adArray[i+googleAdsSkip].line3+'</span><a onmouseover="javascript:this.style.cursor=\'pointer\';window.status=\'go to '+adArray[i+googleAdsSkip].visible_url+'\';return true;" onmouseout="javascript:window.status=\'\';return true;" target="_blank" href="'+adArray[i+googleAdsSkip].url+'">'+adArray[i+googleAdsSkip].visible_url+'</a></div>'+'</div>'}if($(boxes[boxNum].divName)!=null){$(boxes[boxNum].divName).update(narrowAds)}counter++}if((adsFound&&counter==0)||(allDone&&!adsFound)){if($('bottom_g')!=null){$('bottom_g').hide()}if($('list_g')!=null){$('list_g').hide()}}googleAdsSkip+=i}function google_afs_request_done(google_ads){Event.observe(window,"load",function(){after_load_google_afs_request_done(google_ads)})}function after_load_google_afs_request_done(google_ads){var adsFound=false;var topAdExists=false;var bottomAdExists=false;var topAds=2;var bottomAds=2;var startAd=0;if($(boxes[2].divName)!=null){startAd=2;topAds=1}if($('list_g')!=null){var topAd=$('list_g')}if($('bottom_g')!=null){var bottomAdExists=true;var bottomAd=$('bottom_g')}if($(boxes[0+startAd].divName)!=null){var topAdExists=true}if($(boxes[1+startAd].divName)!=null){var bottomAdExists=true}var google_num_ads=google_ads.length;if(google_num_ads==0){if(topAdExists){topAd.hide()}if(bottomAdExists){bottomAd.hide()}}else{if($('list_a')!=null&&((bottomAdExists&&bottomAd.previousSibling.id=='list_a')||(topAdExists&&topAd.nextSibling.id=='list_a'))){$('list_a').hide()}if(google_num_ads>0){adArray=google_ads.slice();adsFound=true;if(topAdExists){fillBox(0+startAd);if(google_num_ads<(topAds+bottomAds)-1&&bottomAdExists){bottomAdExists=false;bottomAd.hide()}}if(bottomAdExists){fillBox(1+startAd)}gStep++}}}