   requestSubmitted = false;

   function validate_contactUs () {

      var firstname_entry  = document.theform.fName.value;
      var lastname_entry   = document.theform.lName.value;
      var company_entry   = document.theform.companyName.value;
      var email_entry      = document.theform.eMail.value;
      var address_entry    = document.theform.streetAddress1.value;
      var postalcode_entry = document.theform.postalCode.value;
      var daytimeph_entry  = document.theform.dayTimePhoneNum.value;
      
      if ( ! check_for_text ( firstname_entry ) ) {
         error_message ( document.theform.fName,
                         "Please enter your first name." );
         return false;
      }

      if ( ! check_for_text ( lastname_entry ) ) {
         error_message ( document.theform.lName,
                         "Please enter your last name." );
         return false;
      }

      if ( ! check_for_text ( company_entry ) ) {
         error_message ( document.theform.companyName,
                         "Please enter your Company's name." );
         return false;
      }

      if ( ! check_for_text ( daytimeph_entry ) ) {
         error_message ( document.theform.dayTimePhoneNum,
                         "Please enter a Day Time Phone Number." );
         return false;
      }
      
      if ( ! validate_email ( email_entry, document.theform.eMail ) ) {
         return false;
      }

      if ( ! check_for_text ( address_entry ) ) {
         error_message ( document.theform.streetAddress1,
                         "Please enter your street address." );
         return false;
      }

      if ( ! check_for_text ( postalcode_entry ) ) {
         error_message ( document.theform.postalCode,
                         "Please enter your " + zip_name + "." );
         return false;
      }

      if ( requestSubmitted == true ) {
         alert ( "You have already submitted " +
                 "the request.. Please wait" );
         return false;
      }
      requestSubmitted = true;

      return true;
   }

   function check_phone ( elem_value ) {
      for ( i = 0; i < elem_value.length; i++ ) {
         if ( elem_value.charAt (i) != "0" ) {
            if ( elem_value.charAt (i) != "-" ) {
               if ( elem_value.charAt (i) != " " ) {
                  if ( ! parseFloat ( elem_value.charAt (i) ) ) {
                     return false;
                  }
               }
            }
         }
      }
      return true;
   }

   function validate_email ( email_val, email_element ) {
      if ( ! check_for_text ( email_val ) ) {
         error_message ( email_element,
                         "Please enter your email address." );
         return false;
      }

      if ( ! check_email ( email_val ) ) {
         error_message ( email_element,
                         "Invalid email address." );
         return false;
      }

      return true;
   }

   function check_email ( email_value ) {
      var email_ats    = 0;
      var email_dots   = 0;
      var at_position  = 0;
      var dot_position = 0;
      var email_spaces = 0;
      var i;
 
      if ( email_value.length < 6 ) {
         return false;
      }

      for ( i = 0; i < email_value.length; i++ ) {
         if ( email_value.charAt (i) == "@" ) {
            email_ats++;
            at_position = i;
         }
         if ( email_value.charAt (i) == "." ) {
            email_dots++;
            dot_position = i;  // Will be set to last occurrence
         }
         if ( email_value.charAt (i) == " " ) {
            email_spaces++;
         }
      }

      if ( ( email_ats == 0 ) || ( email_ats > 1 ) ) {
         return false;
      }

      if ( email_dots == 0 ) {
         return false;
      }

      // Email must have characters after the @ sign:
      if ( ( email_value.charAt ( at_position + 1 ) == "" ) ||
           ( email_value.charAt ( at_position + 1 ) == " " ) ) {
         return false;
      }

      // Email must have characters after the dot:
      if ( ( email_value.charAt ( dot_position + 1 ) == "" ) ||
           ( email_value.charAt ( dot_position + 1 ) == " " ) ) {
         return false;
      }

      // Email must have characters before the @ sign:
      if ( ( email_value.charAt ( at_position - 1 ) == "" ) ||
           ( email_value.charAt ( at_position - 1 ) == " " ) ) {
         return false;
      }

      // Email must have characters before the dot:
      if ( ( email_value.charAt ( dot_position - 1 ) == "" ) ||
           ( email_value.charAt ( dot_position - 1 ) == " " ) ) {
         return false;
      }

      // Email must have dot after @ sign:
      if ( dot_position < at_position ) {
         return false;
      }

      if ( email_spaces > 0 ) {
         return false;
      }
 
      return true;
   }

   function check_for_text ( elem_value ) {
      var text_entry = 0;
      var i;

      for ( i = 0; i < elem_value.length; i++ ) {
         if ( elem_value.charAt (i) != " " ) {
            text_entry = 1;
         }
      }

      if ( text_entry == 0 ) {
         return false;
      }
      return true;
   }

   function error_message ( elem, text ) {
      window.alert ( text );
      elem.select ();
      elem.focus ();
   }

   function error_message_popup ( elem, text ) {
      window.alert ( text );
      elem.focus ();
   }