function uberValidate(f) { var legal = new Array(" ","\"","\”","\'","@","#","\/","\\",";",":","{","}","\$","|","[","]","?","<",">","!","\%","^","&","*","(",")",",",".","=","+","_","-"); for (var i = 0; i < f.elements.length; i++) { if (f.elements[i].className == "required" || f.elements[i].className == "requiredError") { if (f.elements[i].value == null || f.elements[i].value == "undefined" || f.elements[i].value == "") { alert('You have left out one of the required fields: \n"' + f.elements[i].id + '"'); f.elements[i].className = "requiredError"; f.elements[i].focus(); return false; } else { f.elements[i].className = "required"; } } /**/ if (f.elements[i].className == "password" || f.elements[i].className == "passwordError") { if (f.elements[i].value == null || f.elements[i].value == "undefined" || f.elements[i].value == "") { alert('Your password is required.'); f.elements[i].className = "passwordError"; f.elements[i].focus(); return false; } else { f.elements[i].className = "password"; if(i != 0) { if (f.elements[i-1].className == "password" || f.elements[i-1].className == "passwordError") { // Assumes that required password, and confirm password, fields are in series with regards to elements within the form if (f.elements[i].value != f.elements[i-1].value) { alert("Your passwords do not match."); f.elements[i].className = "passwordError"; f.elements[i-1].className = "passwordError"; f.elements[i-1].focus(); f.elements[i-1].select(); return false; } else { f.elements[i].className = "password"; f.elements[i-1].className = "password"; } } } } } if (f.elements[i].className == "email" || f.elements[i].className =="emailError") { if (f.elements[i].value == null || f.elements[i].value == "undefined" || f.elements[i].value == "") { alert('Your e-mail address is required.'); f.elements[i].className = "emailError"; f.elements[i].focus(); return false; } else { f.elements[i].className = "email"; if (f.elements[i].value.indexOf("@",0) == -1 || f.elements[i].value.indexOf(".",0) == -1) { alert("Invalid e-mail address entered"); f.elements[i].className = "emailError"; f.elements[i].focus(); f.elements[i].select(); return false; } else { if(i != 0) { if (f.elements[i-1].className == "email" || f.elements[i-1].className == "emailError") { // Assumes that required email, and confirm email, fields are in series with regards to elements within the form if (f.elements[i].value != f.elements[i-1].value) { alert("You e-mail addresses don't match"); f.elements[i-1].className = "emailError"; f.elements[i].className = "emailError"; f.elements[i-1].focus(); f.elements[i-1].select(); return false; } } } } } } if (f.elements[i].className == "number" || f.elements[i].className == "numberError") { if (f.elements[i].value == null || f.elements[i].value == "undefined" || f.elements[i].value == "") { alert("You have left out one of the required number fields."); f.elements[i].className = "numberError"; f.elements[i].focus(); return false; } else { f.elements[i].className = "number"; for(var n = 0; n < f.elements[i].value.length; n++) { if(f.elements[i].value.charAt(n) < "0" || f.elements[i].value.charAt(n) > "9") { alert("Only characters of numeric value are permitted in this field."); f.elements[i].className = "numberError"; f.elements[i].focus(); f.elements[i].select(); return false; break; } } } } if (f.elements[i].className == "legal" || f.elements[i].className == "legalError") { if (f.elements[i].value == null || f.elements[i].value == "undefined" || f.elements[i].value == "") { alert('You have left out one of the required fields: \n"' + f.elements[i].id + '"'); f.elements[i].className = "legalError"; f.elements[i].focus(); return false; } else { f.elements[i].className = "legal"; for (var n = 0; n < f.elements[i].value.length; n++) { for (var m = 0; m < legal.length; m++) { if(f.elements[i].value.charAt(n) == legal[m]) { alert("You have used an illegal character: "+legal[m]); f.elements[i].className = "legalError"; f.elements[i].focus(); f.elements[i].select(); return false; break; } } } } } /**/ } }