var ErrorMes;
var isError;

function verifyform(frm) {

  ErrorMes='';
  isError=false;

  if (isEmpty(frm.login.value)) { AddError('Login is missing') }

  for (i=1; i<=frm.length; i++) {
    el_name=frm.elements(i-1).name;
    el_val=frm.elements(i-1).value;
    if (el_name=='login') { el_name='' }
    if (el_name=='password') {
      if (isEmpty(frm.password.value)) { AddError('Password is missing') }
      el_name='';
    }
    if (el_name=='password2') {
      if (frm.password.value != frm.password2.value) { AddError('Passwords do not match') }
      el_name='';
    }
    if (el_name=='email') {
      if (isEmpty(frm.email.value)) { AddError('Missing email address') }
      else {
        if (!isEmail(frm.email.value)) { AddError('Invalid email address') }
      }
      el_name='';
    }
    if (el_name!='') {
      el_name_fc=el_name.substring(0,1);
      if (el_name_fc == '_') {
        el_name_rc=el_name.substring(1,el_name.length);
        if (el_val == '') {
          AddError("Required field is missing: "+el_name_rc);
        }
      }
    }
  }

  if ( isError ) {
    alert("The following errors were found\r\n\r\n" + ErrorMes);
    return false;
  } else {
    return true;
  }

}


function field(frm,name) {
    return frm.name.value;
}

function isEmpty(field) {
    return (field.length == 0 || field == null);
}


function isEmail(s) {

    var sArray1, sArray2;
    var bPassed = false;

    sArray1 = s.split("@")
    if (sArray1.length == 2) {
        if (sArray1[0].length > 0) {
            if (sArray1[1].length > 2) {
                sArray2 = sArray1[1].split(".")
                if (sArray2.length > 1) {
                    if (sArray2[0].length > 0) {
                        if (sArray2[1].length > 0) {
                            bPassed = true;
                        }
                    }
                }
            }
        }
    }
    return bPassed;
}

function AddError(msg) {
    ErrorMes = ErrorMes.concat(msg, "\r\n");
    isError = true;
}