var Gendre = 0;
var Accept = 0;

function checkValidChars(Item) {
    for(i = 0; i < Item.length; i++) {
        C = Item.charAt(i);
        if(!C.match(/[a-zA-Z0-9\_\-\.]/)) {
            return false;
        }
    }
    return true
}

function checkValidNumber(Item) {
    for(i = 0; i < Item.length; i++) {
        C = Item.charAt(i);
        if(!C.match(/[0-9\,\.]/)) {
            return false;
        }
    }
    return true
}

function checkRegisterForm() {
    Msg = "";

    // Se verifica el Usuario
    Item = document.getElementById("Login").value;
    if(Item.trim() == "" || Item.trim().length < 6 || Item.trim().length > 16 || !checkValidChars(Item)) Msg += " - Login:  Debe ser de 6 a 16 caracteres y solo acepta letras, número y signos como . - _\n";

    // Las dos contraseñas
    Item = document.getElementById("Password").value;
    if(Item.trim() == "" || Item.trim().length < 6 || Item.trim().length > 16)
        Msg += " - Clave: Deve ser de 6 a 16 caracteres de largo.\n";
    else if(Item != document.getElementById("Password2").value)
        Msg += " - Clave y confirmación: Deben ser iguales.\n";

    // EMail
    Item = document.getElementById("EMail").value;
    if(!echeck(Item))
        Msg += " - EMail: Debe ser un correo válido.\n";

    // Nombre
    Item = document.getElementById("Name").value;
    if(Item.trim() == "") Msg += " - Nombres: No tiene información.\n";

    // Apellidos
    Item = document.getElementById("Surname").value;
    if(Item.trim() == "") Msg += " - Apellidos: No tiene información.\n";

    // Género
    if(Gendre == 0) Msg += " - Género: Debe especificar su génere (Masculino / Femenino)\n";
    // Tipo de Documento
    Item = document.getElementById("DocType").selectedIndex;
    if(Item == 0) Msg += " - Tipo de Documento: Debe especificar un tipo de documento.\n";

    // Número de Documento
    Item = document.getElementById("DocNumber").value;
    if(Item.trim() == "" || !checkValidNumber(Item)) Msg += " - Número de Documento: Debe especificar solo números.\n";

    // Fecha de Nacimiento
    // Primero si se seleccionó todos los campos
    All = document.getElementById("Day").selectedIndex != 0 && document.getElementById("Month").selectedIndex != 0 && document.getElementById("Year").selectedIndex != 0;
    if(All) {
        // Se verifica que sea una fecha válida
        Date = document.getElementById("Month").value + "/" + document.getElementById("Day").value + "/" + document.getElementById("Year").value;
        if(!isDate(Date)) Msg += "Debe ingresar una fecha válida.\n";
    } else {
        Msg += " - Fecha de Nacimiento: Debe especificar todos los campos.\n"
    }

    // Acepcatión de las condiciones del servicio
    if(Accept == 0) Msg += " - Debe aceptar las condiciones de uso.\n";

    if(Msg.length > 0) {
        alert("Se han encontrado errores en el formulario.\n\n" + Msg + "\nPor favor verifíquelos y vuelva a intentar de nuevo la operación.");
        return false;
    }
    return true;
}