validation=Class.create();validation.prototype={initialize:function(B){this.isDebug=false;if(B){this.isDebug=true}this.reponse=true;this.message=new Array();var D=this;var C=document.getElementsByClassName("FieldFailed");for(var A=0;A<C.length;A=A+1){C[A].removeClassName("FieldFailed")}},setField:function(D,B,E,C){testList=D.indexOf(",");if(testList!=-1){fieldName=D.split(",");var A=$(fieldName[0])}else{var A=$(D)}if(A){switch(B){case"phone":if(E||(!E&&A.value.length!=0)){if(A.value.replace(/[0-9]+/,"").length!=0||A.value.length!=10){this.setError(A,C+" - Phone number needs to be correctly formatted. eg 0212345678")}}break;case"mobile":if(E||(!E&&A.value.length!=0)){if(A.value.replace(/[0-9]+/,"").length!=0||A.value.length!=10){this.setError(A,C+" - Phone number needs to be correctly formatted. eg 0212345678")}}break;case"email":if((E&&!A.value.length)||A.value.replace(/[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$/,"").length){this.setError(A,C+" - E-mail address needs to be correctly formatted.")}break;case"money":if((E&&!A.value.length)||A.value.replace(/[0-9]*[.]?[0-9]?[0-9]?/,"").length){this.setError(A,C+" - Value must be a valid currency entry (no $ sign, max 2 decimal places).")}break;case"int":if((E&&!A.value.length)||A.value.replace(/[0-9]+/,"").length){this.setError(A,C+" - Value must be a valid integer (non-decimal number).")}break;case"decimal":if((E&&!A.value.length)||!A.value.replace(/[0-9]*[.]?[0-9]*/,"").length){this.setError(A,C+" - Value must be a valid decimal number.")}break;case"select":if(E&&(!A.options.length||(!A.options[A.selectedIndex].value.length||A.options[A.selectedIndex].value==0))){this.setError(A,C)}break;case"multiselect":if(E&&A.selectedIndex==-1){this.setError(A,C)}break;case"datetime":if(E&&!A.value.replace(/\s*/,"").length){this.setError(A,C)}break;case"password":if(E&&A.value.replace(/\s*/,"").length<8){this.setError(A,"Your password must be greater than 8 characters.")}break;case"passwordConfirm":if(E&&A.value!=$(fieldName[1]).value){this.setError($(fieldName[1]),"Your confirm password does not match")}break;case"creditCard":if(E&&A.value.replace(/[^0-9]+/g,"").length<16){this.setError(A,C)}break;default:if(E&&!A.value.replace(/\s*/,"").length){this.setError(A,C)}break}}else{if(this.isDebug){alert("Cannot find "+D+" field")}}},setError:function(A,B){this.reponse=false;this.message.push(B);A.addClassName("FieldFailed")},validate:function(){var B="";for(var A=0;A<this.message.length;A=A+1){B=B+this.message[A]+"\n"}if(B.length){alert(B)}return this.reponse}}