function verifyForm(form)
{
  var ok = false;
  
  ok = checkFromName(form);
  if (ok)
    ok = checkEmailAddress(form);
  if (ok)
    ok = checkType(form);
  if (ok)
    ok = checkComments(form);
  
  return ok;
}

function checkFromName(form)
{
  var ok;
  
  ok = (form.FromName_.value != "");
  if (!ok)
  {
    form.FromName_.select();
    form.FromName_.focus();
    alert("Please enter your name.");
  }
  return ok;
}

function checkEmailAddress(form)
{
  var ok;
  
  ok = validEmailAddress(form.FromEmail_.value);
  if (!ok)
  {
    form.FromEmail_.select();
    form.FromEmail_.focus();
    alert("Please enter a valid email address.");
  }
  return ok;
}

function checkType(form)
{
  var ok = false;
  var i;
  
  for (i = 0; i < form.Department_.length; i++)
  {
    if (form.Department_[i].checked)
    {
      ok = true;
      break;
    }
  }
  if (!ok)
  {
    alert("Please select either Seafast Post or Seafast Freight.");
  }
  return ok;
}

function checkComments(form)
{
  var ok;
  
  ok = (form.Message_.value != "");
  if (!ok)
  {
    form.Message_.select();
    form.Message_.focus();
    alert("Please enter your comments.");
  }
  return ok;
}

function validEmailAddress(email)
{
  invalidChars = " /:,;";
  
  if (email == "")
    return false;
  
  for (i = 0; i < invalidChars.length; i++)
  {
    badChar = invalidChars.charAt(i);
    if (email.indexOf(badChar, 0) > -1)
      return false;
  }
  
  atPos = email.indexOf("@", 1);
  if (atPos == -1)
    return false;
  
  if (email.indexOf("@", atPos + 1) > -1)
    return false;
  
  periodPos = email.indexOf(".", atPos);
  if (periodPos == -1)
    return false;
  
  if (periodPos + 3 > email.length)
    return false;
  
  return true;
}

