function deleteInline(a){if(a.indexOf("__inline__")==-1){return a}else{return a.substring(0,a.indexOf("__inline__"))}}function unformatNumber(a){var b=a.replace(THOUSAND_SEP,"");b=b.replace(DECIMAL_SEP,".");return b}function getField(a,b){var c=null;if(a.elements[b]){c=a.elements[b]}else if(document.getElementById(b)){c=document.getElementById(b)}return c}function isKeyAllowed(a,b){retval=false;var c;if(a==8){retval=true}else{for(var d=0;d<b.length;d++){c=b.charCodeAt(d);if(c==a){retval=true;break}}}return retval}function getBrowser(){brs=navigator.userAgent.toLowerCase();var a;if(brs.search(/msie\s(\d+(\.?\d)*)/)!=-1){a="msie"}else if(brs.search(/netscape[\/\s](\d+([\.-]\d)*)/)!=-1){a="netscape"}else if(brs.search(/firefox[\/\s](\d+([\.-]\d)*)/)!=-1){a="firefox"}else{a="unknown"}return a}function getComparisonDisplayed(a){comparisonDisplayed=a;if(a.substring(0,1)=="$"){a=a.substring(1,a.length);tmp=a.split(":");if(tmp.length==2){comparisonDisplayed=tmp[1]}else{comparisonDisplayed=a}}return comparisonDisplayed}function getDefaultMessage(a,b,c,d){if(b.length==0){b=a}var e=DEFAULT_MSG;if(c=="required"){e=REQUIRED_MSG.replace("{1}",b)}else if(c=="minlength"){e=MINLENGTH_MSG.replace("{1}",b).replace("{2}",d)}else if(c=="maxlength"){e=MAXLENGTH_MSG.replace("{1}",b).replace("{2}",d)}else if(c=="numrange"){e=NUMRANGE_MSG.replace("{1}",b).replace("{2}",d)}else if(c=="date"){e=DATE_MSG.replace("{1}",b)}else if(c=="numeric"){e=NUMERIC_MSG.replace("{1}",b)}else if(c=="integer"){e=INTEGER_MSG.replace("{1}",b)}else if(c=="double"){e=DOUBLE_MSG.replace("{1}",b)}else if(c=="equal"){e=EQUAL_MSG.replace("{1}",b).replace("{2}",getComparisonDisplayed(d))}else if(c=="notequal"){e=NOTEQUAL_MSG.replace("{1}",b).replace("{2}",getComparisonDisplayed(d))}else if(c=="alphabetic"){e=ALPHABETIC_MSG.replace("{1}",b)}else if(c=="alphanumeric"){e=ALPHANUMERIC_MSG.replace("{1}",b)}else if(c=="alnumhyphen"){e=ALNUMHYPHEN_MSG.replace("{1}",b)}else if(c=="alnumhyphenat"){e=ALNUMHYPHENAT_MSG.replace("{1}",b)}else if(c=="alphaspace"){e=ALPHASPACE_MSG.replace("{1}",b)}else if(c=="email"){e=EMAIL_MSG.replace("{1}",b)}else if(c=="regexp"){e=REGEXP_MSG.replace("{1}",b).replace("{2}",d)}else if(c=="date_lt"){e=DATE_LT_MSG.replace("{1}",b).replace("{2}",getComparisonDisplayed(d))}else if(c=="date_le"){e=DATE_LE_MSG.replace("{1}",b).replace("{2}",getComparisonDisplayed(d))}else if(c=="empty"){e=EMPTY_MSG.replace("{1}",b)}return e}function highlightMultipleClassName(a,b){re=new RegExp("(^|\\s)("+inputclassnormal+"|"+inputclasserror+")($|\\s)");a.className=strTrim((typeof a.className!="undefined"?a.className.replace(re,""):"")+" "+b)}function highlight(a,b){if(!isFocusSet&&b==inputclasserror){if(!a.type&&a.length>0&&a.item(0).type=="radio"){a.item(0).focus()}else{a.focus()}isFocusSet=true}if(a!=undef&&inputhighlight){if(multipleclassname){highlightMultipleClassName(a,b)}else{a.className=b}}}function threeParamRule(a){return a=="equal"||a=="notequal"||a=="minlength"||a=="maxlength"||a=="date_lt"||a=="date_le"||a=="implies"||a=="regexp"||a=="numrange"||a=="keypress"||a=="and"||a=="or"?true:false}function splitRule(a){var b=null;if(a!=undef){params=a.split(RULE_SEP);switch(params.length){case 2:b=new rule(params[0],params[1],null,null,null);break;case 3:if(threeParamRule(params[1])){b=new rule(params[0],params[1],params[2],null,null)}else if(params[2]=="pre-condition"||params[2]=="post-condition"||params[2]=="andor-operator"){b=new rule(params[0],params[1],null,"foo",params[2])}else{b=new rule(params[0],params[1],null,params[2],null)}break;case 4:if(threeParamRule(params[1])&&(params[3]=="pre-condition"||params[3]=="post-condition"||params[3]=="andor-operator")){b=new rule(params[0],params[1],params[2],"foo",params[3])}else{b=new rule(params[0],params[1],params[2],params[3],null)}break;default:debug("DEBUG: wrong definition of rule")}}return b}function makeRules(a){var b=new Array;if(a.length){for(var c=0;c<a.length;c++){b[c]=splitRule(a[c])}}else{b[0]=splitRule(a)}return b}function strTrim(a){return a.replace(/^\s+/,"").replace(/\s+$/,"")}function debug(a){if(debugmode){alert(a)}}function checkSelMul(a,b){if(b.ruleName=="required"){var c=false;opts=a.options;for(var d=0;d<opts.length;d++){if(opts[d].selected&&opts[d].value){c=true;break}}if(!c){highlight(a,inputclasserror);return b.alertMsg}}else if(b.ruleName=="equal"){var c=false;opts=a.options;for(var d=0;d<opts.length;d++){if(opts[d].selected&&opts[d].value==b.comparisonValue){c=true;break}}if(!c){highlight(a,inputclasserror);return b.alertMsg}}else if(b.ruleName=="notequal"){var c=false;opts=a.options;for(var d=0;d<opts.length;d++){if(opts[d].selected&&opts[d].value!=b.comparisonValue){c=true;break}}if(!c){highlight(a,inputclasserror);return b.alertMsg}}else{debug("DEBUG: rule "+b.ruleName+" not supported for "+a.type)}}function checkSelOne(a,b){if(b.ruleName=="required"){var c=false;var d=a.selectedIndex;if(d>=0&&a.options[d].value){c=true}if(!c){highlight(a,inputclasserror);return b.alertMsg}}else if(b.ruleName=="equal"){var c=false;var d=a.selectedIndex;if(d>=0&&a.options[d].value==b.comparisonValue){c=true}if(!c){highlight(a,inputclasserror);return b.alertMsg}}else if(b.ruleName=="notequal"){var c=false;var d=a.selectedIndex;if(d>=0&&a.options[d].value!=b.comparisonValue){c=true}if(!c){highlight(a,inputclasserror);return b.alertMsg}}else{debug("DEBUG: rule "+b.ruleName+" not supported for "+a.type)}}function checkCheckbox(a,b){if(b.ruleName=="required"){if(!a.checked){highlight(a,inputclasserror);return b.alertMsg}}else if(b.ruleName=="equal"){if(!a.checked||a.value!=b.comparisonValue){highlight(a,inputclasserror);return b.alertMsg}}else if(b.ruleName=="notequal"){if(a.checked&&a.value==b.comparisonValue){highlight(a,inputclasserror);return b.alertMsg}}else{debug("DEBUG: rule "+b.ruleName+" not supported for "+a.type)}}function checkddMMyyyy(a,b,c){retVal=true;if(a<1||a>31||b<1||b>12||a==31&&(b==2||b==4||b==6||b==9||b==11)||a>29&&b==2||a==29&&b==2&&(c%4>0||c%4==0&&c%100==0&&c%400>0)){retVal=false}return retVal}function checkNotEqual(a,b){error=null;var c=b.comparisonValue.indexOf("$")==0?true:false;var d="";if(c){toSplit=b.comparisonValue.substr(1);tmp=toSplit.split(":");if(tmp.length==2){d=this.getField(f,tmp[0]).value}else{d=this.getField(f,b.comparisonValue.substr(1)).value}}else{d=b.comparisonValue}if(a.value==d){highlight(a,inputclasserror);error=b.alertMsg}return error}function checkEqual(a,b){error=null;var c=b.comparisonValue.indexOf("$")==0?true:false;var d="";if(c){toSplit=b.comparisonValue.substr(1);tmp=toSplit.split(":");if(tmp.length==2){d=this.getField(f,tmp[0]).value}else{d=this.getField(f,b.comparisonValue.substr(1)).value}}else{d=b.comparisonValue}if(a.value!=d){highlight(a,inputclasserror);error=b.alertMsg}return error}function checkDateLessThan(a,b,c){error=null;var d=checkDate(a,b)==null?true:false;if(d&&a.value!=""){var e=DATE_FORMAT;ddStart=e.indexOf("dd");MMStart=e.indexOf("MM");yyyyStart=e.indexOf("yyyy");dd=a.value.substring(ddStart,ddStart+2);MM=a.value.substring(MMStart,MMStart+2);yyyy=a.value.substring(yyyyStart,yyyyStart+4);myDate=""+yyyy+MM+dd;strReg=e.replace("dd","[0-9]{2}").replace("MM","[0-9]{2}").replace("yyyy","[0-9]{4}");reg=new RegExp("^"+strReg+"$");var g=b.comparisonValue.indexOf("$")==0?true:false;var h="";if(g){toSplit=b.comparisonValue.substr(1);tmp=toSplit.split(":");if(tmp.length==2){h=this.getField(f,tmp[0]).value}else{h=this.getField(f,b.comparisonValue.substr(1)).value}}else{h=b.comparisonValue}if(!reg.test(h)){highlight(a,inputclasserror);error=b.alertMsg}else{cdd=h.substring(ddStart,ddStart+2);cMM=h.substring(MMStart,MMStart+2);cyyyy=h.substring(yyyyStart,yyyyStart+4);cDate=""+cyyyy+cMM+cdd;if(c){if(!checkddMMyyyy(cdd,cMM,cyyyy)||myDate>cDate){highlight(a,inputclasserror);error=b.alertMsg}}else{if(!checkddMMyyyy(cdd,cMM,cyyyy)||myDate>=cDate){highlight(a,inputclasserror);error=b.alertMsg}}}}else{if(a.value!=""){highlight(a,inputclasserror);error=b.alertMsg}}return error}function checkDate(a,b){error=null;if(a.value!=""){var c=DATE_FORMAT;ddReg=new RegExp("dd");MMReg=new RegExp("MM");yyyyReg=new RegExp("yyyy");if(!ddReg.test(c)||!MMReg.test(c)||!yyyyReg.test(c)){debug("DEBUG: locale format "+c+" not supported")}else{ddStart=c.indexOf("dd");MMStart=c.indexOf("MM");yyyyStart=c.indexOf("yyyy")}strReg=c.replace("dd","[0-9]{2}").replace("MM","[0-9]{2}").replace("yyyy","[0-9]{4}");reg=new RegExp("^"+strReg+"$");if(!reg.test(a.value)){highlight(a,inputclasserror);error=b.alertMsg}else{dd=a.value.substring(ddStart,ddStart+2);MM=a.value.substring(MMStart,MMStart+2);yyyy=a.value.substring(yyyyStart,yyyyStart+4);if(!checkddMMyyyy(dd,MM,yyyy)){highlight(a,inputclasserror);error=b.alertMsg}}}return error}function checkDouble(a,b){var c=DECIMAL_SEP;reg=new RegExp("^[-+]{0,1}[0-9]*["+c+"]{0,1}[0-9]*$");if(!reg.test(a.value)){highlight(a,inputclasserror);return b.alertMsg}}function checkInteger(a,b){reg=new RegExp("^[-+]{0,1}[0-9]*$");if(!reg.test(a.value)){highlight(a,inputclasserror);return b.alertMsg}}function checkText(el,myRule){err=null;if(trimenabled){el.value=strTrim(el.value)}if(myRule.ruleName=="required"){if(el.value==null||el.value==""){highlight(el,inputclasserror);err=myRule.alertMsg}}else if(myRule.ruleName=="equal"){err=checkEqual(el,myRule)}else if(myRule.ruleName=="notequal"){err=checkNotEqual(el,myRule)}else if(myRule.ruleName=="numeric"){reg=new RegExp("^[0-9]*$");if(!reg.test(el.value)){highlight(el,inputclasserror);err=myRule.alertMsg}}else if(myRule.ruleName=="alphabetic"){reg=new RegExp(alphabetic_regex);if(!reg.test(el.value)){highlight(el,inputclasserror);err=myRule.alertMsg}}else if(myRule.ruleName=="alphanumeric"){reg=new RegExp(alphanumeric_regex);if(!reg.test(el.value)){highlight(el,inputclasserror);err=myRule.alertMsg}}else if(myRule.ruleName=="alnumhyphen"){reg=new RegExp(alnumhyphen_regex);if(!reg.test(el.value)){highlight(el,inputclasserror);err=myRule.alertMsg}}else if(myRule.ruleName=="alnumhyphenat"){reg=new RegExp(alnumhyphenat_regex);if(!reg.test(el.value)){highlight(el,inputclasserror);err=myRule.alertMsg}}else if(myRule.ruleName=="alphaspace"){reg=new RegExp(alphaspace_regex);if(!reg.test(el.value)){highlight(el,inputclasserror);err=myRule.alertMsg}}else if(myRule.ruleName=="email"){reg=new RegExp(email_regex);if(!reg.test(el.value)){highlight(el,inputclasserror);err=myRule.alertMsg}}else if(myRule.ruleName=="maxlength"){if(isNaN(myRule.comparisonValue)){debug("DEBUG: comparisonValue for rule "+myRule.ruleName+" not a number")}else if(el.value.length>myRule.comparisonValue){highlight(el,inputclasserror);err=myRule.alertMsg}}else if(myRule.ruleName=="minlength"){if(isNaN(myRule.comparisonValue)){debug("DEBUG: comparisonValue for rule "+myRule.ruleName+" not a number")}else if(el.value.length<myRule.comparisonValue){highlight(el,inputclasserror);err=myRule.alertMsg}}else if(myRule.ruleName=="numrange"){reg=new RegExp("^[-+]{0,1}[0-9]*[.]{0,1}[0-9]*$");if(!reg.test(unformatNumber(el.value))){highlight(el,inputclasserror);err=myRule.alertMsg}else{regRange=new RegExp("^[0-9]+-[0-9]+$");if(!regRange.test(myRule.comparisonValue)){debug("DEBUG: comparisonValue for rule "+myRule.ruleName+" not in format number1-number2")}else{rangeVal=myRule.comparisonValue.split("-");if(eval(unformatNumber(el.value))<eval(rangeVal[0])||eval(unformatNumber(el.value))>eval(rangeVal[1])){highlight(el,inputclasserror);err=myRule.alertMsg}}}}else if(myRule.ruleName=="regexp"){reg=new RegExp(myRule.comparisonValue);if(!reg.test(el.value)){highlight(el,inputclasserror);err=myRule.alertMsg}}else if(myRule.ruleName=="integer"){err=checkInteger(el,myRule)}else if(myRule.ruleName=="double"){err=checkDouble(el,myRule)}else if(myRule.ruleName=="date"){err=checkDate(el,myRule)}else if(myRule.ruleName=="date_lt"){err=checkDateLessThan(el,myRule,false)}else if(myRule.ruleName=="date_le"){err=checkDateLessThan(el,myRule,true)}else if(myRule.ruleName=="keypress"){}else if(myRule.ruleName=="empty"){if(el.value!=null&&el.value!=""){highlight(el,inputclasserror);err=myRule.alertMsg}}else{debug("DEBUG: rule "+myRule.ruleName+" not supported for "+el.type)}return err}function checkRadio(a,b){var c=null;if(b.ruleName=="required"){var d=a;var e=false;if(isNaN(d.length)&&d.checked){e=true}else{for(var f=0;f<d.length;f++){if(d[f].checked){e=true;break}}}if(!e){highlight(a,inputclasserror);c=b.alertMsg}}else if(b.ruleName=="equal"){var d=a;var e=false;if(isNaN(d.length)&&d.checked){if(d.value==b.comparisonValue){e=true}}else{for(var f=0;f<d.length;f++){if(d[f].checked){if(d[f].value==b.comparisonValue){e=true;break}}}}if(!e){c=b.alertMsg}}else if(b.ruleName=="notequal"){var d=a;var e=false;if(isNaN(d.length)&&d.checked){if(d.value!=b.comparisonValue){e=true}}else{for(var f=0;f<d.length;f++){if(d[f].checked){if(d[f].value!=b.comparisonValue){e=true;break}}}}if(!e){c=b.alertMsg}}else{debug("DEBUG: rule "+b.ruleName+" not supported for radio")}return c}function checkArguments(a){if(a.length<4){debug("DEBUG: rule requires four arguments at least");return false}else if(a[0]==null||a[1]==null){debug("DEBUG: el and ruleName are required");return false}return true}function checkRule(f,myRule){retVal=null;if(myRule!=null){if(myRule.ruleName=="custom"){var customFunction=" retVal = "+myRule.el;eval(customFunction)}else if(myRule.ruleName=="and"){var op_1=myRule.el;var op_next=myRule.comparisonValue;if(checkRule(f,internalRules[op_1])!=null){retVal=myRule.alertMsg;if(myRule.ruleType=="pre-condition"||myRule.ruleType=="andor-operator"){};}else{var op_k=op_next.split("-");for(var k=0;k<op_k.length;k++){if(checkRule(f,internalRules[op_k[k]])!=null){retVal=myRule.alertMsg;if(myRule.ruleType=="pre-condition"||myRule.ruleType=="andor-operator"){}break}}}}else if(myRule.ruleName=="or"){var op_1=myRule.el;var op_next=myRule.comparisonValue;var success=false;if(checkRule(f,internalRules[op_1])==null){success=true}else{if(myRule.ruleType=="pre-condition"||myRule.ruleType=="andor-operator"){}var op_k=op_next.split("-");for(var k=0;k<op_k.length;k++){if(checkRule(f,internalRules[op_k[k]])==null){success=true;break}else{if(myRule.ruleType=="pre-condition"||myRule.ruleType=="andor-operator"){};}}}if(success){highlight(getField(f,internalRules[op_1].el),inputclassnormal);var op_k=op_next.split("-");for(var k=0;k<op_k.length;k++){highlight(getField(f,internalRules[op_k[k]].el),inputclassnormal)}}else{retVal=myRule.alertMsg}}else{el=getField(f,myRule.el);if(el==null){debug("DEBUG: could not find element "+myRule.el);return null}var err=null;if(el.type){if(el.type=="hidden"||el.type=="text"||el.type=="password"||el.type=="textarea"){err=checkText(el,myRule)}else if(el.type=="checkbox"){err=checkCheckbox(el,myRule)}else if(el.type=="select-one"){err=checkSelOne(el,myRule)}else if(el.type=="select-multiple"){err=checkSelMul(el,myRule)}else if(el.type=="radio"){err=checkRadio(el,myRule)}else{debug("DEBUG: type "+el.type+" not supported")}}else{err=checkRadio(el,myRule)}retVal=err}}return retVal}function rule(a,b,c,d,e){if(!checkArguments(arguments)){return false}tmp=a.split(":");nameDisplayed="";if(tmp.length==2){nameDisplayed=tmp[1];a=tmp[0]}this.el=a;this.nameDisplayed=nameDisplayed;this.ruleName=b;this.comparisonValue=c;this.ruleType=e;if(d==undef||d==null){this.alertMsg=getDefaultMessage(a,nameDisplayed,b,c)+"__inline__"+this.el}else{this.alertMsg=d+"__inline__"+this.el}}function displayJsVar(a){document.getElementById(errorsdiv).className="";document.getElementById(errorsdiv).style.display="none";if(a!=null&&a.length>0){for(var b=0;b<a.length;b++){a[b]=deleteInline(a[b])}var c="";c+="<script>var jsErrors;</script>";document.getElementById(errorsdiv).innerHTML=c;jsErrors=a;return false}else{document.getElementById(errorsdiv).innerHTML="<script>var jsErrors;</script>";return true}}function clearAllInlineSpans(){var a=document.getElementsByTagName("span");for(var b=0;b<a.length;b++){var c=a[b].id;if(c.indexOf(errorsdiv+"_")==0){document.getElementById(c).innerHTML="";document.getElementById(c).className="";document.getElementById(c).style.display="none"}}}function displayInline(a){if(a!=null&&a.length>0){var b=new Array;var c=0;for(var d=0;d<a.length;d++){var e=a[d].substring(a[d].indexOf("__inline__")+10);if(document.getElementById(errorsdiv+"_"+e)){document.getElementById(errorsdiv+"_"+e).innerHTML=deleteInline(a[d]);document.getElementById(errorsdiv+"_"+e).className=innererror;document.getElementById(errorsdiv+"_"+e).style.display=""}else{b[c]=a[d];c++}}if(c>0){displayInnerHtml(b)}return false}else{return true}}function displayInnerHtml(a){if(a!=null&&a.length>0){var b="";if(strTrim(HEADER_MSG).length>0){b+=HEADER_MSG}b+="<ul>";for(var c=0;c<a.length;c++){b+="<li>"+deleteInline(a[c])+"</li>"}b+="</ul>";if(strTrim(FOOTER_MSG).length>0){b+=FOOTER_MSG}document.getElementById(errorsdiv).innerHTML=b;document.getElementById(errorsdiv).className=innererror;document.getElementById(errorsdiv).style.display="block";return false}else{document.getElementById(errorsdiv).innerHTML="";document.getElementById(errorsdiv).className="";document.getElementById(errorsdiv).style.display="none";return true}}function displayClassic(a){var b="";if(a!=null&&a.length>0){if(strTrim(HEADER_MSG).length>0){b+=HEADER_MSG+"\n\n"}for(var c=0;c<a.length;c++){b+=" "+deleteInline(a[c])+"\n"}if(strTrim(FOOTER_MSG).length>0){b+="\n"+FOOTER_MSG}alert(b);return false}else{return true}}function displayAlert(a,b){var c=null;clearAllInlineSpans();if(b=="classic"){c=displayClassic(a)}else if(b=="innerHtml"){c=displayInnerHtml(a)}else if(b=="inline"){c=displayInline(a)}else if(b=="jsVar"){c=displayJsVar(a)}else{debug("DEBUG: alert type "+b+" not supported")}return c}function checkKeyPress(a,b,c){var d=null;if(getBrowser()=="msie"){d=window.event.keyCode}else if(getBrowser()=="netscape"||getBrowser()=="firefox"){d=a.which}var e=makeRules(c);var f=true;if(e.length){for(var g=0;g<e.length;g++){var h=e[g];if(h.ruleName=="keypress"&&h.el==b.name){f=isKeyAllowed(d,h.comparisonValue);break}}}else{var h=e;if(h.ruleName=="keypress"&&h.el==b.name){f=isKeyAllowed(d,h.comparisonValue)}}if(!f){if(getBrowser()=="msie"){window.event.keyCode=0}else if(getBrowser()=="netscape"||getBrowser()=="firefox"){a.preventDefault();a.stopPropagation();a.returnValue=false}}return false}function performCheck(a,b,c){isFocusSet=false;var d=makeRules(b);internalRules=makeRules(b);this.f=document.forms[a];if(!this.f){debug("DEBUG: could not find form object "+a);return null}var e=new Array;var g=0;if(d.length){for(var h=0;h<d.length;h++){var i=d[h];if(i!=null){highlight(getField(f,i.el),inputclassnormal)}}}else{if(d!=null){highlight(getField(f,d.el),inputclassnormal)}}if(d.length){for(var h=0;h<d.length;h++){var i=d[h];var j=null;if(i==null){}else if(i.ruleType=="pre-condition"||i.ruleType=="post-condition"||i.ruleType=="andor-operator"){}else if(i.ruleName=="implies"){pre=i.el;post=i.comparisonValue;var k=getField(f,d[pre].el).className;if(checkRule(f,d[pre])==null&&checkRule(f,d[post])!=null){j=deleteInline(i.alertMsg)+"__inline__"+d[post].el}else if(checkRule(f,d[pre])!=null){getField(f,d[pre].el).className=k}}else{j=checkRule(f,i)}if(j!=null){e[g]=j;g++}}}else{var l=d;err=checkRule(f,l);if(err!=null){e[0]=err}}return displayAlert(e,c)}var undef;var isFocusSet;var internalRules;inputhighlight=true;multipleclassname=true;inputclasserror="inputError";inputclassnormal="inputNormal";innererror="innerError";errorsdiv="errorsDiv";debugmode=false;trimenabled=true;DECIMAL_SEP=".";THOUSAND_SEP=",";DATE_FORMAT="MM-dd-yyyy";alphabetic_regex="^[A-Za-z]*$";alphanumeric_regex="^[A-Za-z0-9]*$";alnumhyphen_regex="^[A-Za-z0-9-_]*$";alnumhyphenat_regex="^[A-Za-z0-9-_@]*$";alphaspace_regex="^[A-Za-z0-9-_ \n\r\t]*$";email_regex="^(([0-9a-zA-Z]+[-._+&])*[0-9a-zA-Z]+@([-0-9a-zA-Z]+[.])+[a-zA-Z]{2,6}){0,1}$";RULE_SEP="|";HEADER_MSG="";FOOTER_MSG="";DEFAULT_MSG="";REQUIRED_MSG="Enter {1}.";ALPHABETIC_MSG="{1} is not valid. Characters allowed: A-Za-z";ALPHANUMERIC_MSG="{1} is not valid. Characters allowed: A-Za-z0-9";ALNUMHYPHEN_MSG="{1} is not valid. Characters allowed: A-Za-z0-9-_";ALNUMHYPHENAT_MSG="{1} is not valid. Characters allowed: A-Za-z0-9-_@";ALPHASPACE_MSG="{1} is not valid. Characters allowed: A-Za-z0-9-_space";MINLENGTH_MSG="{1} must be at least {2} characters long.";MAXLENGTH_MSG="{1} must be no more than {2} characters long.";NUMRANGE_MSG="{1} must be a number in {2} range.";DATE_MSG="{1} is not a valid date, using the format "+DATE_FORMAT+".";NUMERIC_MSG="{1} must be a number.";INTEGER_MSG="{1} must be an integer";DOUBLE_MSG="{1} must be a decimal number.";REGEXP_MSG="{1} is not valid. Format allowed: {2}.";EQUAL_MSG="{1} must be equal to {2}.";NOTEQUAL_MSG="{1} must be not equal to {2}.";DATE_LT_MSG="{1} must be previous to {2}.";DATE_LE_MSG="{1} must be previous or equal to {2}.";EMAIL_MSG="{1} must be a valid e-mail.";EMPTY_MSG="{1} must be empty."
