////////////////////////////////////////////////////////////////////////////////////////////////
// Libreria: funciones.js   version: 2
// Desarrollado por: cristian silvero
// fecha: 7-julio-2005
//
////////////////////////////////////////////////////////////////////////////////////////////////

// Validacion de numero
function esNumero(numero) {
	var aux = false;
	if(! isNaN(numero)) aux = true;
	return aux;
}
function esEntero(numero) {
	var aux = false;
	if(esNumero(numero)) {
		if(parseInt(numero)== numero) aux = true;
	}
	return aux;
}

// Validacion de Fecha y tiempo
function esDia(dia) {
	if(esEntero(dia) && (Number(dia) > 0) && (Number(dia) < 32)) return true;
	else return false;
}
function esMes(mes) {
	if(esEntero(mes) && (Number(mes) > 0) && (Number(mes) < 13)) return true;
	else return false;
}
function esAnio(anio) {
	if(esEntero(anio) && (Number(anio) > 1899) && (Number(anio) < 2100)) return true;
	else return false;
}
function esFecha(dia,mes,anio) {
	var aux = false;
	if(esDia(dia) && esMes(mes) && esAnio(anio)) {
		if((Number(mes) == 4) || (Number(mes) == 6) || (Number(mes) == 9) || (Number(mes) == 11)) {
			if(Number(dia) < 31) aux = true; 
		} else if(Number(mes) == 2) {
			if((Number(anio) % 4) != 0) {
				if(Number(dia) < 29) aux = true;
			} else {
				if(Number(dia) < 30) aux = true;
			}
		}	
	}
	return aux;
}
function esHora(hora) {
	if(esEntero(hora) && (Number(hora) > -1) && (Number(hora) < 24)) return true;
	else return false;
}
function esMinuto(minuto) {
	if(esEntero(minuto) && (Number(minuto) > -1) && (Number(minuto) < 60)) return true;
	else return false;
}
function esSegundo(segundo) {
	if(esEntero(segundo) && (Number(segundo) > -1) && (Number(segundo) < 60)) return true;
	else return false;
}
function esTiempo(hora,minuto,segundo) {
	if(esHora(hora) && esMinuto(minuto) && esSegundo(segundo)) return true;
	else return false;	
}
function esFechaTiempo(dia,mes,anio,hora,minuto,segundo) {
	if(esFecha(dia,mes,anio) && esTiempo(hora,minuto,segundo)) return true;
	else return false;
}

// Validacion varias
function esEmail(email) {
	var aux = false;
	var datos = String(email).split("@"); 
	if(datos.length == 2) {
		if(datos[1].split(".").length > 1) aux = true;
	}	
	return aux;
}
function esNulo(cadena) {
	if((String(cadena).length + 1) == String(cadena).split(" ").length) return true;
	else return false; 
}
function esFormOK(form) {
    var seguir = true;
    var i=0;

    while((i < form.elements.length )&& seguir) {
    	if(form.elements[i].id.split("|").length > 1) {
    		var datos = form.elements[i].id.split("|");
    		if((datos[1] == "NONULO") && (esNulo(form.elements[i].value))) {
    			alert("El campo: "+form.elements[i].title+" es un campo OBLIGATORIO\nCompletelo y vuelva a guardar...");
    			seguir = false;
    		} else {
    			if(! esNulo(form.elements[i].value)) {
    				if((datos[0] == "ENTERO") && (! esEntero(form.elements[i].value))) {
    					alert("En el campo: "+form.elements[i].title+" no se ingreso un valor entero,\nIngreselo y vuelva a guardar...");
    					seguir = false;
    				}
    				if((datos[0] == "NUMERO") && (! esNumero(form.elements[i].value))) {
    					alert("En el campo: "+form.elements[i].title+" no se ingreso un numero,\nIngreselo y vuelva a guardar...");
    					seguir = false;
    				}
    				if((datos[0] == "DIA") && (! esDia(form.elements[i].value))) {
    					alert("En el campo: "+form.elements[i].title+" no se ingreso un dia,\nIngreselo y vuelva a guardar...");
    					seguir = false;
    				}
    				if((datos[0] == "MES") && (! esMes(form.elements[i].value))) {
    					alert("En el campo: "+form.elements[i].title+" no se ingreso un Mes,\nIngreselo y vuelva a guardar...");
    					seguir = false;
    				}
    				if((datos[0] == "ANIO") && (! esAnio(form.elements[i].value))) {
    					alert("En el campo: "+form.elements[i].title+" no se ingreso un Año,\nIngreselo y vuelva a guardar...");
    					seguir = false;
    				}
    				if((datos[0] == "HORA") && (! esHora(form.elements[i].value))) {
    					alert("En el campo: "+form.elements[i].title+" no se ingreso un Hora,\nIngreselo y vuelva a guardar...");
    					seguir = false;
    				}
    				if((datos[0] == "MINUTO") && (! esMinuto(form.elements[i].value))) {
    					alert("En el campo: "+form.elements[i].title+" no se ingreso un minuto,\nIngreselo y vuelva a guardar...");
    					seguir = false;
    				}
    				if((datos[0] == "SEGUNDO") && (! esSegundo(form.elements[i].value))) {
    					alert("En el campo: "+form.elements[i].title+" no se ingreso un segundo,\nIngreselo y vuelva a guardar...");
    					seguir = false;
    				}
    				if((datos[0] == "EMAIL") && (! esEmail(form.elements[i].value))) {
    					alert("En el campo: "+form.elements[i].title+" no se ingreso un Email,\nIngreselo y vuelva a guardar...");
    					seguir = false;
    				}
    			}
    		}
    	}
    	i++;
    }	
    return seguir;
}
