function reveal(elementId)
{
    var tt,count=0;
    for (var t in elementId)
    {
        tt += t+',';
        if (count++%5 == 0)
        {
            tt += "\n";
        }
    }
    return(tt);
}

 function tabFull(intMax, fieldFrom, fieldTo) {
	if (eval('document.' + fieldFrom + '.value.length') == intMax){
		eval('document.' + fieldTo + '.focus()');
		eval('document.' + fieldTo + '.select()');
	}
 }

 function check_form(formPtr) {
  var error = 0;
  var error_message = "Errors have occured during the process of your form!\nPlease make the following corrections:\n\n";

  var first_name = formPtr.firstname.value;
  var last_name = formPtr.lastname.value;
  var street_address = formPtr.street_address.value;
  var city = formPtr.city.value;
  var state = formPtr.state.options[formPtr.state.selectedIndex].value;
  var postcode = formPtr.postcode.value;
  var telephone = formPtr.telephone_code.value + formPtr.telephone_prefix.value + formPtr.telephone_suffix.value;
  var cellphone = formPtr.cellphone_code.value + formPtr.cellphone_prefix.value + formPtr.cellphone_suffix.value;
  var workphone = formPtr.workphone_code.value + formPtr.workphone_prefix.value + formPtr.workphone_suffix.value;
  //var dob = formPtr.dob.value;
  var dob = formPtr.dob_month.value + "/" + formPtr.dob_day.value + "/" + formPtr.dob_year.value;
  var email_address = formPtr.email_address.value;

  var confirm_email = (formPtr.email_address_confirm!==undefined);
  var password_present = (formPtr.password!==undefined);
  var confirm_password = (formPtr.password_confirm!==undefined);
  var interest_present = (formPtr.customers_interest!==undefined);

  var email_address_confirm = (confirm_email ? formPtr.email_address_confirm.value : '');
  var password = (password_present ? formPtr.password.value : '');
  var password_confirm = (confirm_password ? formPtr.password_confirm.value : '');


  if (first_name == "" || first_name.length < 1) {
    error_message = error_message + "* Please enter your first name.\n";
    error = 1;
  }

  if (last_name == "" || last_name.length < 1) {
    error_message = error_message + "* Please enter your last name.\n";
    error = 1;
  }

  if (street_address == "" || street_address.length < 1) {
    error_message = error_message + "* Please enter your street address.\n";
    error = 1;
  }

  if (city == "" || city.length < 1) {
    error_message = error_message + "* Please enter a city.\n";
    error = 1;
  }

  if (formPtr.state.selectedIndex == 0) {
     error_message = error_message + "* Please select a state.\n";
     error = 1;
  }

  if (postcode == "" || postcode.length < 4) {
    error_message = error_message + "* Please enter a zip code.\n";
    error = 1;
  }

  if (telephone == "" || telephone.length < 10 || isNaN(telephone)) {
    error_message = error_message + "* Please provide a valid telephone number.\n";
    error = 1;
  }

  if (cellphone != "" && (cellphone.length < 10 || isNaN(cellphone))) {
    error_message = error_message + "* Please provide a valid Cell Number or leave the Cell Number field empty.\n";
    error = 1;
  }

  if (workphone != "" && (workphone.length < 10 || isNaN(workphone))) {
    error_message = error_message + "* Please provide a valid work number or leave the Work Phone field empty.\n";
    error = 1;
  }

  if (!isDate(dob)) {
    error_message = error_message + "* The 'Date of Birth' entry must be a valid date.\n";
    error = 1;
  }

  if (!isEmail(email_address)) {
    error_message = error_message + "* Please provide a valid email address.\n";
    error = 1;
  }

  if (password_present && (password == "")) {
    error_message = error_message + "* Please enter a password.\n";
    error = 1;
  }

  if (formPtr.gender.selectedIndex == 0) {
    error_message = error_message + "* Please select your gender.\n";
    error = 1;
  }

  if (formPtr.customers_children.selectedIndex == 0) {
    error_message = error_message + "* Please select whether or not you have children.\n";
    error = 1;
  }

  if (!isBoxChecked(formPtr.marital_status)) {
    error_message = error_message + "* Please select a marital status.\n";
    error = 1;
  }

  if (interest_present) {
    var interest_count = 0;
    for (i=0;i<formPtr['customers_interest[]'].length;i++) {
      if (formPtr['customers_interest[]'][i].checked)
        interest_count++;
    }
    if (interest_count < 5){
      error_message = error_message + "* Please select at least five Kinds of Interest.\n";
      error = 1;
    }
  }

  if (confirm_email && (email_address != email_address_confirm)) {
    error_message = error_message + "* The email addresses you entered do not match.\n";
    error = 1;
  }

  if (confirm_password && (password != password_confirm)) {
    error_message = error_message + "* The passwords you entered do not match.\n";
    error = 1;
  }


  if (error == 1) {
    alert(error_message);
  }
  return(error==0);

 }

function isBoxChecked(varGroup){
	for (i=0;i<varGroup.length;i++){
		if (varGroup[i].checked)
			return true;
	}
	return false;
}

 function update_zone(theForm) {
   var NumState = theForm.zone_id.options.length;
   while(NumState > 0) {
      NumState--;
      theForm.zone_id.options[NumState] = null;
   }
   var SelectedCountry = "";
   SelectedCountry = theForm.country.options[theForm.country.selectedIndex].value;
   resetStateText(theForm,'');
 }

 function resetStateText(theForm,state) {
  theForm.state.value = '';
  if (theForm.zone_id.options.length > 1) {
    theForm.state.value = '';
  }
 }

 function resetZoneSelected(theForm) {
  if (theForm.zone_id.options.length > 1) {
    theForm.state.value = '';
  }
 }


