// JavaScript Document function checkers(f){ if(f.url.value=='' || f.url.value.length <= 3){ alert('Complete Name seems incorrect'); f.completename.focus(); return false; } if(f.comments.value=='' || f.comments.value.length <= 3){ alert('comments Name seems incorrect'); f.comments.focus(); return false; } if(f.email.value!=""){ emailStr=f.email.value; var emailPat=/^(.+)@(.+)$/; var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"; var validChars="\[^\\s" + specialChars + "\]"; var quotedUser="(\"[^\"]*\")"; var ipDomainPat="/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/"; var atom=validChars + '+'; var word="(" + atom + "|" + quotedUser + ")"; var userPat=new RegExp("^" + word + "(\\." + word + ")*$"); var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$"); var matchArray=emailStr.match(emailPat); if (matchArray==null) { alert("Email address seems incorrect. Check @ and ."); f.email.focus(); return false; } var user=matchArray[1]; var domain=matchArray[2]; // See if "user" is valid if (user.match(userPat)==null) { alert("The username doesn't seem to be valid."); f.email.focus(); return false; } var IPArray=domain.match(ipDomainPat); if (IPArray!=null) { for (var i=1;i<=4;i++) { if (IPArray[i]>255) { alert("Destination IP address is invalid!"); f.email.focus(); return false; } } return true; } var domainArray=domain.match(domainPat); if (domainArray==null) { alert("The domain name doesn't seem to be valid."); f.email.focus(); return false; } var atomPat=new RegExp(atom,"g"); var domArr=domain.match(atomPat); var len=domArr.length; if (domArr[domArr.length-1].length<2 || domArr[domArr.length-1].length>3) { alert("The address must end in a three-letter domain, or two letter country."); f.email.focus(); return false; } if (len<2) { var errStr="This address is missing a hostname!"; alert(errStr); f.email.focus(); return false; } } }