function checkContestSubmit(conitem)  {
   if (conitem.mfname.value=="")  {
      alert("Please enter your first & last name so we can contact you if you have won.");
      conitem.mfname.focus();
      return false;
   }
   if (conitem.mlname.value=="")  {
      alert("Please enter your first & last name so we can contact you if you have won.");
      conitem.mlname.focus();
      return false;
   }
   if (conitem.memail.value=="")  {
      alert("Please enter your email address so we can contact you if you have won.");
      conitem.memail.focus();
      return false;
   }
   var email_str = conitem.memail.value;
   if(!(emailCheck(email_str)))
   {
       conitem.memail.focus();
       return false;
   }
   if (conitem.mphone.value=="")  {
      alert("Please enter your phone number so we can contact you if you have won.");
      conitem.mphone.focus();
      return false;
   }
   var phone_filter=/[0-9\s\)\(\.-]{7,30}/;
   if (!phone_filter.test(conitem.mphone.value))  {
      alert("Phone Number does not appear to be valid.  Please only use numbers and '(', ')', '.', '-' characters");
      conitem.mphone.focus();
      return false;
   }
   return true;
}

function emailCheck (emailStr) 
{
    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 .'s)")
	    return false
    }
    var user=matchArray[1]
    var domain=matchArray[2]

    if (user.match(userPat)==null) 
    {
        alert("The email username doesn't seem to be valid.")
        return false
     }

    var IPArray=domain.match(ipDomainPat)
    if (IPArray!=null) 
    {
	  for (var i=1;i<=4;i++) 
	  {
	    if (IPArray[i]>255) 
	    {
	        alert("Email IP address is invalid!")
		    return false
	    }
      }
      return true
   }

   // Domain is symbolic name
   var domainArray=domain.match(domainPat)
   if (domainArray==null) 
   {
	   alert("The email domain name doesn't seem to be valid.")
       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 email address must end in a three-letter domain, or two letter country.")
       return false
   }

   if (len<2) 
   {
       alert("This email address is missing a hostname")
       return false
   }

return true;
}

