var Flag = true;
var ProcessForm;


function SubmitButtonClick()
{
     ProcessForm = true;


     var Name_Check = document.TheContactForm.elements['Name'].value;
     var Name_Check_Format = /^[A-Za-zÀ-ÖØ-öø-ÿ']+(([-A-Za-zÀ-ÖØ-öø-ÿ']+[\.]?[\s]?)*([-A-Za-zÀ-ÖØ-öø-ÿ']+[\.]?)+)*$/;
     if (!(Name_Check_Format.test(Name_Check))){
          ProcessForm = false;
          alert("Please enter a valid Name.");
          document.TheContactForm.elements['Name'].focus();
     }


     if (ProcessForm == true){
          var EmailAddress_Check = document.TheContactForm.elements['EmailAddress'].value;
          var EmailAddress_Check_Format = /^([0-9a-zA-Z-]+\.)*[_0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+\.)+[A-Za-z]{2,4}$/;
          if (!(EmailAddress_Check_Format.test(EmailAddress_Check))){
               ProcessForm = false;
               alert("Please enter a valid E-mail Address.");
               document.TheContactForm.elements['EmailAddress'].focus();
          }
     }

     if (ProcessForm == true){
          var ConfirmEmailAddress_Check = document.TheContactForm.elements['ConfirmEmailAddress'].value;
          var ConfirmEmailAddress_Check_Format = /^([0-9a-zA-Z-]+\.)*[_0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+\.)+[A-Za-z]{2,4}$/;
          if (!(ConfirmEmailAddress_Check_Format.test(ConfirmEmailAddress_Check))){
               ProcessForm = false;
               alert("Please enter a valid Confirm E-mail Address.");
               document.TheContactForm.elements['ConfirmEmailAddress'].focus();
          }
     }

     if (ProcessForm == true){
          if (EmailAddress_Check != ConfirmEmailAddress_Check){
               ProcessForm = false;
               alert("The E-mail Address and Confirm E-mail Address must match.");
               document.TheContactForm.elements['EmailAddress'].focus();
          }
     }

     if (ProcessForm == true){
          var Subject_Check = document.TheContactForm.elements['Subject'].value;
          Subject_Check = Subject_Check.replace(/^\s+/, "");
          Subject_Check = Subject_Check.replace(/\s+$/g, "");
          if (Subject_Check.length < 2){
               ProcessForm = false;
               alert("Please enter a valid Subject.");
               document.TheContactForm.elements['Subject'].focus();
          }
     }

     if (ProcessForm == true){
          var QuestionComment_Check = document.TheContactForm.elements['QuestionComment'].value;
          QuestionComment_Check = QuestionComment_Check.replace(/^\s+/, "");
          QuestionComment_Check = QuestionComment_Check.replace(/\s+$/g, "");
          if (QuestionComment_Check.length > 2000){
               ProcessForm = false;
               alert("Please reduce the Question/Comment text to less than 2,000 characters.");
               document.TheContactForm.elements['QuestionComment'].focus();
          }
          else{
               if (QuestionComment_Check.length < 5){
                    ProcessForm = false;
                    alert("Please enter text into the Question/Comment field.");
                    document.TheContactForm.elements['QuestionComment'].focus();
               }
          }
     }

     if ((Flag == true) && (ProcessForm == true)){
          document.TheContactForm.elements['SubmitFormButton'].value = "Processing...";
          document.TheContactForm.elements['SubmitFormButton'].disabled = true;
          document.TheContactForm.submit();
          Flag = false;
     }

     return;
}