var validanguage={useLibrary:"none",version:"0.9.6",settings:{showAlert:false,focusOnerror:false,validateAllFieldsOnsubmit:true,onsuccess:"validanguage.hideError",onerror:"validanguage.showError",errorMsg:"You have entered an invalid entry in the form",requiredErrorMsg:"You have skipped a required field",minlengthErrorMsg:"The indicated field must be at least {!minlength} characters long",maxlengthErrorMsg:"The indicated field may not be longer than {!maxlength} characters",characterValidationErrorMsg:"You have entered invalid characters",onErrorClassName:"vdError",noErrorClassName:"vdNoError",passedFieldClassName:"passedField",failedFieldClassName:"failedField",errorMsgSpanSuffix:"_errorMsg",showFailedFields:false,errorListText:"<strong>Please correct the following fields:</strong>",errorDivId:"vdErrorDiv",errorListId:"vdErrorList",errorListItemSuffix:"_vd_li",showSubmitMessageId:"vdSubmitMessage",showSubmitMessageMessage:"Loading",emptyOptionElements:["&nbsp;","0"," ",""],defaultValidationHandlers:["submit"],callToggleTransformationsOnload:true,toggleVisibilityDefaultsToHidden:true,loadCommentAPI:true,commentDelimiter:"\n",validationErrorColor:"#FF6666",normalTextboxColor:"",timeDelay:100,typingDelay:1100,validateRequiredAlternativesOnclick:true,errorOnMatch:false,onload:function(){},foo:""},alertCounter:true,el:{},forms:{},formLookup:{},requiredAlternatives:[],supportedEvents:["blur","change","keypress","keyup","keydown","submit","click","typing"],supportedEventHandlers:["onblur","onchange","onkeypress","onkeyup","onkeydown","onsubmit","onclick","ontyping"],typingDelay:[],addEvent:function(D,B,A){if(D.addEventListener){D.addEventListener(B,A,false);return true}else{if(D.attachEvent){var C=D.attachEvent("on"+B,A);return C}}},addEventInit:function(){switch(this.useLibrary){case"prototype":case"scriptaculous":this.addEvent=function(C,A,B){Event.observe(C,A,B)};break}},addOrCreateValidationWrapper:function(B,A,F){var E=B.id;if(A=="submit"){if(this.empty(F)){return }var D=validanguage.formLookup[E];if(typeof D=="number"){var C=document.forms[D]}else{var C=document.getElementById(D)}if(typeof validanguage.forms[D].validations=="undefined"){validanguage.forms[D].validations=[];this.addEvent(C,A,function(I){var H=I||window.evt;var G=validanguage.validationWrapper(I);if(G==false){H.returnValue=false;if(H.preventDefault){H.preventDefault()}return false}else{return true}})}validanguage.forms[D].validations[validanguage.forms[D].validations.length]={element:B,validationsCounter:F}}else{if(typeof validanguage.el[E].handlers=="undefined"){validanguage.el[E].handlers={}}if(typeof validanguage.el[E].handlers[A]=="undefined"){validanguage.el[E].handlers[A]=[];if(A=="typing"){this.addEvent(B,"keyup",function(G){validanguage.validationWrapper(G,"typingTimeout")})}else{this.addEvent(B,A,function(G){validanguage.validationWrapper(G)})}}validanguage.el[E].handlers[A][validanguage.el[E].handlers[A].length]=F}},addValidation:function(F,D,A){if(typeof A[0]=="undefined"){A=[A]}if(typeof D=="string"){D=[D]}var E=this.el[F].validations;for(var C=E.length-1;C>-1;C--){if(A[0]=="*"||this.inArray(E[C].name,A)){for(var B=D.length-1;B>-1;B--){this.addOrCreateValidationWrapper(document.getElementById(F),D[B],C)}}}},ajax:function(A,B){validanguage.ajaxObj.open("POST",A,true);this.ajaxCallback=B;this.ajaxObj.onreadystatechange=function(){if(validanguage.ajaxObj.readyState==4){validanguage.ajaxCallback(validanguage.ajaxObj.responseText)}};this.ajaxObj.send(null)},ajaxInit:function(){if(window.ActiveXObject){this.ajaxObj=new ActiveXObject("Microsoft.XMLHTTP")}else{if(window.XMLHttpRequest){this.ajaxObj=new XMLHttpRequest()}}},concatCollection:function(F,E){var D;var A=new Array();var C=F.length;var B=E.length;for(D=0;D<C;D++){A.push(F[D])}for(D=0;D<B;D++){A.push(E[D])}return A},empty:function(C,B){if(C==null||C==undefined||C==NaN||(C==""&&typeof C=="string")){return true}if(B==true&&C==false){return true}if(typeof C=="object"){for(var A in C){if(typeof C[A]=="function"){continue}if(validanguage.empty(C[A],B)==false){return false}}return true}else{return false}},format:function(G,F,I){var H=this.value;if(F!=null&&typeof F=="string"){var E=F.length;for(var E=F.length-1;E>-1;E--){while(H.indexOf(F.charAt(E))!=-1){H=H.replace(F.charAt(E),"","g")}}}if(I!=null){var B=(typeof I=="string")?new RegExp(I):I;var K=B.exec(H);if(K==null){return }}else{var J=G.replace(/[^x]/g,"");if(H.length!=J.length){return }}var E=G.length;var C=-1;var A="";for(var D=0;D<E;D++){A+=(G.charAt(D)=="x")?H.charAt(++C):G.charAt(D)}this.value=A},getCharCode:function(A){switch(A){case" ":return"32";case"!":return"33";case'"':return"34";case"#":return"35";case"$":return"36";case"%":return"37";case"&":return"38";case"'":return"39";case"(":return"40";case")":return"41";case"*":return"42";case"+":return"43";case",":return"44";case"-":return"45";case".":return"46";case"/":return"47";case"0":return"48";case"1":return"49";case"2":return"50";case"3":return"51";case"4":return"52";case"5":return"53";case"6":return"54";case"7":return"55";case"8":return"56";case"9":return"57";case":":return"58";case";":return"59";case"<":return"60";case"=":return"61";case">":return"62";case"?":return"63";case"@":return"64";case"A":return"65";case"B":return"66";case"C":return"67";case"D":return"68";case"E":return"69";case"F":return"70";case"G":return"71";case"H":return"72";case"I":return"73";case"J":return"74";case"K":return"75";case"L":return"76";case"M":return"77";case"N":return"78";case"O":return"79";case"P":return"80";case"Q":return"81";case"R":return"82";case"S":return"83";case"T":return"84";case"U":return"85";case"V":return"86";case"W":return"87";case"X":return"88";case"Y":return"89";case"Z":return"90";case"[":return"91";case"\\":return"92";case"]":return"93";case"^":return"94";case"_":return"95";case"`":return"96";case"a":return"97";case"b":return"98";case"c":return"99";case"d":return"100";case"e":return"101";case"f":return"102";case"g":return"103";case"h":return"104";case"i":return"105";case"j":return"106";case"k":return"107";case"l":return"108";case"m":return"109";case"n":return"110";case"o":return"111";case"p":return"112";case"q":return"113";case"r":return"114";case"s":return"115";case"t":return"116";case"u":return"117";case"v":return"118";case"w":return"119";case"x":return"120";case"y":return"121";case"z":return"122";case"{":return"123";case"|":return"124";case"}":return"125";case"~":return"126"}return""},getComments:function(A){if(!A){A=document.documentElement}var C=new Array();var B=A.childNodes.length;for(var D=0;D<B;D++){if(A.childNodes[D].nodeType==8){C[C.length]=A.childNodes[D]}else{if(A.childNodes[D].nodeType==1){C=C.concat(this.getComments(A.childNodes[D]))}}}return C},getDateTimeDefaultOptions:function(A,B){if(A==null){A={}}if(typeof A.dateOrder=="undefined"){A.dateOrder=B.dateOrder}A.dateOrder=A.dateOrder.toLowerCase();if(typeof A.allowedDelimiters=="undefined"||typeof A.allowedDelimiters!="string"){A.allowedDelimiters="./-"}if(typeof A.twoDigitYearsAllowed=="undefined"){A.twoDigitYearsAllowed=false}if(typeof A.oneDigitDaysAndMonthsAllowed=="undefined"){A.oneDigitDaysAndMonthsAllowed=true}if(typeof A.maxYear=="undefined"){A.maxYear=new Date().getFullYear()+15}if(typeof A.minYear=="undefined"){A.minYear=1900}if(typeof A.rejectDatesInTheFuture=="undefined"){A.rejectDatesInTheFuture=false}if(typeof A.rejectDatesInThePast=="undefined"){A.rejectDatesInThePast=false}if(typeof A.timeIsRequired=="undefined"){A.timeIsRequired=false}if(typeof A.timeUnits=="undefined"){A.timeUnits="hms"}if(typeof A.microsecondPrecision=="undefined"){A.microsecondPrecision=6}return A},getElSetting:function(A,E,D){var B=this.getFormSettings(E);var C=B[A];if(typeof D!="undefined"&&typeof D[A]!="undefined"){C=D[A]}else{if(typeof this.el[E][A]!="undefined"){C=this.el[E][A]}}return C},getFormSettings:function(B){var A=(document.getElementById(B).nodeName.toLowerCase()=="form")?B:this.formLookup[B];return this.forms[A].settings},getSettingFromComment:function(I,E){var D=" "+I+"=";var G=E.indexOf(D);if(G==-1){return null}var A=(G*1)+(D.length*1);var C="\\"+E.charAt(A);var F=D+C+"(.+?)"+C;var B=new RegExp(F);var H=B.exec(E,"gi");if(H==null){return null}else{if(H[1]){if(H[1]=="true"){H[1]=true}if(H[1]=="false"){H[1]=false}return H[1]}}},hideError:function(){var B=validanguage.getFormSettings(this.id);var A=document.getElementById(this.id+B.errorMsgSpanSuffix);if(A!=null){A.innerHTML="";var C=A.parentNode;C.style.display="none";C.className=B.noErrorClassName}if(!this.className.match(validanguage.settings.passedFieldClassName)){this.className+=" "+validanguage.settings.passedFieldClassName}if(this.className.match(validanguage.settings.failedFieldClassName)){this.className=this.className.replace(validanguage.settings.failedFieldClassName,"")}if(!B.showFailedFields){return }if(document.getElementById(this.id+B.errorListItemSuffix)!=null){var D=document.getElementById(B.errorListId);D.removeChild(document.getElementById(this.id+B.errorListItemSuffix));if(D.getElementsByTagName("LI").length==0){document.getElementById(B.errorDivId).style.display="none"}}},inArray:function(C,B){for(var A=B.length-1;A>-1;A--){if(B[A]===C){return true}}return false},inheritIfDefined:function(B,E,A,D){if(typeof E.length=="undefined"){return false}for(var C=E.length-1;C>-1;C--){if(typeof B[E[C]]!="undefined"&&(this.empty(D)||typeof B[E[C]]==D)){A[E[C]]=B[E[C]]}}},init:function(){this.addEventInit();this.ajaxInit();this.addEvent(window,"load",function(){validanguage.populate.call(validanguage)})},insertAfter:function(A,B){if(B.nextSibling){if(B.nextSibling.nodeName.toLowerCase()=="label"){B.parentNode.insertBefore(A,B.nextSibling.nextSibling)}else{B.parentNode.insertBefore(A,B.nextSibling)}}else{B.parentNode.appendChild(A)}},loadCommentAPI:function(H){var D=["mode","expression","suppress","onsubmit","onblur","onchange","onkeypress","onkeyup","onkeydown","onclick","ontyping","errorMsg","onerror","onsuccess","focusOnError","showAlert","required","requiredAlternatives","maxlength","minlength","regex","field","errorOnMatch","modifiers","transformations","validations"];var L=(this.empty(H))?this.getComments():H;var B=L.length;for(var N=0;N<B;N++){var K=(this.empty(H))?L[N].nodeValue:L[N];var P=K.split(validanguage.settings.commentDelimiter);var C=P.length;for(var R=0;R<C;R++){var I=P[R];I=I.replace(/\n/g,"");I=I.replace(/\r/g,"");var E=/<validanguage/i;if(E.test(I)){var S=this.getSettingFromComment("target",I);var O=[];if(this.empty(S,true)){continue}S=this.resolveArray(S,"string");for(var M=D.length-1;M>-1;M--){var A=this.getSettingFromComment(D[M],I);if(!(A==null||(typeof A=="string"&&A==""))){O[D[M]]=A}}M=S.length;for(var J=0;J<M;J++){var G=S[J];var F=document.getElementById(G);if(typeof this.el[G]=="undefined"||F==null){this.el[G]={}}if(typeof O.expression!="undefined"){this.el[G].characters={};this.inheritIfDefined(O,["expression","errorMsg","mode","suppress","onerror","onsuccess"],this.el[G].characters);this.inheritIfDefined(O,this.supportedEventHandlers,this.el[G].characters)}if(typeof O.regex!="undefined"){this.el[G].regex={expression:O.regex};this.inheritIfDefined(O,["errorOnMatch","modifiers"],this.el[G].regex);this.inheritIfDefined(O,this.supportedEventHandlers,this.el[G].regex)}this.inheritIfDefined(O,this.supportedEventHandlers,this.el[G],"string");this.inheritIfDefined(O,["minlength","maxlength","requiredAlternatives","required","focusOnError","showAlert","onsuccess","onerror","errorMsg"],this.el[G]);if(typeof O.minlength!="undefined"){this.el[G].minlengthEvents={};this.inheritIfDefined(O,this.supportedEventHandlers,this.el[G].minlengthEvents)}if(typeof O.maxlength!="undefined"){this.el[G].maxlengthEvents={};this.inheritIfDefined(O,this.supportedEventHandlers,this.el[G].maxlengthEvents)}if(typeof O.required!="undefined"){this.el[G].requiredEvents={};this.inheritIfDefined(O,this.supportedEventHandlers,this.el[G].requiredEvents)}if(typeof this.el[G].validations=="undefined"){this.el[G].validations=[]}if(typeof this.el[G].transformations=="undefined"){this.el[G].transformations=[]}var Q=["focusOnError","showAlert","onsuccess","onerror","errorMsg"];if(typeof O.validations!="undefined"&&!this.empty(O.validations)){this.el[G].validations[this.el[G].validations.length]={};this.el[G].validations[this.el[G].validations.length-1].name=O.validations;this.inheritIfDefined(O,this.supportedEventHandlers,this.el[G].validations[this.el[G].validations.length-1]);this.inheritIfDefined(O,Q,this.el[G].validations[this.el[G].validations.length-1])}if(typeof O.transformations!="undefined"&&!this.empty(O.transformations)){this.el[G].transformations[this.el[G].transformations.length]={};this.el[G].transformations[this.el[G].transformations.length-1].name=O.transformations;this.inheritIfDefined(O,this.supportedEventHandlers,this.el[G].transformations[this.el[G].transformations.length-1])}}}}}},loadElAPI:function(){for(var U in this.el){try{if(typeof document.getElementById(U)==undefined||this.empty(document.getElementById(U))){continue}}catch(S){continue}var R=document.getElementById(U);var T=validanguage.getFormSettings(U);if(typeof this.el[U].validations=="undefined"){this.el[U].validations=[]}if(typeof this.el[U].field=="undefined"){this.el[U].field=U}if(typeof this.el[U].required!="undefined"&&this.el[U].required==true){this.el[U].validations[this.el[U].validations.length]={};this.el[U].validations[this.el[U].validations.length-1].name="validanguage.validateRequired";this.el[U].validations[this.el[U].validations.length-1].errorMsg=(typeof this.el[U].errorMsg=="undefined")?T.requiredErrorMsg:this.el[U].errorMsg;this.inheritIfDefined(this.el[U],this.supportedEventHandlers,this.el[U].validations[this.el[U].validations.length-1]);if(typeof this.el[U]["requiredEvents"]!="undefined"){this.inheritIfDefined(this.el[U]["requiredEvents"],this.supportedEventHandlers,this.el[U].validations[this.el[U].validations.length-1])}if(T.validateRequiredAlternativesOnclick==true&&typeof this.el[U].requiredAlternatives!="undefined"){var Q=(typeof this.el[U].onsuccess!="undefined")?this.el[U].onsuccess:T.onsuccess;var E=(typeof this.el[U].onerror!="undefined")?this.el[U].onerror:T.onerror;var D=this.resolveArray(this.el[U].requiredAlternatives,"string");for(var G=D.length-1;G>-1;G--){this.requiredAlternatives[D[G]]={};if(!((typeof document.getElementById(D[G]).type!="undefined")&&(document.getElementById(D[G]).type=="checkbox"||document.getElementById(D[G]).type=="radio"))){continue}this.requiredAlternatives[D[G]].onsuccess=Q;this.requiredAlternatives[D[G]].onerror=E;this.requiredAlternatives[D[G]].errorMsg=(typeof this.el[U].errorMsg=="undefined")?T.requiredErrorMsg:this.el[U].errorMsg;this.requiredAlternatives[D[G]].parentId=U;this.addEvent(document.getElementById(D[G]),"click",function(V){validanguage.validateRequiredAlternatives(V)})}}}if(typeof this.el[U].regex!="undefined"){this.el[U].validations[this.el[U].validations.length]={};this.el[U].validations[this.el[U].validations.length-1].name="validanguage.validateRegex";var C=(typeof this.el[U].errorMsg=="undefined")?T.errorMsg:this.el[U].errorMsg;if(typeof this.el[U].regex.errorMsg!="undefined"){C=this.el[U].regex.errorMsg}this.el[U].validations[this.el[U].validations.length-1].errorMsg=C;this.inheritIfDefined(this.el[U],this.supportedEventHandlers,this.el[U].validations[this.el[U].validations.length-1]);this.inheritIfDefined(this.el[U].regex,this.supportedEventHandlers,this.el[U].validations[this.el[U].validations.length-1]);if(typeof this.el[U].regex.errorOnMatch=="undefined"){this.el[U].regex.errorOnMatch=T.errorOnMatch}}if(typeof this.el[U].maxlength!="undefined"){this.el[U].validations[this.el[U].validations.length]={};this.el[U].validations[this.el[U].validations.length-1].name="validanguage.validateMaxlength";this.el[U].validations[this.el[U].validations.length-1].errorMsg=T.maxlengthErrorMsg.replace("{!maxlength}",this.el[U].maxlength);if(typeof this.el[U]["maxlengthEvents"]!="undefined"){this.inheritIfDefined(this.el[U]["maxlengthEvents"],this.supportedEventHandlers,this.el[U].validations[this.el[U].validations.length-1])}}if(typeof this.el[U].minlength!="undefined"){this.el[U].validations[this.el[U].validations.length]={};this.el[U].validations[this.el[U].validations.length-1].name="validanguage.validateMinlength";this.el[U].validations[this.el[U].validations.length-1].errorMsg=T.minlengthErrorMsg.replace("{!minlength}",this.el[U].minlength);if(typeof this.el[U]["minlengthEvents"]!="undefined"){this.inheritIfDefined(this.el[U]["minlengthEvents"],this.supportedEventHandlers,this.el[U].validations[this.el[U].validations.length-1])}}if(typeof this.el[U].characters!="undefined"&&typeof this.el[U].characters.mode!="undefined"&&typeof this.el[U].characters.expression!="undefined"){var I=this.el[U].characters.expression;I=I.replace("alphaUpper","ABCDEFGHIJKLMNOPQRSTUVWXYZ");I=I.replace("alphaLower","abcdefghijklmnopqrstuvwxyz");I=I.replace("alpha","abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ");I=I.replace("numeric","0123456789");this.el[U].characters.characterExpression=I;var B=";";for(var N=I.length-1;N>-1;N--){B+=I.charCodeAt(N)+";"}this.el[U].characters.expression=B;if(typeof this.el[U].characters.suppress=="undefined"||this.el[U].characters.suppress==true){this.addEvent(R,"keypress",validanguage.validateKeypress)}var M=false;for(var F=this.supportedEventHandlers.length-1;F>-1;F--){if(typeof this.el[U].characters[this.supportedEventHandlers[F]]!="undefined"&&this.el[U].characters[this.supportedEventHandlers[F]]==true){M=true}}if(M){this.el[U].validations[this.el[U].validations.length]={};this.el[U].validations[this.el[U].validations.length-1].name="validanguage.validateCharacters";this.el[U].validations[this.el[U].validations.length-1].errorMsg=true;for(var F=this.supportedEventHandlers.length-1;F>-1;F--){if(typeof this.el[U].characters[this.supportedEventHandlers[F]]!="undefined"&&this.el[U].characters[this.supportedEventHandlers[F]]==true){this.el[U].validations[this.el[U].validations.length-1][this.supportedEventHandlers[F]]=true}}if(typeof this.el[U].characters.errorMsg!="undefined"){this.el[U].validations[this.el[U].validations.length-1].errorMsg=this.el[U].characters.errorMsg}else{this.el[U].validations[this.el[U].validations.length-1].errorMsg=T.characterValidationErrorMsg}}}if(typeof this.el[U].transformations=="undefined"){this.el[U].transformations=[]}var N=this.supportedEventHandlers.length;for(var L=0;L<N;L++){var A=this.supportedEventHandlers[L];if(typeof this.el[U][A]!="undefined"&&typeof this.el[U][A]!="boolean"){this.el[U].transformations[this.el[U].transformations.length]={};var J=this.el[U].transformations.length-1;this.el[U].transformations[J].name=this.el[U][A];this.el[U].transformations[J][A]=true}}var P=this.el[U].transformations.length;for(var O=0;O<P;O++){var H=false;var N=this.supportedEvents.length;for(var L=0;L<N;L++){if(this.supportedEvents[L]=="submit"){continue}if(typeof this.el[U].transformations[O]["on"+this.supportedEvents[L]]!="undefined"&&this.el[U].transformations[O]["on"+this.supportedEvents[L]]==true){H=true;this.addOrCreateValidationWrapper(R,this.supportedEvents[L])}}if(H==false){if(R.nodeName.toLowerCase()=="form"){this.addOrCreateValidationWrapper(R,"submit")}else{for(var K=T.defaultTransformationsHandlers.length-1;K>-1;K--){this.addOrCreateValidationWrapper(R,T.defaultTransformationsHandlers[K])}}}}if(typeof this.el[U].validations!="undefined"){var P=this.el[U].validations.length;for(var O=0;O<P;O++){var H=false;var N=this.supportedEvents.length;for(var L=0;L<N;L++){if(typeof this.el[U].validations[O]["on"+this.supportedEvents[L]]!="undefined"&&this.el[U].validations[O]["on"+this.supportedEvents[L]]==true){H=true;this.addOrCreateValidationWrapper(R,this.supportedEvents[L],O)}}if(H==false){for(var K=T.defaultValidationHandlers.length-1;K>-1;K--){this.addOrCreateValidationWrapper(R,T.defaultValidationHandlers[K],O)}}}}}},parseSubstring:function(A,G,D){var E=[];var F=D.split(A);for(var C=0;C<F.length;C++){var B=F[C].indexOf(G);if(B!=-1){E.push(F[C].substring(0,B))}}return E},populate:function(){this.sniffBrowser();if(this.browser=="ie5"){return }var B=document.getElementsByTagName("form");for(var H=0,G=B.length;H<G;H++){var M=(this.empty(B[H].id))?H:B[H].id;this.forms[M]={settings:this.settings};var L=B[H].getElementsByTagName("input");var C=B[H].getElementsByTagName("textarea");var A=B[H].getElementsByTagName("select");var J=this.concatCollection(L,C);var J=this.concatCollection(J,A);var K={};for(var F=J.length-1;F>-1;F--){if(typeof (J[F].id)!="undefined"&&!this.empty(J[F].id)){this.formLookup[J[F].id]=M}}}if(this.browser=="konqueror"&&this.settings.loadCommentAPI==true){this.ajax(document.location.href,function(N){var O=validanguage.parseSubstring("<!--","-->",N);validanguage.loadCommentAPI(O);if(typeof validanguage.overloadFormSettings!="undefined"){validanguage.overloadFormSettings()}if(typeof validanguage.el!=undefined&&!this.empty(validanguage.el)){validanguage.loadElAPI()}})}else{if(this.settings.loadCommentAPI==true){this.loadCommentAPI()}if(typeof this.overloadFormSettings!="undefined"){this.overloadFormSettings()}if(typeof this.el!=undefined&&!this.empty(this.el)){this.loadElAPI()}}if(this.settings.callToggleTransformationsOnload){for(var D in this.el){if(typeof this.el[D].transformations!="undefined"){for(var H=this.el[D].transformations.length-1;H>-1;H--){if(typeof this.el[D].transformations[H].name=="undefined"){continue}var E=this.el[D].transformations[H].name;if(typeof E=="string"&&E.indexOf("validanguage.toggle")>-1){var I=this.resolveArray(E,"function");var G=I.length;for(var F=0;F<G;F++){I[F].call(document.getElementById(D))}}}}}}this.addEvent(window,"unload",function(){delete validanguage});this.settings.onload.call(this)},removeValidation:function(G,D,A){if(D=="*"){D=this.supportedEvents}else{if(typeof D[0]=="undefined"){D=[D]}}if(typeof A=="string"){A=[A]}for(var B=D.length-1;B>-1;B--){if(D[B]=="submit"){var E=this.forms[this.formLookup[G]].validations;formValLoop:for(var C=E.length-1;C>-1;C--){if(E[C]==undefined||E[C].element.id!=G){continue formValLoop}if(A[0]=="*"||this.inArray(this.el[G].validations[E[C].validationsCounter].name,A)){try{delete E[C]}catch(F){}}}}else{var E=this.el[G].validations;for(var C=E.length-1;C>-1;C--){if(A[0]=="*"||this.inArray(E[C].name,A)){try{delete this.el[G].handlers[D[B]][C]}catch(F){}}}}}},resolveArray:function(args,returnType,ignoreCommas){var returnArray=[];if(typeof args=="object"){var i=args.length;for(var j=0;j<i;j++){returnArray[returnArray.length]=this.resolveArray(args[j],returnType)[0]}return returnArray}if(typeof args=="function"){returnArray[0]=args;return returnArray}if(typeof args=="string"){if(returnType=="string"){args=args.replace(" ","")}if(args.indexOf(",")==-1||ignoreCommas==true){if(returnType=="function"){if(args.indexOf("(")!=-1&&args.indexOf("function")==-1){var splitAt=args.indexOf("(");var funcName=args.substring(0,splitAt);var params=args.substring(++splitAt,args.length);var args="function(text) { return "+funcName+".call(this,"+params+"}"}eval("var argsHandle="+args);returnArray[returnArray.length]=argsHandle}else{returnArray[returnArray.length]=args}}else{var tempArray=this.smartCommaSplit(args);var i=tempArray.length;if(i==1){returnArray=this.resolveArray(tempArray[0],returnType,true)}else{for(var j=0;j<i;j++){returnArray[returnArray.length]=this.resolveArray(tempArray[j],returnType)[0]}}}return returnArray}return false},safeAlert:function(A){if(this.alertCounter==true){this.alertCounter=false;alert(A);this.alertCounter=true}else{return }},showError:function(G){var D=validanguage.getFormSettings(this.id);var B=document.getElementById(this.id+D.errorMsgSpanSuffix);if(B==null){var J=document.getElementById(this.id);var F=document.createElement("DIV");validanguage.insertAfter(F,J);var H='<span id="'+this.id+D.errorMsgSpanSuffix+'">&nbsp;</span>';F.innerHTML=H;F.className=D.onErrorClassName;var B=document.getElementById(this.id+D.errorMsgSpanSuffix)}else{var F=B.parentNode;F.style.display="block";F.className=D.onErrorClassName}if(validanguage.useLibrary=="scriptaculous"){new Effect.Highlight(F,{startcolor:"#A85F5F",endcolor:"#C0A6A6",restorecolor:"#ddd"})}B.innerHTML=G;if(!this.className.match(validanguage.settings.failedFieldClassName)){this.className+=" "+validanguage.settings.failedFieldClassName}if(this.className.match(validanguage.settings.passedFieldClassName)){this.className=this.className.replace(validanguage.settings.passedFieldClassName,"")}if(!D.showFailedFields){return }if(document.getElementById(D.errorDivId)==null){var F=document.createElement("DIV");F.id=D.errorDivId;document.body.appendChild(F)}else{var F=document.getElementById(D.errorDivId)}if(document.getElementById(D.errorListId)==null){F.innerHTML=D.errorListText+'<br/><ul id="'+D.errorListId+'"></ul>'}var E=F.innerHTML.toLowerCase();E=E.replace(/"/g,"");var C=document.getElementById(D.errorListId);var A='<li id="'+this.id+D.errorListItemSuffix+'">'+validanguage.el[this.id].field+"</li>";var I=A.toLowerCase();I=I.replace(/"/g,"");if(E.indexOf(I)==-1){C.innerHTML+=A}document.getElementById(D.errorDivId).style.display="block"},showSubmitMessage:function(B,F){if(B==false){return }var D=validanguage.forms[this.id].settings;var A=this.getElementsByTagName("INPUT");for(var C=A.length-1;C>-1;C--){if(typeof A[C].type!="undefined"&&A[C].type=="submit"){validanguage.forms.submitButton=submitButton=A[C];break}}submitButton.style.display="none";var E=document.createElement("DIV");E.id=D.showSubmitMessageId;E.innerHTML=D.showSubmitMessageMessage;validanguage.insertAfter(E,A[C]);setTimeout(function(){validanguage.forms.submitButton.style.display="inline"},60000)},smartCommaSplit:function(G){var D=0;var E=0;var B=0;var F=[];var A=G.length;for(var C=0;C<A;C++){switch(G.charAt(C)){case"(":D++;break;case")":D--;break;case"{":E++;break;case"}":E--;break;case",":if(D==0&&E==0){F[F.length]=G.substring(B,C);B=++C}break}}F[F.length]=G.substring(B,C);return F},sniffBrowser:function(){var isIE
/*@cc_on=1@*/
;if(isIE){this.browser="ie";var version=parseFloat(navigator.appVersion.split("MSIE")[1]);if(version<6){return"ie5"}}else{if(navigator.appName.indexOf("Opera")!=-1){this.browser="opera"}else{if(navigator.vendor.indexOf("Apple")!=-1){this.browser="safari"}else{if(navigator.vendor.indexOf("KDE")!=-1){this.browser="konqueror"}else{this.browser="ff"}}}}},toggle:function(G){var N=G.length;var Q=validanguage.getFormSettings(this.id);var M=validanguage.formLookup[this.id];for(var O=0;O<N;O++){var F=G[O];var R=validanguage.resolveArray(F.target,"string");var H=false;if(this.nodeName.toLowerCase()=="input"&&this.type.toLowerCase()=="radio"){var D=false;var C=document.getElementById(M)[this.name];for(var L=C.length-1;L>-1;L--){if(C[L].checked){D=true}}if(!D){H=true}}if(typeof F.toggle!="undefined"){var B=(typeof F.toggle.visible!="undefined")?validanguage.toggleCriteriaMet(this,F.toggle.visible,Q):false;var E=(typeof F.toggle.hidden!="undefined")?validanguage.toggleCriteriaMet(this,F.toggle.hidden,Q):false;for(var L=R.length-1;L>-1;L--){if(B&&!H){validanguage.toggleDisplay(R[L],"")}if(E||(Q.toggleVisibilityDefaultsToHidden&&!B)){validanguage.toggleDisplay(R[L],"none")}}}if(typeof F.values!="undefined"){for(var L=R.length-1;L>-1;L--){if(typeof F.values.checked!="undefined"&&this.checked==true){document.getElementById(R[L]).value=F.values.checked}else{if(typeof F.values.unchecked!="undefined"&&this.checked==false){document.getElementById(R[L]).value=F.values.unchecked}else{if(typeof F.values[this.value]!="undefined"){document.getElementById(R[L]).value=F.values[this.value]}}}}}if(typeof F.dynamicSelect!="undefined"){var K=document.getElementById(R[0]);for(var I in F.dynamicSelect){if(typeof F.dynamicSelect[I]=="object"){var J=F.dynamicSelect[I];if(I==this.value){while(K.options.length>0){K.remove(0)}for(var P in J){if(P=="_default"){continue}var A=document.createElement("option");A.value=P;A.text=J[P];K.options.add(A)}if(typeof J._default!="undefined"){K.value=J._default}}}}}}},toggleCriteriaMet:function(B,C,A){if(C=="checked"){return !!(B.checked)}else{if(C=="unchecked"){return !(B.checked)}else{if(C=="empty"){return !!(validanguage.inArray(B.value,A.emptyOptionElements))}else{if(C=="notEmpty"){return !(validanguage.inArray(B.value,A.emptyOptionElements))}else{return !!(B.value==C)}}}}},toggleDisplay:function(D,C){var E=document.getElementById(D);var H=E.nodeName.toLowerCase();if(C==null||C==undefined){C=(E.style.display=="none")?"":"none"}disabledBool=(C=="none")?true:false;E.style.display=C;if(H=="input"||H=="textarea"||H=="select"){E.disabled=disabledBool;return }var I=E.getElementsByTagName("input");var B=E.getElementsByTagName("textarea");var A=E.getElementsByTagName("select");var G=this.concatCollection(I,B);var G=this.concatCollection(G,A);for(var F=G.length-1;F>-1;F--){G[F].disabled=disabledBool}},validateCharacters:function(E){var F=this.id;var D=validanguage.el[F].characters.mode;var C=validanguage.el[F].characters.characterExpression;switch(D){case"allow":outerLoop:for(var B=E.length-1;B>-1;B--){innerLoop:for(var A=C.length-1;A>-1;A--){if(C.charAt(A)==E.charAt(B)){continue outerLoop}}return false}break;case"deny":outerLoop:for(var B=E.length-1;B>-1;B--){innerLoop:for(var A=C.length-1;A>-1;A--){if(C.charAt(A)==E.charAt(B)){return false}}}break}return true},validateCreditCard:function(J,C,D){if(validanguage.empty(C)){C=["amex","disc","mc","visa"]}var J=J.replace(/\D/g,"");var B={amex:"^3[4|7]\\d{13}$",bankcard:"^56(10\\d\\d|022[1-5])\\d{10}$",diners:"^(?:3(0[0-5]|[68]\\d)\\d{11})|(?:5[1-5]\\d{14})$",disc:"^(?:6011|650\\d)\\d{12}$",electron:"^(?:417500|4917\\d{2}|4913\\d{2})\\d{10}$",enroute:"^2(?:014|149)\\d{11}$",jcb:"^(3\\d{4}|2100|1800)\\d{11}$",maestro:"^(?:5020|6\\d{3})\\d{12}$",mc:"^5[1-5]\\d{14}$",solo:"^(6334[5-9][0-9]|6767[0-9]{2})\\d{10}(\\d{2,3})?$","switch":"^(?:49(03(0[2-9]|3[5-9])|11(0[1-2]|7[4-9]|8[1-2])|36[0-9]{2})\\d{10}(\\d{2,3})?)|(?:564182\\d{10}(\\d{2,3})?)|(6(3(33[0-4][0-9])|759[0-9]{2})\\d{10}(\\d{2,3})?)$",visa:"^4\\d{12}(\\d{3})?$",voyager:"^8699[0-9]{11}$"};var E=false;for(var G=C.length;G--;G>-1){E=validanguage.validateRegex(J,{expression:B[C[G]]});if(E){break}}if(!E){return false}if(D===false){return true}var A=J.length;var F=A%2;var I=0;for(var G=0;G<A;G++){var H=J.charAt(G);if(G%2==F){H=H*2;if(H>9){H=H-9}}I=I+parseInt(H)}if(I%10==0){return true}else{return false}},validateDate:function(N,P){P=validanguage.getDateTimeDefaultOptions(P,{dateOrder:"mdy"});var C;var K="(";for(var G=P.allowedDelimiters.length-1;G>-1;G--){K+="\\"+P.allowedDelimiters.charAt(G);if(G>0){K+="|"}if(N.indexOf(P.allowedDelimiters.charAt(G))>-1){C=P.allowedDelimiters.charAt(G)}}K+=")";if(C==null){return false}var D=N.split(C);if(D.length!=3){return false}var M="^";for(var E=0;E<3;E++){switch(P.dateOrder.charAt(E)){case"y":var H=(P.twoDigitYearsAllowed)?"{2,4}":"{4}";M+="\\d"+H;break;case"m":case"d":var H=(P.oneDigitDaysAndMonthsAllowed)?"{1,2}":"{2}";M+="\\d"+H;break}if(E<2){M+=K}}M+="$";var B=new RegExp(M);var O=B.exec(N);if(O==null){return false}var J=D[P.dateOrder.indexOf("y")];var I=D[P.dateOrder.indexOf("m")];var L=D[P.dateOrder.indexOf("d")];if(J.length==3){return false}if((J<P.minYear&&J.length==4)||(J>P.maxYear)){return false}if(!validanguage.validateDateExists(J,I,L)){return false}if(P.rejectDatesInTheFuture||P.rejectDatesInThePast){var A=new Date();var F=new Date();F.setDate(L);F.setMonth(--I);F.setFullYear(J);if((P.rejectDatesInTheFuture&&F>A)||(P.rejectDatesInThePast&&F<A)){return false}}return true},validateDateExists:function(C,E,A){if(C.length==2){var D=(C>20)?"19":"20";C=D+C.toString()}if(E.charAt(0)=="0"){E=E.substr(1,1)}if(A.charAt(0)=="0"){A=A.substr(1,1)}if(E<0||E>12){return false}switch(E.toString()){case"4":case"6":case"9":case"11":var B=30;break;case"2":var B=((C%4==0)&&((!(C%100==0))||(C%400==0)))?29:28;break;default:var B=31}if(A<0||A>B){return false}return true},validateEmail:function(A){if(!A.match(/^([a-zA-Z0-9]+[a-zA-Z0-9._%-]*@(?:[a-zA-Z0-9-]+\.)+[a-zA-Z]{2,4})$/)){return false}else{return true}},validateForm:function(B){var A;if(B==undefined){A=document.forms[0]}else{if(typeof B=="string"){A=document.getElementById(B)}else{A=B}}return this.validationWrapper(A,"validateForm")},validateIP:function(C){var A=C.split(".");if(A.length==4){for(var B=A.length-1;B>-1;B--){if(!(validanguage.validateNumeric(A[B])&&A[B]>=0&&A[B]<=255)){return false}}return true}return false},validateKeypress:function(E){var A=E||window.evt;var D=A.currentTarget||A.srcElement;var G=D.id;var B=validanguage.formLookup[G];var C=validanguage.getFormSettings(G);if(validanguage.browser=="ie"||validanguage.browser=="opera"){charCode=A.keyCode;if(((charCode==16)&&(A.shiftKey))||(A.ctrlKey)){return true}}else{if((A.charCode==0)||(A.ctrlKey)){return true}charCode=A.which}charCode+=";";searchString=new String(validanguage.el[G].characters.expression);var F=validanguage.el[G].characters.mode;if(((searchString.search(charCode)!=-1)&&(F=="allow"))||((searchString.search(charCode)==-1)&&(F=="deny"))){return true}else{D.style.backgroundColor=C.validationErrorColor;setTimeout("document.getElementById('"+G+"').style.backgroundColor = validanguage.forms['"+B+"'].settings.normalTextboxColor",validanguage.forms[B].settings.timeDelay);A.returnValue=false;if(A.preventDefault){A.preventDefault()}return false}},validateMaxlength:function(C,A){var D=this.id;var B=(validanguage.empty(A))?validanguage.el[D].maxlength:A;if(C.length>B){return false}else{return true}},validateMinlength:function(C,A){var D=this.id;var B=(validanguage.empty(A))?validanguage.el[D].minlength:A;if(C.length<B){return false}else{return true}},validateNumeric:function(A){if(!A.match(/^\d+$/)){return false}else{return true}},validateRegex:function(D,C){var G=this.id;var A=(validanguage.empty(C))?validanguage.el[G].regex:C;if(typeof A.modifiers=="undefined"){A.modifiers=""}if(typeof A.errorOnMatch=="undefined"){A.errorOnMatch=false}var F=(typeof A.expression=="string")?new RegExp(A.expression):A.expression;var B=F.exec(D,A.modifiers);if(B==null){var E=(A.errorOnMatch==false||A.errorOnMatch=="false")?false:true}else{var E=(A.errorOnMatch==false||A.errorOnMatch=="false")?true:false}return E},validateRequired:function(A){var G=this.id;if(typeof validanguage.el[G].requiredAlternatives=="undefined"){var E=[G]}else{var E=validanguage.resolveArray(validanguage.el[G].requiredAlternatives,"string");E[E.length]=G}for(var B=E.length-1;B>-1;B--){G=E[B];var D=document.getElementById(G);var F=D.value;var C=validanguage.validateRequiredChild.call(D,F);if(C==true){return true}}return false},validateRequiredAlternatives:function(D){var H=D||window.evt;var E=H.currentTarget||H.srcElement;var A=E.id;var C=validanguage.requiredAlternatives[A].parentId;var I=validanguage.requiredAlternatives[A].onsuccess;var F=validanguage.requiredAlternatives[A].onerror;var G=document.getElementById(C);if(validanguage.validateRequired.call(G)==true){successHandlers=validanguage.resolveArray(I,"function");for(var B=successHandlers.length-1;B>-1;B--){successHandlers[B].call(G)}}else{errorHandlers=validanguage.resolveArray(F,"function");for(var B=errorHandlers.length-1;B>-1;B--){errorHandlers[B].call(G,validanguage.requiredAlternatives[A].errorMsg)}}},validateRequiredChild:function(D){var B=(typeof this.type!="undefined")?this.type:null;if(this.nodeName.toLowerCase()=="textarea"){B="text"}if(this.nodeName.toLowerCase()=="select"){B="select"}switch(B){case"checkbox":if(this.checked==false){return false}break;case"radio":var C=validanguage.formLookup[this.id];var E=(typeof C=="number")?document.forms[C][this.name]:document.getElementById(C)[this.name];for(var A=E.length-1;A>-1;A--){if(E[A].checked==true){return true}}return false;break;case"text":case"password":case"file":if(validanguage.empty(D)){return false}break;case"select":if(validanguage.empty(D)){return false}settings=validanguage.getFormSettings(this.id);for(var A=settings.emptyOptionElements.length-1;A>-1;A--){if(D==settings.emptyOptionElements[A]){return false}}break}return true},validateTimestamp:function(G,J){J=validanguage.getDateTimeDefaultOptions(J,{dateOrder:"ymd"});var D=G.indexOf(" ");var C=(D==-1)?G:G.substr(0,D);if(!validanguage.validateDate(C,J)){return false}if(D!=-1){var B=G.substring(++D)}else{if(!J.timeIsRequired){return true}if(J.timeIsRequired){return false}}var E="^\\d{1,2}:\\d{1,2}";if(J.timeUnits.indexOf("s")!=-1){E+="(:\\d{1,2}"}if(J.timeUnits.indexOf("u")!=-1){E+="(\\.\\d{1,"+J.microsecondPrecision+"})?"}if(J.timeUnits.indexOf("s")!=-1){E+=")?"}if(J.timeUnits.indexOf("t")!=-1){E+="( ?[\\+|\\-]{1,1}(\\d|0\\d|10|11|12|13)(\\:(00|30))?)?"}E+="$";var A=new RegExp(E);var I=A.exec(B);if(I==null){return false}var H=B.split(":");if(H[0]>23){return false}if(H[1]>59){return false}if(H.length>2){var F=H[2].substr(0,2);if(F>59){return false}}return true},validateURL:function(A){if(!A.match(/^((([hH][tT][tT][pP][sS]?|[fF][tT][pP])\:\/\/)?([\w\.\-]+(\:[\w\.\&%\$\-]+)*@)?((([^\s\(\)\<\>\\\"\.\[\]\,@;:]+)(\.[^\s\(\)\<\>\\\"\.\[\]\,@;:]+)*(\.[a-zA-Z]{2,4}))|((([01]?\d{1,2}|2[0-4]\d|25[0-5])\.){3}([01]?\d{1,2}|2[0-4]\d|25[0-5])))(\b\:(6553[0-5]|655[0-2]\d|65[0-4]\d{2}|6[0-4]\d{3}|[1-5]\d{4}|[1-9]\d{0,3}|0)\b)?((\/[^\/][\w\.\,\?\'\\\/\+&%\$#\=~_\-@]*)*[^\.\,\?\"\'\(\)\[\]!;<>{}\s\x7F-\xFF])?)$/)){return false}else{return true}},validateUSDate:function(A){return validanguage.validateDate(A)},validateUSPhoneNumber:function(A){if(!A.match(/^\D?(\d{3})\D?\D?(\d{3})\D?(\d{4})$/)){return false}else{return true}},validateUSSSN:function(A){if(!A.match(/^\d{3}( |-|.){0,1}\d{2}( |-|.){0,1}\d{4}$/)){return false}else{return true}},validateUSZipCode:function(A){if(!A.match(/^\d{5}( |-|.){0,1}(\d{4})?$/)){return false}else{return true}},validationWrapper:function(e,customEvent){if(customEvent=="typing"){var $this=document.getElementById(e);var type="typing";var id=e}else{if(customEvent=="validateForm"){var $this=e;var form=validanguage.whichFormAmI($this);var type="submit"}else{var evt=e||window.evt;var $this=evt.currentTarget||evt.srcElement;var type=evt.type;if(type=="submit"){var form=validanguage.whichFormAmI($this)}else{var id=$this.id}if(customEvent=="typingTimeout"){if(validanguage.typingDelay[id]){window.clearTimeout(validanguage.typingDelay[id])}eval("validanguage.typingDelay[id] = window.setTimeout(\"validanguage.validationWrapper('"+id+"', 'typing')\", validanguage.settings.typingDelay );");return true}}}if(typeof validanguage.el[form]!="undefined"&&typeof validanguage.el[form].disabled!="undefined"&&validanguage.el[form].disabled==true){return true}var validations=(type=="submit")?validanguage.forms[form].validations:validanguage.el[id].handlers[type];var i=validations.length;var failedValidations={};if(type=="submit"){outerLoop:for(var j=0;j<i;j++){if(typeof validations[j]=="undefined"){continue outerLoop}var id=validations[j].element.id;var $this=validations[j].element;if((typeof failedValidations[id]!="undefined")||(typeof $this.disabled!="undefined"&&$this.disabled==true)||(typeof validanguage.el[id].disabled!="undefined"&&validanguage.el[id].disabled==true)){continue outerLoop}if(typeof validanguage.el[id].failed!="undefined"&&validanguage.el[id].failed==true){failedValidations[id]={failed:true,field:validanguage.el[id].field};continue outerLoop}var validationsCounter=validations[j].validationsCounter;var validation=validanguage.el[id].validations[validationsCounter];var funcs=validanguage.resolveArray(validation.name,"function");innerLoop:for(var m=funcs.length-1;m>-1;m--){if(typeof failedValidations[id]!="undefined"){continue innerLoop}var result=funcs[m].call($this,$this.value);if(result==false){failedValidations[id]=validation;failedValidations[id].field=validanguage.el[id].field;if(!validanguage.forms[form].settings.validateAllFieldsOnsubmit){break outerLoop}}else{var onsuccess=validanguage.getElSetting("onsuccess",id,validation);successHandlers=validanguage.resolveArray(onsuccess,"function");for(var n=successHandlers.length-1;n>-1;n--){successHandlers[n].call($this)}}}}if(validanguage.empty(failedValidations)){var submitStatus=true}else{for(var o in failedValidations){if(typeof failedValidations[o]=="function"){continue}var id=o;$this=document.getElementById(o);validation=failedValidations[o];var focusOnerror=validanguage.getElSetting("focusOnerror",id,validation);var errorMsg=validanguage.getElSetting("errorMsg",id,validation);var onerror=validanguage.getElSetting("onerror",id,validation);errorHandlers=validanguage.resolveArray(onerror,"function");for(var m=errorHandlers.length-1;m>-1;m--){errorHandlers[m].call($this,errorMsg)}var focusOnerror=validanguage.getElSetting("focusOnerror",id,validation);if(focusOnerror==true){$this.focus()}var showAlert=validanguage.getElSetting("showAlert",id,validation);if(showAlert){validanguage.safeAlert(errorMsg)}}var submitStatus=false}var transformation=(typeof validanguage.el[form]!="undefined")?validanguage.el[form].transformations:[];for(var n=transformation.length-1;n>-1;n--){transformations=validanguage.resolveArray(transformation[n].name,"function");for(var o=transformations.length-1;o>-1;o--){var returnStatus=transformations[o].call(document.getElementById(form),submitStatus,failedValidations);if(typeof returnStatus=="boolean"){submitStatus=returnStatus}}}if(customEvent=="validateForm"){return{result:submitStatus,failedValidations:failedValidations}}return submitStatus}else{if((typeof validanguage.el[id].disabled=="boolean"&&validanguage.el[id].disabled==true)||(typeof $this.disabled!="undefined"&&$this.disabled==true)){return }var transformations=validanguage.el[id].transformations;var p=transformations.length;for(var q=0;q<p;q++){if(typeof transformations[q]["on"+type]=="undefined"||transformations[q]["on"+type]!=true){continue}var transformation=validanguage.resolveArray(transformations[q].name,"function");for(var m=transformation.length-1;m>-1;m--){transformation[m].call($this)}}if(typeof validanguage.el[id].failed=="boolean"&&validanguage.el[id].failed==true){result=false}else{var validationCounter;outerLoop:for(var j=0;j<i;j++){if(typeof validations[j]=="undefined"){continue outerLoop}else{validationCounter=validations[j]}var validation=validanguage.el[id].validations[validationCounter];var funcs=validanguage.resolveArray(validation.name,"function");for(var m=funcs.length-1;m>-1;m--){var result=funcs[m].call($this,$this.value);if(result==false){break outerLoop}}}if(validationCounter==undefined){return true}}if(result==true){var onsuccess=validanguage.getElSetting("onsuccess",id,validation);successHandlers=validanguage.resolveArray(onsuccess,"function");for(var m=successHandlers.length-1;m>-1;m--){successHandlers[m].call($this)}return true}else{var focusOnerror=validanguage.getElSetting("focusOnerror",id,validation);var errorMsg=validanguage.getElSetting("errorMsg",id,validation);var onerror=validanguage.getElSetting("onerror",id,validation);errorHandlers=validanguage.resolveArray(onerror,"function");for(var m=errorHandlers.length-1;m>-1;m--){errorHandlers[m].call($this,errorMsg)}var focusOnerror=validanguage.getElSetting("focusOnerror",id,validation);if(focusOnerror==true){$this.focus()}var showAlert=validanguage.getElSetting("showAlert",id,validation);if(showAlert){validanguage.safeAlert(errorMsg)}return false}}},whichFormAmI:function(D){if(typeof D.id!="undefined"&&(!validanguage.empty(D.id))){return D.id}var A=document.forms;for(var C=0,B=A.length;C<B;C++){if(A[C]==D){return C}}}};validanguage.init();

