  // Onload:

  function init_form() {
    document.getElementById("submitButtonSpan").innerHTML = "<input type='button' value='Send Feedback' onclick='validateForm()' />";
  }

  // Declare variables

  var personsName, emailAddress, comments;
  var errorMessage, englishPattern, emailPattern;
  var engStr, emaStr;
  personsName = "";
  emailAddress = "";
  comments = "";
  errorMessage = " ";
  engStr = " ";
  emaStr = " ";
  englishPattern = new RegExp(/\<|\>/gi);

  // Get and retieve values

  String.prototype.trim = function() {
    return this.replace(/^\s+|\s+$/g,"");
  } 

  function checkEnglish(englishStr) {
    // remove <> characters
    englishPattern = new RegExp(/\<|\>/gi);
    engStr = englishStr.replace(englishPattern, " ");
    return engStr;
  }  

  function getFieldValues() {
    // Get field values.
    personsName = document.forms[0].elements[0].value;
    emailAddress = document.forms[0].elements[1].value;
    comments = document.forms[0].elements[2].value;

    // Trim fields
    personsName = personsName.trim();
    emailAddress = emailAddress.trim();
    comments = comments.trim();

    // Remove unsafe characters
    personsName = checkEnglish(personsName); 
    emailAddress = checkEnglish(emailAddress); 
    comments = checkEnglish(comments); 
  }

  function validateEmail(emailStr) {
    emailPattern = new RegExp(/^\S+@\S+\.\S+$/gi);
    return emailPattern.test(emailStr);   // true or false will be returned 
  }

  // On submit click:
  
  function validateForm() {
    getFieldValues();
    
    if ((personsName.length == 0) || (comments.length == 0) || (emailAddress.length == 0)) {
      errorMessage = "Error: One or more fields still need to be entered.";
    } else if (!(validateEmail(emailAddress))) {
      errorMessage = "Error: Please enter a valid email address.";
    } else {
      errorMessage = "";  // Then submit
      document.forms[0].submit();
    }
    document.getElementById("errorMessageDiv").innerHTML = errorMessage;

  }