function validateInspection (d) {

  d.submit.disabled = true;
  var errorTable="";
  var firstError="";
  var fieldError=false;
  var errorColor="#ff0000";
  var normalColor="#000000";

  if (d.itTypeGeneral.checked==false && d.itTypeTermite.checked==false && d.itTypeRadon.checked==false && d.itTypeLead.checked==false && d.itTypeWater.checked==false && d.itTypeNew.checked==false && d.itTypePercent.checked==false && d.itTypeSeptic.checked==false && d.itTypeAir.checked==false && d.itTypeMold.checked==false) {
    errorTable+="'At Least One Type of Inspection' must be selected\n";
    if (!firstError) firstError=d.itTypeGeneral;
    setColors('fidType', errorColor);
  } else { setColors('fidType', normalColor); }

  if (d.itClientFirst.value == "") {
    errorTable+="'Client First Name' must be entered\n";
    if (!firstError) firstError=d.itClientFirst;
    setColors('fidClientFirst', errorColor);
  } else { setColors('fidClientFirst', normalColor); }

  if (d.itClientLast.value == "") {
    errorTable+="'Client Last Name' must be entered\n";
    if (!firstError) firstError=d.itClientLast;
    setColors('fidClientLast', errorColor);
  } else { setColors('fidClientLast', normalColor); }

  if (d.itClientAddress.value == "") {
    errorTable+="'Client Address' must be entered\n";
    if (!firstError) firstError=d.itClientAddress;
    setColors('fidClientAddress', errorColor);
  } else { setColors('fidClientAddress', normalColor); }

  if (d.itClientCity.value == "") {
    errorTable+="'Client City' must be entered\n";
    if (!firstError) firstError=d.itClientCity;
    setColors('fidClientCity', errorColor);
  } else { setColors('fidClientCity', normalColor); }

  if (d.itClientState.value == "") {
    errorTable+="'Client State' must be selected\n";
    if (!firstError) firstError=d.itClientState;
    setColors('fidClientState', errorColor);
  } else { setColors('fidClientState', normalColor); }

  if (d.itClientZipcode.value == "") {
    errorTable+="'Client Zipcode' must be entered\n";
    if (!firstError) firstError=d.itClientZipcode;
    setColors('fidClientZipcode', errorColor);
  } else { setColors('fidClientZipcode', normalColor); }

  if (d.itClientHome.value=="" && d.itClientWork.value=="" && d.itClientCell.value=="") {
    errorTable+="'At Least One Client Phone Number' must be entered\n";
    if (!firstError) firstError=d.itClientHome;
    setColors('fidClientHome', errorColor);
    setColors('fidClientWork', errorColor);
    setColors('fidClientCell', errorColor);
  } else {
    setColors('fidClientHome', normalColor);
    setColors('fidClientWork', normalColor);
    setColors('fidClientCell', normalColor);
  }

  fieldError=false;
  if (d.itClientEmail.value == "") {
    errorTable+="'Client E-Mail Address' must be entered\n";
    fieldError=true;
  } else if (!validEmail(d.itClientEmail.value)) {
    errorTable+="'Client E-Mail Address' appears to be invalid\n";
    fieldError=true;
  }
  if (fieldError) {
    if (!firstError) firstError=d.itClientEmail;
    setColors('fidClientEmail', errorColor);
  } else {
    setColors('fidClientEmail', normalColor);
  }

  if (d.itPropertyAddress.value == "") {
    errorTable+="'Property Address' must be entered\n";
    if (!firstError) firstError=d.itPropertyAddress;
    setColors('fidPropertyAddress', errorColor);
  } else { setColors('fidPropertyAddress', normalColor); }

  if (d.itPropertyCity.value == "") {
    errorTable+="'Property City' must be entered\n";
    if (!firstError) firstError=d.itPropertyCity;
    setColors('fidPropertyCity', errorColor);
  } else { setColors('fidPropertyCity', normalColor); }

  if (d.itPropertyState.value == "") {
    errorTable+="'Property State' must be selected\n";
    if (!firstError) firstError=d.itPropertyState;
    setColors('fidPropertyState', errorColor);
  } else { setColors('fidPropertyState', normalColor); }

  if (d.itPropertyZipcode.value == "") {
    errorTable+="'Property Zipcode' must be entered\n";
    if (!firstError) firstError=d.itPropertyZipcode;
    setColors('fidPropertyZipcode', errorColor);
  } else { setColors('fidPropertyZipcode', normalColor); }

  if (d.itPresentBuyer.checked==false && d.itPresentSeller.checked==false && d.itPresentListAgent.checked==false && d.itPresentSellAgent.checked==false && d.itPresentHomeowner.checked==false) {
    errorTable+="'At Least One Present at Inspection' must be selected\n";
    if (!firstError) firstError=d.itPresentBuyer;
    setColors('fidPresent', errorColor);
  } else { setColors('fidPresent', normalColor); }

  fieldError=false;
  if (d.itRequestDate.value == "") {
    errorTable+="'Requested Date' must be entered\n";
    fieldError=true;
  } else if (!validDate(d.itRequestDate.value)) {
    errorTable+="'Requested Date' appears to be invalid\n";
    fieldError=true;
  }
  if (fieldError) {
    if (!firstError) firstError=d.itRequestDate;
    setColors('fidRequestDate', errorColor);
  } else {
    setColors('fidRequestDate', normalColor);
  }

  if (d.itRequestTime.value == "") {
    errorTable+="'Requested Time' must be entered\n";
    if (!firstError) firstError=d.itRequestTime;
    setColors('fidRequestTime', errorColor);
  } else { setColors('fidRequestTime', normalColor); }


  if (d.itSigned[0].checked==false && d.itSigned[1].checked==false && d.itSigned[2].checked==false) {
    errorTable+="'Contract to be Signed' must be selected\n";
    if (!firstError) firstError=d.itSigned[0];
    setColors('fidSigned', errorColor);
  } else { setColors('fidSigned', normalColor); }

  if (d.itPaidWhen[0].checked==false && d.itPaidWhen[1].checked==false && d.itPaidWhen[2].checked==false  && d.itPaidWhen[3].checked==false) {
    errorTable+="'When Paid' must be selected\n";
    if (!firstError) firstError=d.itPaidWhen[0];
    setColors('fidPaidWhen', errorColor);
  } else { setColors('fidPaidWhen', normalColor); }

  if (d.itPaidHow[0].checked==false && d.itPaidHow[1].checked==false && d.itPaidHow[2].checked==false  && d.itPaidHow[3].checked==false) {
    errorTable+="'How Paid' must be selected\n";
    if (!firstError) firstError=d.itPaidHow[0];
    setColors('fidPaidHow', errorColor);
  } else { setColors('fidPaidHow', normalColor); }

  if (errorTable) {
    alert (errorTable);
    firstError.focus();
    d.submit.disabled = false;
    return false;
  } else { return true; }

}
