﻿/*
 * Validaci�n de campos vacios del REC
 */
function recValidation(name, quantity){
	for(i=0;i<quantity;i++){
		if(document.getElementById(name+(i+1)).value==""){
			color(name+(i+1),false);
			return "El campo no puede estar vacío";
		}
		else
			color(name+(i+1),true);
	}
	return null;
}

/*
 * Validaci�n de m�nimo de d�gitos de un campo
 */
function countMin(component, minValue){
	if(document.getElementById(component).value.length<minValue){
		color(component, false);
		alert("El campo debe contener más de "+(minValue-1)+" caracteres");		
		return true;
	}
	color(component,true);
	return false;
}

/*
 * Validaci�n de m�ximo de d�gitos de un campo.
 */
function countMax(component, maxValue){
	if(document.getElementById(component).value.length>maxValue){
		color(component, false);
		alert("El campo debe contener menos de "+(maxValue+1)+" caracteres");		
		return true;
	}
	color(component,true);
	return false;
}

/*
 * Validaci�n de cantidad de d�gitos exactos de un campo.
 */
function countEquals(component, eqValue){
	if(document.getElementById(component).value.length!=eqValue){
		color(component, false);
		alert("El campo debe contener exactamente "+ eqValue+" caracteres");		
		return true;
	}
	color(component,true);
	return false;
}

/*
 * Validaci�n de campo vac�o, regresa true si vacio, false en caso contrario.
 */
function isEmpty(component, toPrint){
	if(document.getElementById(component).value.length==0){
		if(toPrint){
			color(component, false);
			alert("El campo no puede estar vacío");			
		}
		return true;
	}
	else{
		if(toPrint)
			color(component,true);
		return false;
	}
}

/*
 * Validaci�n de checkbox, regresa true si est� seleccionado, false en caso contrario.
 */
function isChecked(component){
	if(document.getElementById(component) && document.getElementById(component).checked)
		return true;
	return false;
}

/*
 * Validaci�n de combobox, regresa true si est� seleccionado alg�n valor, false en caso contrario.
 */
function isComboEmpty(component, mensaje){
	if(document.getElementById(component).selectedIndex == 0){
		if(mensaje == true){
			color(component, false);
			alert("El campo no puede estar vacío");
		}
		return true;
	}
	if(mensaje == true)
		color(component,true);	
	return false;
}

/*
 * Validaci�n de direcci�n de correo electr�nico. El campo debe contener @.
 */
function email(component){
	if (document.getElementById(component).value.indexOf('@') == -1){
		color(component, false);
		alert ("Debe ingresar una dirección de correo electrónico válida");		
		return true;
	}
	color(component,true);
	return false;
}

/*
 * Cambio de color de los campos una vez validados. Verde si es correcto, rojo en caso de error.
 */
function color(component, isGood){
	if(document.getElementById(component)){
		if(isGood)
			document.getElementById(component).style.backgroundColor = '#E6E6E6';
		else{
			document.getElementById(component).style.backgroundColor = '#CC0033';
		}					
	}
}

function valorMayor(component, limite){	
	try{
		valor = parseInt(document.getElementById(component).value);
		if(valor < limite){
			color(component, false);
			alert("Debe ser un valor mayor ó igual a "+limite);
			return false;
		}
		color(component, true);
		return true;
	}
	catch(e){
		color(component, false);
		alert("Debe ser un valor mayor ó igual a "+limite);
		return false;
	}
}
