var TxPowermailTabs=new Class({initialize:function(A){this.element=$(A);if(this.element){this.menu=$$("#"+A+" a");this.show(this.getInitialTab());this.menu.each(function(B){this.setupTab(B)}.bind(this))}},setupTab:function(B){var A=this.menu.indexOf(B);B.addEvent("click",this.activate.bind(this,A))},activate:function(A){this.menu.each(function(B,C){this.hide(C)}.bind(this));this.show(A)},hide:function(A){this.menu[A].removeClass("active-tab");$(this.tabID(this.menu[A])).removeClass("active-tab-body")},show:function(A){this.menu[A].addClass("active-tab");$(this.tabID(this.menu[A])).addClass("active-tab-body")},tabID:function(A){return A.href.match(/#(\w.+)/)[1]},getInitialTab:function(){if(document.location.href.match(/#(\w.+)/)){var A=RegExp.$1;this.menu.each(function(B,C){if(B.href.match(/#(\w.+)/)[1]==A){returnId=C}});return returnId||0}else{return 0}}});window.addEvent("domready",function(){var A=new TxPowermailTabs("tabs")});var Validator=new Class({initialize:function(C,B,D,A){if(typeof (D)=="function"){this.options=new Hash(A);this._test=D}else{this.options=new Hash(D);this._test=function(){return true}}this.error=B||"Validation failed.";this.className=C},test:function(B,A){return(this._test(B,A)&&this.testOptions(B,A))},testOptions:function(C,A){var B=true;if(this.options){this.options.each(function(D,E){if(B){B=this.methods[E]?this.methods[E](C,A,D):true}},this)}return B},methods:{pattern:function(A,C,B){return ValidationMethods.get("IsEmpty").test(A)||B.test(A)},minLength:function(A,C,B){return A.length>=B},maxLength:function(A,C,B){return A.length<=B},min:function(A,C,B){return A>=parseFloat(B)},max:function(A,C,B){return A<=parseFloat(B)},notOneOf:function(A,C,B){return B.every(function(D){return A!=D})},oneOf:function(A,C,B){return $A(B).any(function(D){return A==D})},is:function(A,C,B){return A==B},isNot:function(A,C,B){return A!=B},equalToField:function(A,C,B){return A==B.value},notEqualToField:function(A,C,B){return A!=B.value},include:function(A,C,B){return B.every(function(D){return ValidationMethods.get(D).test(A,C)})}}});var Validation=new Class({options:{onSubmit:true,stopOnFirst:false,immediate:false,focusOnError:true,useTitles:false,onFormValidate:function(A,B){},onElementValidate:function(A,B){}},initialize:function(B,A){$extend(this.options,A);this.form=$(B);if(this.options.onSubmit){this.form.addEvent("submit",this.onSubmit.bind(this))}if(this.options.immediate){this.form.getElements("input, textarea, select").each(function(C){C.addEvent("blur",function(D){this.validateField(D.target)}.bind(this))}.bind(this))}},onSubmit:function(A){if(!this.validateForm()){A.stop()}},validateForm:function(){var A=true;if(this.options.stopOnFirst){A=this.form.getElements("input, textarea, select").every(function(B){return this.validateField(B)}.bind(this))}else{this.form.getElements("input, textarea, select").each(function(C){var B=this.validateField(C);if(A&&!B){A=B}}.bind(this))}if(!A&&this.options.focusOnError){this.form.getElements("input, textarea, select").filter(function(B){return B.hasClass("validation-failed")})[0].focus()}this.options.onFormValidate(A,this.form);return A},validateField:function(A){var B=A.className.split(" ");return B.every(function(C){var D=this.test(C,A);this.options.onElementValidate(D,A);return D}.bind(this))},test:function(C,D){var A=this.get(C);var G="__advice"+C;if(this.isVisible(D)&&!A.test(D.value,D)){var B=this.getAdvice(C,D);if(!B){var E=this.options.useTitle?((D&&D.title)?D.title:A.error):A.error;B=new Element("div");B.setStyles({display:"block",opacity:"0"});B.addClass("validation-advice");B.set("text",E);switch(D.type.toLowerCase()){case"checkbox":case"radio":var F=D.parentNode.parentNode;B.setProperty("id","advice-"+C+"-"+this.getElementId(F));if(F){B.inject(F,"bottom")}else{B.inject(D,"after")}break;default:B.setProperty("id","advice-"+C+"-"+this.getElementId(D));B.inject(D,"after")}}else{B.setStyles({display:"block",opacity:"0"})}B.fade(1);D.removeClass("validation-passed");D.addClass("validation-failed");return false}else{var B=this.getAdvice(C,D);if(B){B.setStyles({display:"none",opacity:"0"})}D[G]=false;D.removeClass("validation-failed");D.addClass("validation-passed");return true}},isVisible:function(A){while(A.tagName!="BODY"){if(A.getStyle("display")=="none"||A.getStyle("opacity")=="0"){return false}A=A.getParent()}return true},getAdvice:function(A,B){switch(B.type.toLowerCase()){case"checkbox":case"radio":var C=B.parentNode.parentNode;advice=$("advice-"+A+"-"+this.getElementId(C))||$("advice-"+this.getElementId(C));break;default:advice=$("advice-"+A+"-"+this.getElementId(B))||$("advice-"+this.getElementId(B))}return advice},getElementId:function(A){return A.id?A.id:A.name},reset:function(){this.form.getElements("input, textarea, select").each(function(A){var B=A.getClassNames();B.each(function(D){var C=this.getAdvice(D,A);if(C){C.setStyles({display:"none",opacity:"0"})}A.removeClassName("validation-failed");A.removeClassName("validation-passed")})})},get:function(A){return ValidationMethods.methods[A]?ValidationMethods.methods[A]:ValidationMethods.methods._LikeNoIDIEverSaw_}});var ValidationMethods={get:function(A){return ValidationMethods.methods[A]?ValidationMethods.methods[A]:ValidationMethods.methods._LikeNoIDIEverSaw_},add:function(D,C,E,B){var A={};A[D]=new Validator(D,C,E,B);$extend(ValidationMethods.methods,A)},addAllThese:function(A){var B={};A.each(function(C){B[C[0]]=new Validator(C[0],C[1],C[2],(C.length>3?C[3]:{}))});$extend(ValidationMethods.methods,B)},methods:{_LikeNoIDIEverSaw_:new Validator("_LikeNoIDIEverSaw_","",function(){return true},{})}};ValidationMethods.addAllThese([["IsEmpty","",function(A){return((A==null)||(A.length==0))}],["required","Das ist ein Pflichtfeld",function(A){return !ValidationMethods.get("IsEmpty").test(A)}],["validate-number","Bitte tragen Sie eine Nummer ein",function(A){return ValidationMethods.get("IsEmpty").test(A)||(!isNaN(A)&&!/^\s+$/.test(A))}],["validate-digits","Bitte tragen Sie eine Nummer ohne Komma oder Punkt ein",function(A){return ValidationMethods.get("IsEmpty").test(A)||!/[^\d]/.test(A)}],["validate-alpha","Bitte nutzen Sie nur Buchstaben (a-z)",function(A){return ValidationMethods.get("IsEmpty").test(A)||/^[a-zA-Z]+$/.test(A)}],["validate-alphanum","Bitte nutzen Sie hier nur Buchstaben (a-z) oder Zahlen (0-9) nur in diesem Feld. Leer- oder andere Zeichen sind nicht erlaubt",function(A){return ValidationMethods.get("IsEmpty").test(A)||!/\W/.test(A)}],["validate-date","Bitte tragen Sie ein korrektes Datum ein",function(A){var B=new Date(A);return ValidationMethods.get("IsEmpty").test(A)||!isNaN(B)}],["validate-email","Bitte tragen Sie eine gültige E-Mail Adresse ein (test@test.de)",function(A){return ValidationMethods.get("IsEmpty").test(A)||/\w{1,}[@][\w\-]{1,}([.]([\w\-]{1,})){1,3}$/.test(A)}],["validate-url","Bitte tragen Sie eine gültige URL ein (http://www.test.de)",function(A){return ValidationMethods.get("IsEmpty").test(A)||/^(http|https|ftp):\/\/(([A-Z0-9][A-Z0-9_-]*)(\.[A-Z0-9][A-Z0-9_-]*)+)(:(\d+))?\/?/i.test(A)}],["validate-date-au","Bitte tragen Sie das Datum so ein: dd/mm/yyyy.(Beispiel 17/03/2006)",function(A){if(ValidationMethods.get("IsEmpty").test(A)){return true}var B=/^(\d{2})\/(\d{2})\/(\d{4})$/;if(!B.test(A)){return false}var C=new Date(A.replace(B,"$2/$1/$3"));return(parseInt(RegExp.$2,10)==(1+C.getMonth()))&&(parseInt(RegExp.$1,10)==C.getDate())&&(parseInt(RegExp.$3,10)==C.getFullYear())}],["validate-currency-dollar","Bitte tragen Sie einen gültigen Betrag ein ($100.00)",function(A){return ValidationMethods.get("IsEmpty").test(A)||/^\$?\-?([1-9]{1}[0-9]{0,2}(\,[0-9]{3})*(\.[0-9]{0,2})?|[1-9]{1}\d*(\.[0-9]{0,2})?|0(\.[0-9]{0,2})?|(\.[0-9]{1,2})?)$/.test(A)}],["validate-selection","Bitte treffen Sie eine Auswahl",function(A,B){return B.options?B.selectedIndex>0:!ValidationMethods.get("IsEmpty").test(A)}],["validate-one-required","Bitte füllen Sie min. 1 Feld aus",function(A,C){var E=C.parentNode;E=E.parentNode;var B=E.getElements("input");var D=false;B.each(function(F){if(!D&&(F.type.toLowerCase()=="checkbox"||F.type.toLowerCase()=="radio")){D=F.checked}});return D}]]);