function validateFloatRange(_1){
var _2=true;
var _3=null;
var i=0;
var _5=new Array();
oRange=new floatRange();
for(x in oRange){
var _6=_1[oRange[x][0]];
if(_6){
if((_6.type=="text"||_6.type=="textarea")&&(_6.value.length>0)){
var _7=parseFloat(oRange[x][2]("min"));
var _8=parseFloat(oRange[x][2]("max"));
var _9=parseFloat(_6.value);
if(!(_9>=_7&&_9<=_8)){
if(i==0){
_3=_6;
}
_5[i]=new Object();
_5[i].error=oRange[x][1];
_5[i].name=oRange[x][0];
i++;
_2=false;
}
}
}
}
reportErrors(_5,_3);
return _2;
}
function validateUnique(_a){
var _b=true;
return _b;
}
function validateByte(_c){
var _d=true;
var _e=null;
var i=0;
var _10=new Array();
oByte=new ByteValidations();
for(x in oByte){
var _11=_c[oByte[x][0]];
if(_11){
if(_11.type=="text"||_11.type=="textarea"||_11.type=="select-one"||_11.type=="radio"){
var _12="";
if(_11.type=="select-one"){
var si=_11.selectedIndex;
if(si>=0){
_12=_11.options[si].value;
}
}else{
_12=_11.value;
}
if(_12.length>0){
if(!isAllDigits(_12)){
_d=false;
if(i==0){
_e=_11;
}
_10[i]=new Object();
_10[i].error=oByte[x][1];
_10[i].name=oByte[x][0];
i++;
}else{
var _14=parseInt(_12);
if(isNaN(_14)||!(_14>=-128&&_14<=127)){
if(i==0){
_e=_11;
}
_10[i]=new Object();
_10[i].error=oByte[x][1];
_10[i].name=oByte[x][0];
i++;
_d=false;
}
}
}
}
}
}
reportErrors(_10,_e);
return _d;
}
function validateMaxLength(_15){
var _16=true;
var _17=null;
var i=0;
var _19=new Array();
oMaxLength=new maxlength();
for(x in oMaxLength){
var _1a=_15[oMaxLength[x][0]];
if(_1a){
if(_1a.type=="text"||_1a.type=="textarea"||_1a.type=="file"||_1a.type=="select-one"||_1a.type=="radio"||_1a.type=="password"){
var _1b=parseInt(oMaxLength[x][2]("maxlength"));
if(_1a.value.length>_1b){
if(i==0){
_17=_1a;
}
_19[i]=new Object();
_19[i].error=oMaxLength[x][1];
_19[i].name=oMaxLength[x][0];
i++;
_16=false;
}
}
}
}
reportErrors(_19,_17);
return _16;
}
function validateRequired(_1c){
var _1d=true;
var _1e=null;
var i=0;
var _20=new Array();
oRequired=new required();
for(x in oRequired){
var _21=_1c[oRequired[x][0]];
if(_21){
if(_21.type=="text"||_21.type=="textarea"||_21.type=="file"||_21.type=="select-one"||_21.type=="radio"||_21.type=="password"){
var _22="";
if(_21.type=="select-one"){
var si=_21.selectedIndex;
if(si>=0){
_22=_21.options[si].value;
}
}else{
_22=_21.value;
}
if(trim(_22).length==0){
if(i==0){
_1e=_21;
}
_20[i]=new Object();
_20[i].error=oRequired[x][1];
_20[i].name=oRequired[x][0];
i++;
_1d=false;
}
}
}
}
reportErrors(_20,_1e);
return _1d;
}
function trim(s){
return s.replace(/^\s*/,"").replace(/\s*$/,"");
}
function validateInteger(_25){
var _26=true;
var _27=null;
var i=0;
var _29=new Array();
oInteger=new IntegerValidations();
for(x in oInteger){
var _2a=_25[oInteger[x][0]];
if(_2a){
if(_2a.type=="text"||_2a.type=="textarea"||_2a.type=="select-one"||_2a.type=="radio"){
var _2b="";
if(_2a.type=="select-one"){
var si=_2a.selectedIndex;
if(si>=0){
_2b=_2a.options[si].value;
}
}else{
_2b=_2a.value;
}
if(_2b.length>0){
if(!isAllDigits(_2b)){
_26=false;
if(i==0){
_27=_2a;
}
_29[i]=new Object();
_29[i].error=oInteger[x][1];
_29[i].name=oInteger[x][0];
i++;
}else{
var _2d=parseInt(_2b);
if(isNaN(_2d)||!(_2d>=-2147483648&&_2d<=2147483647)){
if(i==0){
_27=_2a;
}
_29[i]=new Object();
_29[i].error=oInteger[x][1];
_29[i].name=oInteger[x][0];
i++;
_26=false;
}
}
}
}
}
}
reportErrors(_29,_27);
return _26;
}
function isAllDigits(_2e){
_2e=_2e.toString();
var _2f="0123456789";
var _30=0;
if(_2e.substring(0,2)=="0x"){
_2f="0123456789abcdefABCDEF";
_30=2;
}else{
if(_2e.charAt(0)=="0"){
_2f="01234567";
_30=1;
}else{
if(_2e.charAt(0)=="-"){
_30=1;
}
}
}
for(var n=_30;n<_2e.length;n++){
if(_2f.indexOf(_2e.substring(n,n+1))==-1){
return false;
}
}
return true;
}
function validateRange(_32){
return validateIntRange(_32);
}
function validateCreditCard(_33){
var _34=true;
var _35=null;
var i=0;
var _37=new Array();
oCreditCard=new creditCard();
for(x in oCreditCard){
if((_33[oCreditCard[x][0]].type=="text"||_33[oCreditCard[x][0]].type=="textarea")&&(_33[oCreditCard[x][0]].value.length>0)){
if(!luhnCheck(_33[oCreditCard[x][0]].value)){
if(i==0){
_35=_33[oCreditCard[x][0]];
}
_37[i]=new Object();
_37[i].error=oCreditCard[x][1];
_37[i].name=oCreditCard[x][0];
i++;
_34=false;
}
}
}
reportErrors(_37,_35);
return _34;
}
function luhnCheck(_38){
if(isLuhnNum(_38)){
var _39=_38.length;
var _3a=_39&1;
var sum=0;
for(var _3c=0;_3c<_39;_3c++){
var _3d=parseInt(_38.charAt(_3c));
if(!((_3c&1)^_3a)){
_3d*=2;
if(_3d>9){
_3d-=9;
}
}
sum+=_3d;
}
if(sum==0){
return false;
}
if(sum%10==0){
return true;
}
}
return false;
}
function isLuhnNum(_3e){
_3e=_3e.toString();
if(_3e.length==0){
return false;
}
for(var n=0;n<_3e.length;n++){
if((_3e.substring(n,n+1)<"0")||(_3e.substring(n,n+1)>"9")){
return false;
}
}
return true;
}
function validateDate(_40){
var _41=true;
var _42=null;
var i=0;
var _44=new Array();
oDate=new DateValidations();
for(x in oDate){
var _45=_40[oDate[x][0]].value;
var _46=oDate[x][2]("datePatternStrict");
if(_46==null){
_46=oDate[x][2]("datePattern");
}
if((_40[oDate[x][0]].type=="text"||_40[oDate[x][0]].type=="textarea")&&(_45.length>0)&&(_46.length>0)){
var _47="MM";
var DAY="dd";
var _49="yyyy";
var _4a=_46.indexOf(_47);
var _4b=_46.indexOf(DAY);
var _4c=_46.indexOf(_49);
if((_4b<_4c&&_4b>_4a)){
var _4d=_4a+_47.length;
var _4e=_4b+DAY.length;
var _4f=_46.substring(_4d,_4d+1);
var _50=_46.substring(_4e,_4e+1);
if(_4d==_4b&&_4e==_4c){
dateRegexp=new RegExp("^(\\d{2})(\\d{2})(\\d{4})$");
}else{
if(_4d==_4b){
dateRegexp=new RegExp("^(\\d{2})(\\d{2})["+_50+"](\\d{4})$");
}else{
if(_4e==_4c){
dateRegexp=new RegExp("^(\\d{2})["+_4f+"](\\d{2})(\\d{4})$");
}else{
dateRegexp=new RegExp("^(\\d{2})["+_4f+"](\\d{2})["+_50+"](\\d{4})$");
}
}
}
var _51=dateRegexp.exec(_45);
if(_51!=null){
if(!isValidDate(_51[2],_51[1],_51[3])){
if(i==0){
_42=_40[oDate[x][0]];
}
_44[i]=new Object();
_44[i].error=oDate[x][1];
_44[i].name=oDate[x][0];
i++;
_41=false;
}
}else{
if(i==0){
_42=_40[oDate[x][0]];
}
_44[i]=new Object();
_44[i].error=oDate[x][1];
_44[i].name=oDate[x][0];
i++;
_41=false;
}
}else{
if((_4a<_4c&&_4a>_4b)){
var _4d=_4b+DAY.length;
var _4e=_4a+_47.length;
var _4f=_46.substring(_4d,_4d+1);
var _50=_46.substring(_4e,_4e+1);
if(_4d==_4a&&_4e==_4c){
dateRegexp=new RegExp("^(\\d{2})(\\d{2})(\\d{4})$");
}else{
if(_4d==_4a){
dateRegexp=new RegExp("^(\\d{2})(\\d{2})["+_50+"](\\d{4})$");
}else{
if(_4e==_4c){
dateRegexp=new RegExp("^(\\d{2})["+_4f+"](\\d{2})(\\d{4})$");
}else{
dateRegexp=new RegExp("^(\\d{2})["+_4f+"](\\d{2})["+_50+"](\\d{4})$");
}
}
}
var _51=dateRegexp.exec(_45);
if(_51!=null){
if(!isValidDate(_51[1],_51[2],_51[3])){
if(i==0){
_42=_40[oDate[x][0]];
}
_44[i]=new Object();
_44[i].error=oDate[x][1];
_44[i].name=oDate[x][0];
i++;
_41=false;
}
}else{
if(i==0){
_42=_40[oDate[x][0]];
}
_44[i]=new Object();
_44[i].error=oDate[x][1];
_44[i].name=oDate[x][0];
i++;
_41=false;
}
}else{
if((_4a>_4c&&_4a<_4b)){
var _4d=_4c+_49.length;
var _4e=_4a+_47.length;
var _4f=_46.substring(_4d,_4d+1);
var _50=_46.substring(_4e,_4e+1);
if(_4d==_4a&&_4e==_4b){
dateRegexp=new RegExp("^(\\d{4})(\\d{2})(\\d{2})$");
}else{
if(_4d==_4a){
dateRegexp=new RegExp("^(\\d{4})(\\d{2})["+_50+"](\\d{2})$");
}else{
if(_4e==_4b){
dateRegexp=new RegExp("^(\\d{4})["+_4f+"](\\d{2})(\\d{2})$");
}else{
dateRegexp=new RegExp("^(\\d{4})["+_4f+"](\\d{2})["+_50+"](\\d{2})$");
}
}
}
var _51=dateRegexp.exec(_45);
if(_51!=null){
if(!isValidDate(_51[3],_51[2],_51[1])){
if(i==0){
_42=_40[oDate[x][0]];
}
_44[i]=new Object();
_44[i].error=oDate[x][1];
_44[i].name=oDate[x][0];
i++;
_41=false;
}
}else{
if(i==0){
_42=_40[oDate[x][0]];
}
_44[i]=new Object();
_44[i].error=oDate[x][1];
_44[i].name=oDate[x][0];
i++;
_41=false;
}
}else{
if(i==0){
_42=_40[oDate[x][0]];
}
_44[i]=new Object();
_44[i].error=oDate[x][1];
_44[i].name=oDate[x][0];
i++;
_41=false;
}
}
}
}
}
reportErrors(_44,_42);
return _41;
}
function isValidDate(day,_53,_54){
if(_53<1||_53>12){
return false;
}
if(day<1||day>31){
return false;
}
if((_53==4||_53==6||_53==9||_53==11)&&(day==31)){
return false;
}
if(_53==2){
var _55=(_54%4==0&&(_54%100!=0||_54%400==0));
if(day>29||(day==29&&!_55)){
return false;
}
}
return true;
}
function validateIntRange(_56){
var _57=true;
var _58=null;
var i=0;
var _5a=new Array();
oRange=new intRange();
for(x in oRange){
var _5b=_56[oRange[x][0]];
if(_5b){
if((_5b.type=="text"||_5b.type=="textarea")&&(_5b.value.length>0)){
var _5c=parseInt(oRange[x][2]("min"));
var _5d=parseInt(oRange[x][2]("max"));
var _5e=parseInt(_5b.value);
if(!(_5e>=_5c&&_5e<=_5d)){
if(i==0){
_58=_5b;
}
_5a[i]=new Object();
_5a[i].error=oRange[x][1];
_5a[i].name=oRange[x][0];
i++;
_57=false;
}
}
}
}
reportErrors(_5a,_58);
return _57;
}
function validateTwoFields(_5f){
var _60=true;
var _61=null;
var i=0;
var _63=new Array();
oTwoFields=new twofields();
for(x in oTwoFields){
var _64=_5f[oTwoFields[x][0]];
var _65=_5f[oTwoFields[x][2]("secondProperty")];
if(_64){
if(_64.type=="text"||_64.type=="textarea"||_64.type=="select-one"||_64.type=="radio"||_64.type=="password"){
var _66;
var _67;
if(_64.type=="select-one"){
var si=_64.selectedIndex;
_66=_64.options[si].value;
_67=_65.options[si].value;
}else{
_66=_64.value;
_67=_65.value;
}
if(_66&&_67&&_66!=_67){
if(i==0){
_61=_64;
}
_63[i]=new Object();
_63[i].error=oTwoFields[x][1];
_63[i].name=oTwoFields[x][0];
i++;
_60=false;
}
}
}
}
reportErrors(_63,_61);
return _60;
}
function validateShort(_69){
var _6a=true;
var _6b=null;
var i=0;
var _6d=new Array();
oShort=new ShortValidations();
for(x in oShort){
var _6e=_69[oShort[x][0]];
if(_6e){
if(_6e.type=="text"||_6e.type=="textarea"||_6e.type=="select-one"||_6e.type=="radio"){
var _6f="";
if(_6e.type=="select-one"){
var si=_6e.selectedIndex;
if(si>=0){
_6f=_6e.options[si].value;
}
}else{
_6f=_6e.value;
}
if(_6f.length>0){
if(!isAllDigits(_6f)){
_6a=false;
if(i==0){
_6b=_6e;
}
_6d[i]=new Object();
_6d[i].error=oShort[x][1];
_6d[i].name=oShort[x][0];
i++;
}else{
var _71=parseInt(_6f);
if(isNaN(_71)||!(_71>=-32768&&_71<=32767)){
if(i==0){
_6b=_6e;
}
_6d[i]=new Object();
_6d[i].error=oShort[x][1];
_6d[i].name=oShort[x][0];
i++;
_6a=false;
}
}
}
}
}
}
reportErrors(_6d,_6b);
return _6a;
}
function validateFloat(_72){
var _73=true;
var _74=null;
var i=0;
var _76=new Array();
oFloat=new FloatValidations();
for(x in oFloat){
var _77=_72[oFloat[x][0]];
if(_77){
if(_77.type=="text"||_77.type=="textarea"||_77.type=="select-one"||_77.type=="radio"){
var _78="";
if(_77.type=="select-one"){
var si=_77.selectedIndex;
if(si>=0){
_78=_77.options[si].value;
}
}else{
_78=_77.value;
}
if(_78.length>0){
var _7a=_78.split(".");
var _7b=_7a.join("");
if(!isAllDigits(_7b)){
_73=false;
if(i==0){
_74=_77;
}
_76[i]=new Object();
_76[i].error=oFloat[x][1];
_76[i].name=oFloat[x][0];
i++;
}else{
var _7c=parseFloat(_78);
if(isNaN(_7c)){
if(i==0){
_74=_77;
}
_76[i]=new Object();
_76[i].error=oFloat[x][1];
_76[i].name=oFloat[x][0];
i++;
_73=false;
}
}
}
}
}
}
reportErrors(_76,_74);
return _73;
}
function validateEmail(_7d){
var _7e=true;
var _7f=null;
var i=0;
var _81=new Array();
oEmail=new email();
for(x in oEmail){
if((_7d[oEmail[x][0]].type=="text"||_7d[oEmail[x][0]].type=="textarea")&&(_7d[oEmail[x][0]].value.length>0)){
if(!checkEmail(_7d[oEmail[x][0]].value)){
if(i==0){
_7f=_7d[oEmail[x][0]];
}
_81[i]=new Object();
_81[i].error=oEmail[x][1];
_81[i].name=oEmail[x][0];
i++;
_7e=false;
}
}
}
reportErrors(_81,_7f);
return _7e;
}
function checkEmail(_82){
if(_82.length==0){
return true;
}
var _83=/^(.+)@(.+)$/;
var _84="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]";
var _85="[^\\s"+_84+"]";
var _86="(\"[^\"]*\")";
var _87=/^(\d{1,3})[.](\d{1,3})[.](\d{1,3})[.](\d{1,3})$/;
var _88=_85+"+";
var _89="("+_88+"|"+_86+")";
var _8a=new RegExp("^"+_89+"(\\."+_89+")*$");
var _8b=new RegExp("^"+_88+"(\\."+_88+")*$");
var _8c=_82.match(_83);
if(_8c==null){
return false;
}
var _8d=_8c[1];
var _8e=_8c[2];
if(_8d.match(_8a)==null){
return false;
}
var _8f=_8e.match(_87);
if(_8f!=null){
for(var i=1;i<=4;i++){
if(_8f[i]>255){
return false;
}
}
return true;
}
var _91=_8e.match(_8b);
if(_91==null){
return false;
}
var _92=new RegExp(_88,"g");
var _93=_8e.match(_92);
var len=_93.length;
if((_93[_93.length-1].length<2)||(_93[_93.length-1].length>4)){
return false;
}
if(len<2){
return false;
}
return true;
}
function validateMask(_95){
var _96=true;
var _97=null;
var i=0;
var _99=new Array();
oMasked=new mask();
for(x in oMasked){
var _9a=_95[oMasked[x][0]];
if(_9a){
if((_9a.type=="text"||_9a.type=="textarea")&&(_9a.value.length>0)){
if(!matchPattern(_9a.value,oMasked[x][2]("mask"))){
if(i==0){
_97=_9a;
}
_99[i]=new Object();
_99[i].error=oMasked[x][1];
_99[i].name=oMasked[x][0];
i++;
_96=false;
}
}
}
}
reportErrors(_99,_97);
return _96;
}
function matchPattern(_9b,_9c){
return _9c.exec(_9b);
}
function validateMinLength(_9d){
var _9e=true;
var _9f=null;
var i=0;
var _a1=new Array();
oMinLength=new minlength();
for(x in oMinLength){
var _a2=_9d[oMinLength[x][0]];
if(_a2){
if(_a2.type=="text"||_a2.type=="textarea"||_a2.type=="file"||_a2.type=="select-one"||_a2.type=="radio"||_a2.type=="password"){
var _a3=parseInt(oMinLength[x][2]("minlength"));
if((trim(_a2.value).length>0)&&(_a2.value.length<_a3)){
if(i==0){
_9f=_a2;
}
_a1[i]=new Object();
_a1[i].error=oMinLength[x][1];
_a1[i].name=oMinLength[x][0];
i++;
_9e=false;
}
}
}
}
reportErrors(_a1,_9f);
return _9e;
}
function reportErrors(_a4,_a5){
if(_a4.length>0){
if(this&&this.pageHelper&&this.pageHelper.addToErrors){
this.pageHelper.addToErrors(_a4);
}else{
if(_a5){
_a5.focus();
}
var _a6=new Array();
for(var i=0;i<_a4.length;i++){
_a6[i]=_a4[i].error;
}
alert(_a6.join("\n"));
}
}
}

