function isblank(s) {
    for(var i = 0; i < s.length; i++) {
        var c = s.charAt(i);
        if ((c != ' ') && (c != '\n') && (c != '\t')) return false;
    }
    return true;
}

function validarCampoVacio(c, m, l) {
    m = (m==true) ? true : false;
	
    if ((c.value == null) || (c.value == "") || isblank(c.value)) {
        if (m) {  
            if ((c.alias == null) || (c.alias == "") || (isblank(c.alias))) {
                msg = (l == "i") ? "The field " + c.name + " is empty." : "El campo " + c.name + " esta vacio.";
                alert(msg);
            } else {
                msg = (l == "i") ? "The field " + c.alias + " is empty." : "El campo " + c.alias + " esta vacio.";
                alert(msg);
            }
        }
        c.focus();
        return false;
    }
    return true;
}

function validarFrm(f, l) {
    var msg;
    var empty_fields = "";
    var errors = "";
    var campo = null;

    for(var i = 0; i < f.length; i++) {
        var e = f.elements[i];
		
        if (((e.type == "text") || (e.type == "textarea") || (e.type=="password")) && !e.optional) {
            if ((e.value == null) || (e.value == "") || isblank(e.value)) {
                if ((e.alias == null) || (e.alias == "") || (isblank(e.alias))) {
                    empty_fields += "\n\t- " + e.name;
                } else { empty_fields += "\n\t- " + e.alias; }
                
                if (campo == null) { campo = e; }
                
                continue;
            }
            
            if (e.numeric || (e.min != null && e.min != "") || (e.max != null && e.max != "")) {
                var v = parseFloat(e.value);

                if (isNaN(v) || ((e.min != null) && (v < e.min)) || ((e.max != null) && (v > e.max))) {
                    if ((e.alias == null) || (e.alias == "") || (isblank(e.alias))) {
                        errors += (l == "i") ? "- The field " + e.name + " must be a number" : "- El campo " + e.name + " debe ser un número";
                    } else {
                        errors += (l == "i") ? "- The field " + e.alias + " must be a number" : "- El campo " + e.alias + " debe ser un número";
                    }

                    if (e.min != null) {
                        errors += (l == "i") ? " major of " + e.min : " mayor de " + e.min;
                    }

                    if (e.max != null && e.min != null) {
                        errors += (l == "i") ? " and minor of " + e.max : " y menor de " + e.max;
                    } else if (e.max != null) {
                        errors += (l == "i") ? " that is minor of " + e.max : " que es menor que " + e.max;
                    }

                    errors += ".\n";
                    
                    if (campo == null) {
                        campo = e;
                    }
                }
            }
        } else {
            if (e.type == "select-one" && !e.optional && e.value == "0") {
                if ((e.alias == null) || (e.alias == "") || (isblank(e.alias))) {
                    empty_fields += "\n\t- " + e.name;
                } else { empty_fields += "\n\t- " + e.alias; }
                
                if (campo == null) {
                    campo = e;
                }
                continue;
            }
        }
    }

    if (!empty_fields && !errors) return true;
    
    msg  = "______________________________________________________\n\n";
    if (l == "i") {
        msg += "The information don't sand.\n";
        msg += "Please review the following information.\n";
    } else {
        msg += "La información no ha sido enviada.\n";
        msg += "Por favor revise la siguiente información.\n";
    }
    msg += "______________________________________________________\n\n";
    if (empty_fields) {
        msg += (l == "i") ? "- The next information requerida is empty" : "- La siguiente información requerida esta vacía:";
        msg += empty_fields + "\n";
        if (errors) msg += "\n";
    }
    msg += errors;
    alert(msg);
    if (campo != null) {
        campo.focus();
    //campo.select();
    }
    return false;
}

function validarEmail(c, l) {
    var str = c.value;
    if(str.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1) {
        return true;
    } else {
        msg = (l == "i") ? "e-mail is wrong" : "correo electronico es invalido";
        alert("\"" + str + "\" " + msg + "!");
        c.focus();
        c.select();
        return false;
    }
}

function verificarIgualdad(c1, c2) {
    return (c1.value == c2.value) ? true : false;
}


