function validate(form,sample_check) {
  if (isNotEmpty(form.firstname,"Please enter your First Name")) {
    if (isNotEmpty(form.lastname,"Please enter your Last Name")) {
      if (isNotEmpty(form.street,"Please enter your Street Address")) {
        if (isNotEmpty(form.city,"Please enter your City")) {
          if (isChosen(form.state,"Please select your State")) {
            if (isNotEmpty(form.zip,"Please enter your Zip code")) {
              if (validZip(form.zip)) {
                if (isChosen(form.birthmonth,"Please select your Birth Month")) {
                  if (isChosen(form.birthday,"Please select your Birth Day")) {
                    if (isChosen(form.birthyear,"Please select your Birth Year")) {
                      if (isValidRadio(form.sex,"Please select your Gender")) {
                        if (isNotEmpty(form.email,"Please enter your Email Address")) {
                          if (isEmailAddy(form.email)) {
                            if (isNotEmpty(form.confemail,"Please confirm your Email Address")) {
                              if (isNotEmpty(form.memberid,"Please enter a Member ID")) {
                                if (isNotEmpty(form.pwd,"Please enter a Password")) {
                                  if (isNotEmpty(form.confirm,"Please confirm your Password")) {
                                    return true;
                                  }
                                }
                              }
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }
  return false;
}

function isNotEmpty(elem,msg) {
  var str = elem.value;
  if (str == null || str.length == 0) {
    if (msg) {
      alert(msg);
    }
    else {
      alert("Please fill in the required field.");
    }

    setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
    return false;
  }
  else {
    return true;
  }
}

function isChosen(select,msg) {
  if (select.selectedIndex == 0) {
    if (msg) {
      alert(msg);
    }
    else {
      alert("Please fill in the required field.");
    }

    return false;
  }
  else {
    return true;
  }
}

function isValidRadio(radio,msg) {
  var valid = false;
  for (var i = 0; i < radio.length; i++) {
    if (radio[i].checked) {
      return true;
    }
  }

  if (msg) {
    alert(msg);
  }
  else {
    alert("Please fill in the required field.");
  }

  return false;
}

function isEmailAddy(elem) {
  var str = elem.value;
  var re = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/;
  if (!str.match(re)) {
    alert("Please verify your Email Address format");
    setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
    return false;
  }
  else {
    return true;
  }
}

function validPhone(elem) {
  var str = elem.value;
  var result = str.replace(/-/g, ''); // strip dashes
  result = result.replace(/\(/g, ''); // strip open parens
  result = result.replace(/\)/g, ''); // strip close parens
  result = result.replace(/\s/g, ''); // strip whitespace
  result = result.replace(/\./g, ''); // strip periods
  if (result.length<10 || result.length>11) {
    alert("Please verify your Phone Number");
    setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
    return false;
  }

  for (var i = 0; i < result.length; i++) {
    oneChar = result.charAt(i).charCodeAt(0);
    if (oneChar < 48 || oneChar > 57) {
      alert("Please verify your Phone Number");
      return false;
    }
  }
  return true;
}

function validZip(elem) {
  var str = elem.value;
  if (str.length!=5) {
    alert("Please verify your Zip Code");
    setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
    return false;
  }

  for (var i = 0; i < str.length; i++) {
    oneChar = str.charAt(i).charCodeAt(0);
    if (oneChar < 48 || oneChar > 57) {
      alert("Please verify your Zip Code");
      return false;
    }
  }

  return true;
}

function isMonth(elem) {
  var num = parseInt(elem.value);

  if (isNaN(num)) {
    alert("Please verify your Birth Month");
    setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
    return false;
  }

  if (num < 0 || num > 12) {
    alert("Please verify your Birth Month");
    setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
    return false;
  }

  return true;
}

function isDay(elem) {
  var num = parseInt(elem.value);

  if (isNaN(num)) {
    alert("Please verify your Birth Day");
    setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
    return false;
  }

  if (num < 0 || num > 31) {
    alert("Please verify your Birth Day");
    setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
    return false;
  }

  return true;
}

function isYear(elem) {
  var num = parseInt(elem.value);

  if (isNaN(num)) {
    alert("Please verify your Birth Year");
    setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
    return false;
  }

  if (num < 0 || num > 99) {
    alert("Please verify your Birth Year");
    setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
    return false;
  }

  return true;
}

function focusElement(formName,elemName) {
  var elem = document.forms[formName].elements[elemName];
  elem.focus( );
  elem.select( );
}

function pwd_check(form) {
  if (isPwdCheck(form.pwd24856)) {
     return true;
  }
  return false;
}

function isPwdCheck(elem) {
   var str = elem.value;
   if(str == null || (str.length < 6)) {
      alert("Please use a pwd of at least 6 characters in length.");
      return false;
   } else {
      return true;
   }
}

