// JavaScript Document
function esURL( cIdElement ) {
	var url = /^http:\/\/.*$/;
	var este = document.getElementById( cIdElement );
	
	return url.test( este.value );
}

function esMail( cIdElement ) {
	var correo = /^[a-zA-Z][A-Za-z0-9_\.]*@[A-Za-z0-9]+(\.[a-zA-Z0-9]+)+$/;
	var este = document.getElementById( cIdElement );
	
	return correo.test( este.value );
}

function esVacio( cIdElement ) {
	var espacios = /^\s*$/;
	var este = document.getElementById( cIdElement );
	
	return espacios.test( este.value );
}

function esFlotante( cIdElement ) {
	var numeros = /^[0-9]+[\.,]?[0-9]*$/;
	var este = document.getElementById( cIdElement );
	
	return numeros.test( este.value );
}

function esEntero( cIdElement ) {
	var entero = /^[0-9]+$/;
	var este = document.getElementById( cIdElement );
	
	return entero.test( este.value );
}

function esAlfanumerico( cIdElement ) {
	var alfanum = /^[0-9a-zA-ZñNáéíóúÁÉÍÓÚ\s]+$/;
	var este = document.getElementById( cIdElement );
	
	return alfanum.test( este.value );
}

function esAlfa( cIdElement ) {
	var texto = /^[a-zA-ZñNáéíóúÁÉÍÓÚ\s]+$/;
	var este = document.getElementById( cIdElement );
	
	return texto.test( este.value );
}

function esTelefono( cIdElement ) {
	var telefono = /^[0-9\s-()\+]+$/;
	var este = document.getElementById( cIdElement );
	
	return telefono.test( este.value );
}

function centrarVentana( cURL, nWidth, nHeight ) {
	var nX = ( screen.width - nWidth ) / 2;
	var nY = ( screen.height - nHeight ) / 2;
	var cParams = "scrollbars = yes";

	cParams += ", width = " + nWidth + "px";
	cParams += ", height = " + nHeight + "px";
	cParams += ", resizable = no";
	cParams += ", top = " + nY;
	cParams += ", left = " + nX;
	cParams += ", titlebar = no";

	window.open( cURL, "_blank", cParams );
}

function esFechaValida( idDia, idMes, idAnio )
{
	var lstAnio = document.getElementById( idAnio );
	var lstMes= document.getElementById( idMes );
	var lstDia = document.getElementById( idDia );
	var lError = false;
	var cMensaje = "";
	
	if( lstMes.value == 2 && lstDia.value >= 29 )
	{
		if( lstDia.value > 29 )
		{
			lError = true;
			cMensaje = "Febrero no puede tener más de 29 días";
		}
		else
		{
			if( lstAnio.value % 4 )
			{
				lError = true;
				cMensaje = "El año que escogió no es bisiesto";
			}
		}
	}
	
	if( lstDia.value == 31 )
	{
		switch( lstMes.value )
		{
		case "4":
		case "6":
		case "9":
		case "11":
			lError = true;
			cMensaje = "El mes escogido no tiene 31 días";
		break;
		}
	}
			
	if( lError )
		window.alert( cMensaje );
	
	return !lError; // para que regrese si la fecha es válida o no
}