var form = "";
var submitted = false;
var error = false;
var error_message = "";

function check_input(field_name, field_size, message) {
  if (form.elements[field_name] && (form.elements[field_name].type != "hidden")) {
    var field_value = form.elements[field_name].value;

    if (field_value == '' || field_value.length < field_size) {
      error_message = error_message + "* " + message + "\n";
      error = true;
    }
  }
}

function check_select(field_name, field_default, message) {
  if (form.elements[field_name] && (form.elements[field_name].type != "hidden")) {
    var field_value = form.elements[field_name].value;

    if (field_value == field_default) {
      error_message = error_message + "* " + message + "\n";
      error = true;
    }
  }
}

function validForm(form_name) {

  if (submitted == true) {
    alert("This form has already been submitted. Please press Ok and wait for this process to be completed.");
    return false;
  }

  error = false;
  form = form_name;
  error_message = "Errors have occured during the process of your form.\n\nPlease make the following corrections:\n\n";

  // Fields for billing and shipping information
  check_input("Name", 1, "Please enter valid Name");
	check_input("Address1", 2, "Please enter valid Street Address");
  check_input("City", 4, "Please enter valid City");
	check_select("State", "", "Please select a valid State");
  check_input("Zip", 4, "Please enter valid Billing Zip Code");
	check_input("Country", 1, "Please enter valid Country");
  check_input("Telephone", 10, "Please enter valid Phone Number");
  check_input("Email", 10, "Please enter valid Email Address");
  check_select("Type", "", "Please select Credit Card Type");

  if (error == true) {
    alert(error_message);
    return false;
  } else {
    submitted = true;
    return true;
  }
	
}
