function scrub (f)
{
  var error_message = "";

/* only allows:
		before @: aA-zZ 0-9 _ . and -	(alphanumeric, underscore, period, and dash)
		after  @: aA-zZ 0-9 and - 		(alphanumeric and dash)
    tld: two to four characters		(alphanumeric)
 */
/*  var RE_EMAIL = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z]{2,4})+$/;*/
/*  var RE_EMAIL = /^(\w+[\-\.])*\w+@(\w+[\-\.])*[A-Za-z]{2,4}$/; */
  var RE_EMAIL = /^[a-zA-Z0-9._-]+@(?:[a-zA-Z0-9-]+\.)+[a-zA-Z]{2,4}$/;

/*
  if (f.CompanyName.value === "")
  {
    error_message = "Company name cannot be blank.\n";
  }
  else
  {
    f.CompanyName.value = f.CompanyName.value.replace (/[^a-zA-Z ]+/g,'');
  }
 */

  if (f.ContactName.value === "")
  {
    error_message += "Please enter a contact name. \n";
  }
  else
  {
    f.ContactName.value = f.ContactName.value.replace (/[^a-zA-Z ]+/g,'');
  }

  if (f.Email.value === "")
  {
    error_message += "Please enter an email address. \n";
  }
  else
  {
    f.Email.value = f.Email.value.replace (/['"=]+/g, '');
  }

  if (!RE_EMAIL.test(f.Email.value)) 
  {
    error_message += "Your email address must be in the proper format, for example: user@domain.tld. \n";
  }

  if (f.Phone.value !== "")
  {
    f.Phone.value = f.Phone.value.replace (/[^0-9]+/g, '');
  }

  if (f.URL.value !== "")
  {
    f.URL.value = f.URL.value.replace (/[|'"=\\+!@#$%\^&*()\[\] ]+/g, '');
  }

  if (f.Country.value === "")
  {
    error_message += "Please select a country.\n";
  }

/*  if (f.EMV.value === "")
  {
    error_message += "Please select an Estimated Monthly Volume.\n";
  }

  if (f.Currency.value === "")
  {
    error_message += "Please choose a desired currency.\n";
  } */

  if (f.Comments.value !== "")
  {
    f.Comments.value = f.Comments.value.replace (/[^A-Za-z0-9 .,?!@]+/g, '');
  }

  if (error_message !== "")
  {
    alert (error_message);
    return false;
  }
}


