function isWebTV()
{
  
  if (navigator) return (navigator.appName.toLowerCase().indexOf("webtv") != -1);
  
}

function canPrint()
{
  
  /* WebTV says it supports window.print(), but it doesn't. */
  return window.print && !isWebTV();
  
}

function isNum(whatToTest)
{
  
  var i;
  
  if (whatToTest == "") return false;
  
  for (i = 0; i < whatToTest.length; i++)
  {
    
    if (whatToTest.charAt(i) < "0" || whatToTest.charAt(i) > "9") return false;
    
  }
  
  return true;
  
}

function validateName()
{
  
  var nameObj = new getElement("name");
  var name = nameObj.object.value;
  
  if (name == "")
  {
    
    window.alert("Please enter your full name.");
    
    nameObj.object.focus();
    nameObj.object.select();
    
    return false;
    
  }
  
  return true;
  
}

function validateAddress()
{
  
  var addressObj = new getElement("address1");
  var address = addressObj.object.value;
  
  if (address == "")
  {
    
    window.alert("Please enter an address.");
    
    addressObj.object.focus();
    addressObj.object.select();
    
    return false;
    
  }
  
  return true;
  
}

function validateCity()
{
  
  var cityObj = new getElement("city")
  var city = cityObj.object.value;
  
  if (city.length == 0)
  {
    
    window.alert("Please enter a city.");
    
    cityObj.object.focus();
    cityObj.object.select();
    
    return false;
    
  }
  
  return true;
  
}

function validateState()
{
  
  var stateObj = new getElement("state");
  var state = new getElement("state-noselect").object.selected;
  
  if (state)
  {
    
    window.alert("Please select a state.");
    stateObj.object.focus();
    stateObj.object.select();
    return false;
    
  }
  
  return true;
  
}

function validateZip1()
{
  
  var zipObj = new getElement("zip1");
  var zip = zipObj.object.value;
  
  if (zip.length != 5 || !isNum(zip))
  {
    
    window.alert("Please enter a zip code.");
    
    zipObj.object.focus();
    zipObj.object.select();
    
    return false;
    
  }
  
  return true;
  
}

function validateZip2()
{
  
  var zipObj = new getElement("zip2");
  var zip = zipObj.object.value;
  
  if (zip.length != 0 && (zip.length != 4 || !isNum(zip)))
  {
    
    window.alert("Please enter a zip code.");
    
    zipObj.object.focus();
    zipObj.object.select();
    
    return false;
    
  }
  
  return true;
  
}

function validatePhone1()
{
  
  var phoneObj = new getElement("phone1");
  var phone = phoneObj.object.value;
  
  if (phone.length != 3 || !isNum(phone))
  {
    
    window.alert("Please enter a phone number.");
    
    phoneObj.object.focus();
    phoneObj.object.select();
    
    return false;
    
  }
  
  return true;
  
}

function validatePhone2()
{
  
  var phoneObj = new getElement("phone2");
  var phone = phoneObj.object.value;
  
  if (phone.length != 3 || !isNum(phone))
  {
    
    window.alert("Please enter a phone number.");
    
    phoneObj.object.focus();
    phoneObj.object.select();
    
    return false;
    
  }
  
  return true;
  
}

function validatePhone3()
{
  
  var phoneObj = new getElement("phone3")
  var phone = phoneObj.object.value;
  
  if (phone.length != 4 || !isNum(phone))
  {
    
    window.alert("Please enter a phone number.");
    
    phoneObj.object.focus();
    phoneObj.object.select();
    
    return false;
    
  }
  
  return true;
  
}

function validateEmail()
{
  
  var emailObj = new getElement("email");
  var email = emailObj.object.value;
  var invalidChars = " /:,;";
  var i;
  var badChar;
  var atPos;
  var periodPos;
  
  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;
  
}

