function EhVazio (campo) {
    var i
    
    //Deve ter ao menos um caractere
    if ((campo == null) || (campo.length == 0)) {
        return false;
    }

    //Pelo menos um caractere que nao seja espaco
    for (i=0; i < campo.length; i++) {
        if (campo.charAt(i) != ' ') {
        return true;
        }
    }

    return false;
}

function EhEmail (campo) {
    var i
	
    //Deve ter ao menos um caractere
    if ((campo == null) || (campo.length == 0) || (campo.length < 5)) {
	return false;
    }

    //Deve conter @
     for (i=0; i < campo.length; i++) {
       if (campo.charAt(i) == '@') {
	   return true;
        }
    }

    return false;
}
function EhNumero (campo) {
    var i
    var digitos = "0123456789"

    //Deve ter ao menos um caractere
    if ((campo == null) || (campo.length == 0)) {
        return false;
    }

    //Todos os caracteres devem ser digitos
    for (i=0; i < campo.length; i++) {
        if (digitos.indexOf(campo.charAt(i)) < 0 ) {
            return false;
        }
    }

    return true;
}

function EhReal (campo) {
    var i
    var digitos = "0123456789,"

    //Deve ter ao menos um caractere
    if ((campo == null) || (campo.length == 0)) {
        return false;
    }

    //Todos os caracteres devem ser digitos
    for (i=0; i < campo.length; i++) {
        if (digitos.indexOf(campo.charAt(i)) < 0 ) {
            return false;
        }
    }

    return true;
}


function EhLimite (campo, vlrmin, vlrmax) {
    var num = eval('1 * ' + campo)

    //Campo tem que estar entre vlrmin e vlrmax
    return ((num >= vlrmin) && (num <= vlrmax));
}


function AAAAMMDD (campo) {
    var data_num = "";

    data_num = campo.charAt(6) + campo.charAt(7) + campo.charAt(8)
             + campo.charAt(9) + campo.charAt(3) + campo.charAt(4)
             + campo.charAt(0) + campo.charAt(1);

    return data_num;
}


function EhData (campo, nome_campo) {
    var data_num = "";

    //Testa se data está em branco ou contém apenas caracteres brancos
    if (EhVazio(campo) == false) {
        alert ("Data inválida. Use o formato dd/mm/aaaa.");
        return false;
    }

    //Testa o comprimento da data
    if (campo.length != 10) {
        alert("Data inválida. Use o formato dd/mm/aaaa.");
        return false;
    }

    //Monta os caracteres que devem ser digitos
    //Caracteres devem ser digitos
    if (!EhNumero(AAAAMMDD(campo))) {
        alert("Data inválida. Use o formato dd/mm/aaaa.");
        return false;
    }

    //Terceiro e quinto caracteres devem ser '/'
    if ((campo.charAt(2) != "/") || (campo.charAt(5) != "/")) {
        alert("Data inválida. Use o formato dd/mm/aaaa.");
        return false;
    }

    //Dias devem ser entre 01 e 31
    if (!EhLimite(campo.charAt(0) + campo.charAt(1), 1, 31)) {
        alert("Data inválida. Use o formato dd/mm/aaaa.");
        return false;
    }


    //Meses devem ser entre 01 e 12
    if (!EhLimite(campo.charAt(3) + campo.charAt(4), 1, 12)) {
        alert ("Data inválida. Use o formato dd/mm/aaaa.");
        return false;
    }

    //Data OK
    return true;
}