function validateEmailWrapper()
{
  
  var emailObj = new getElement("email");
  var email = emailObj.object.value;
  
  var whatToReturn = validateEmail();
  
  if (!whatToReturn && !email == "")
  {
    
    window.alert("Please enter an E-mail address.");
    
    emailObj.object.focus();
    emailObj.object.select();
    
    return whatToReturn;
    
  }
  else return true;
  
}

function validateNum3Quantity()
{
  
  var quantityObj = new getElement("num3-quantity");
  var quantity = quantityObj.object.value;
  
  if (!isNum(quantity))
  {
    
    window.alert("Please enter a quantity for Number Three Noodles.");
    
    quantityObj.object.focus();
    quantityObj.object.select();
    
    return false;
    
  }
  
  return true;
  
}

function validateNum3Total1()
{
  
  var totalObj = new getElement("num3-total1");
  var total = totalObj.object.value;
  
  if (!isNum(total))
  {
    
    window.alert("Please enter a total for Number Three Noodles.");
    
    totalObj.object.focus();
    totalObj.object.select();
    
    return false;
    
  }
  
  return true;
  
}

function validateNum3Total2()
{
  
  var totalObj = new getElement("num3-total2");
  var total = totalObj.object.value;
  
  if (!isNum(total))
  {
    
    window.alert("Please enter a total for Number Three Noodles.");
    
    totalObj.object.focus();
    totalObj.object.select();
    
    return false;
    
  }
  
  return true;
  
}

function validateNum4Quantity()
{
  
  var quantityObj = new getElement("num4-quantity");
  var quantity = quantityObj.object.value;
  
  if (!isNum(quantity))
  {
    
    window.alert("Please enter a quantity for Number Four Noodles.");
    
    quantityObj.object.focus();
    quantityObj.object.select();
    
    return false;
    
  }
  
  return true;
  
}

function validateNum4Total1()
{
  
  var totalObj = new getElement("num4-total1");
  var total = totalObj.object.value;
  
  if (!isNum(total))
  {
    
    window.alert("Please enter a total for Number Four Noodles.");
    
    totalObj.object.focus();
    totalObj.object.select();
    
    return false;
    
  }
  
  return true;
  
}

function validateNum4Total2()
{
  
  var totalObj = new getElement("num4-total2");
  var total = totalObj.object.value;
  
  if (!isNum(total))
  {
    
    window.alert("Please enter a total for Number Four Noodles.");
    
    totalObj.object.focus();
    totalObj.object.select();
    
    return false;
    
  }
  
  return true;
  
}

function validateOrderTotal1()
{
  
  var totalObj = new getElement("order-total1");
  var total = totalObj.object.value;
  
  if (!isNum(total))
  {
    
    window.alert("Please enter an order total.");
    
    totalObj.object.focus();
    totalObj.object.select();
    
    return false;
    
  }
  
  return true;
  
}

function validateOrderTotal2()
{
  
  var totalObj = new getElement("order-total2");
  var total = totalObj.object.value;
  
  if (!isNum(total))
  {
    
    window.alert("Please enter an order total.");
    
    totalObj.object.focus();
    totalObj.object.select();
    
    return false;
    
  }
  
  return true;
  
}

function validateForm()
{
  
  if (new getElement("name").object)
  {
    
    if (!validateName()) return;
    if (!validateAddress()) return;
    if (!validateCity()) return;
    if (!validateState()) return;
    if (!validateZip1()) return;
    if (!validateZip2()) return;
    if (!validatePhone1()) return;
    if (!validatePhone2()) return;
    if (!validatePhone3()) return;
    if (!validateEmailWrapper()) return;
    if (!validateNum3Quantity()) return;
    if (!validateNum3Total1()) return;
    if (!validateNum3Total2()) return;
    if (!validateNum4Quantity()) return;
    if (!validateNum4Total1()) return;
    if (!validateNum4Total2()) return;
    if (!validateOrderTotal1()) return;
    if (!validateOrderTotal2()) return;
    
  }
  
  window.print();
  
}

