var esNav4 = false, esNav5 = false, esIE4 = false;
var strSeparador = "/"; 
if(navigator.appName == "Netscape") {
	if (navigator.appVersion < "5") {
		esNav4 = true;
	}  
	if (navigator.appVersion > "4") {
		// Navigator 6.0
		esNav5 = true;
	}
} else {
	esIE4 = true;
}

function validarlongitud(texto) {
	campotexto=texto;
	return(campotexto.length);
}

function FormatoNumerico(vObjetoNumero) {
	//onKeyUp="FormatoNumerico(this)"
	var ObjetoNumero = ''; 
	var strChequear = '0123456789,';
	for (var i=0;i<vObjetoNumero.value.length;i++) {
		// Creando string numerico para 0123456789/
		if (strChequear.indexOf(vObjetoNumero.value.substr(i,1)) != -1) {
			ObjetoNumero = ObjetoNumero + vObjetoNumero.value.substr(i,1);
		}
	}
	if( vObjetoNumero.value != ObjetoNumero) {
		vObjetoNumero.value = ObjetoNumero;
	}
	return false;
}

function FormatoFecha(vObjetoFecha, vFecha, e) 
	{
		var whichCode = (window.Event) ? e.which : e.keyCode;
		if (whichCode == 8) // Ignora el valor BackSpace de Netscape. IE no tiene valor para backspace
		return false;
		else 
			{
				// Creando string numerico para 0123456789/
				var strChequear = '48,49,50,51,52,53,54,55,56,57,58,59,191,96,97,98,99,100,101,102,103,104,105,109';
				if (strChequear.indexOf(whichCode) != -1) 
					{
						if (esNav4) 
							{
								if (vFecha.length == 8) 
									{
										var mdia   = vObjetoFecha.value.substr(0,2);
										var mmes = vObjetoFecha.value.substr(2,2);
										var mano  = vObjetoFecha.value.substr(4,4) 
										vObjetoFecha.value = mdia+strSeparador+mmes+strSeparador+mano;
										if (!validarFecha(vObjetoFecha)) 
											{
												alert("Fecha Invalida Porfavor Re-Tipee la Fecha");
												vObjetoFecha.value = "";
												return true;
											}
									}
							}
						else 
							{
								if (vFecha.length == 2) 
									{
										vObjetoFecha.value = vFecha+strSeparador;
									}
								if (vFecha.length == 5) 
									{
										vObjetoFecha.value = vFecha+strSeparador;
									}
							}
						if (vFecha.length == 10) 
							{
								if (!validarFecha(vObjetoFecha)) 
									{
										alert("Fecha Invalida Porfavor Re-Tipee la Fecha");
										vObjetoFecha.value = "";
										vObjetoFecha.focus();
										vObjetoFecha.select();
									}
							}
						return false;
					}
				else 
					{
						// Si el valor no se encuentra en el string devolver el varlor menos el valor invalido
						vObjetoFecha.value = vObjetoFecha.value.substr(0,(vFecha.length-1));
						return false;
					}
			}
	}

function validarFecha(objeto) 
	{
		var strFecha;
		var strArregloFecha;
		var strdia;
		var strmes;
		var strano;
		var intdia;
		var intmes;
		var intano;
		var booFound = false;
		var fechafield = objeto;
		var strSeparadorArreglo = new Array("-"," ","/",".");
		var intElementoNo;
		var err = 0;
		var strmesArreglo = new Array(12);
		strmesArreglo[0] = "Ene";
		strmesArreglo[1] = "Feb";
		strmesArreglo[2] = "Mar";
		strmesArreglo[3] = "Abr";
		strmesArreglo[4] = "May";
		strmesArreglo[5] = "Jun";
		strmesArreglo[6] = "Jul";
		strmesArreglo[7] = "Ago";
		strmesArreglo[8] = "Sep";
		strmesArreglo[9] = "Oct";
		strmesArreglo[10] = "Nov";
		strmesArreglo[11] = "Dic";
		strFecha = fechafield.value;
		if (strFecha.length < 1) 
			{
				return true;
			}
		for (intElementoNo = 0; intElementoNo < strSeparadorArreglo.length; intElementoNo++) 
			{
				if (strFecha.indexOf(strSeparadorArreglo[intElementoNo]) != -1) 
					{
						strArregloFecha = strFecha.split(strSeparadorArreglo[intElementoNo]);
						if (strArregloFecha.length != 3) 
							{
								err = 1;
								return false;
							}
						else 
							{
								strdia = strArregloFecha[0];
								strmes = strArregloFecha[1];
								strano = strArregloFecha[2];
							}
						booFound = true;
					}
			}
		if (booFound == false) 
			{
				if (strFecha.length>5) 
					{
						strdia = strFecha.substr(0, 2);
						strmes = strFecha.substr(2, 2);
						strano = strFecha.substr(4);
					}
			}
		if (strano.length == 2) 
			{
				strano = '20' + strano;
			}
		strTemp = strdia;
		//si desean la fecha en formato mm/dd/aaaa eliminar el // de las dos sigientes lineas
		//strdia = strmes;
		//strmes = strTemp;
		intdia = parseInt(strdia, 10);
		if (isNaN(intdia)) 
			{
				err = 2;
				return false;
			}
		intmes = parseInt(strmes, 10);
		if (isNaN(intmes)) 
			{
				for (i = 0; i < 12; i++) 
					{
						if (strmes.toUpperCase() == strmesArreglo[i].toUpperCase()) 
							{
								intmes = i + 1;
								strmes = strmesArreglo[i];
								i = 12;
							}
					}
				if (isNaN(intmes)) 
					{
						err = 3;
						return false;
					}
			}
		intano = parseInt(strano, 10);
		if (isNaN(intano)) 
			{
				err = 4;
				return false;
			}
		if (intmes > 12 || intmes < 1) 
			{
				err = 5;
				return false;
			}
		if ((intmes == 1 || intmes == 3 || intmes == 5 || intmes == 7 || intmes == 8 || intmes == 10 || intmes == 12) && (intdia > 31 || intdia < 1)) 
			{
				err = 6;
				return false;
			}
		if ((intmes == 4 || intmes == 6 || intmes == 9 || intmes == 11) && (intdia > 30 || intdia < 1)) 
			{
				err = 7;
				return false;
			}
		if (intmes == 2) 
			{
				if (intdia < 1) 
					{
						err = 8;
						return false;
					}
				if (anoBisiesto(intano) == true) 
					{
						if (intdia > 29) 
							{
								err = 9;
								return false;
							}
					}
				else 
					{
						if (intdia > 28) 
							{
								err = 10;
								return false;
							}
					}
			}
		return true;
	}

	
function anoBisiesto(intano) 
	{
		if (intano % 100 == 0) 
			{
				if (intano % 400 == 0) 
					{ 
						return true; 
					}
			}
		else 
			{
				if ((intano % 4) == 0) 
					{
						return true;
					}
			}
		return false;
	}

function Formatocedula(vObjetoNumero) {
	var ObjetoFinal = ''; 
	var strChequear1 = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWZYZ';
	var strChequear2 = '0123456789';
	for (var i=0;i<vObjetoNumero.value.length;i++) {
		// Creando string numerico para 0123456789/
		if (i==0) {
			if (strChequear1.indexOf(vObjetoNumero.value.substr(i,1)) != -1)
				ObjetoFinal = ObjetoFinal + vObjetoNumero.value.substr(i,1);
		} else {
			if (i==3 && ObjetoFinal.length<3)
				break;
			if (strChequear2.indexOf(vObjetoNumero.value.substr(i,1)) != -1)
				ObjetoFinal = ObjetoFinal + vObjetoNumero.value.substr(i,1);
		}
	}
	if( vObjetoNumero.value != ObjetoFinal.toUpperCase()) {
		vObjetoNumero.value = ObjetoFinal.toUpperCase();
	}
	return false;
}

function Cambiar1raMayuscula(frmObj) 
	{
		var index;
		var tmpStr;
		var tmpChar;
		var preString;
		var postString;
		var strlen;
		tmpStr = frmObj.value.toLowerCase();
		strLen = tmpStr.length;
		if (strLen > 0)  
			{
				for (index = 0; index < strLen; index++)  
					{
						if (index == 0)  
							{
								tmpChar = tmpStr.substring(0,1).toUpperCase();
								postString = tmpStr.substring(1,strLen);
								tmpStr = tmpChar + postString;
							}
						else 
							{
								tmpChar = tmpStr.substring(index, index+1);
								if (tmpChar == " " && index < (strLen-1))  
									{
										tmpChar = tmpStr.substring(index+1, index+2).toUpperCase();
										preString = tmpStr.substring(0, index+1);
										postString = tmpStr.substring(index+2,strLen);
										tmpStr = preString + tmpChar + postString;
									}
							}
					}
			}
		frmObj.value = tmpStr;
	}

function FormatoTexto(vObjetoTexto) {
	var ObjetoFinal = ''; 
	var strChequear1 = 'aábcdeéfghiíjklmnoópqrstuúvwxyzABCDEFGHIJKLMNOPQRSTUVWZYZ1234567890';
	for (var i=0;i<vObjetoTexto.value.length;i++) {
		if (strChequear1.indexOf(vObjetoTexto.value.substr(i,1)) != -1)
			ObjetoFinal = ObjetoFinal + vObjetoTexto.value.substr(i,1);
	}
	vObjetoTexto.value = ObjetoFinal;
	return false;
}
function FormatoTexto2(vObjetoTexto) {
	var ObjetoFinal = ''; 
	var strChequear1 = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWZYZ1234567890';
	for (var i=0;i<vObjetoTexto.value.length;i++) {
		if (strChequear1.indexOf(vObjetoTexto.value.substr(i,1)) != -1)
			ObjetoFinal = ObjetoFinal + vObjetoTexto.value.substr(i,1);
	}
	vObjetoTexto.value = ObjetoFinal;
	return false;
}
function BuscarArroba(Palabra)
{
	var Contador = 0;
	var Letra = "";
	var i;
	for (i=0;i<Palabra.value.length;i++)
	{
		Letra = Palabra.value.substr(i,1);
		if (Letra == "@")
		{
			Contador++;
		}
	}
	return Contador
}

function FormatoTexto1(vObjetoTexto) {
	var ObjetoFinal = ''; 
	var strChequear1 = ' aábcdeéfghiíjklmnoópqrstuúvwxyzABCDEFGHIJKLMNOPQRSTUVWZYZñÑ';
	for (var i=0;i<vObjetoTexto.value.length;i++) {
		if (strChequear1.indexOf(vObjetoTexto.value.substr(i,1)) != -1)
			ObjetoFinal = ObjetoFinal + vObjetoTexto.value.substr(i,1);
	}
	vObjetoTexto.value = ObjetoFinal;
	return false;
}

function ValidaLogin(vObjetoTexto) {
	var ObjetoFinal = ''; 
	var strChequear1 = '_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWZYZ1234567890';
	for (var i=0;i<vObjetoTexto.value.length;i++) {
		if (strChequear1.indexOf(vObjetoTexto.value.substr(i,1)) != -1)
			ObjetoFinal = ObjetoFinal + vObjetoTexto.value.substr(i,1);
	}
	vObjetoTexto.value = ObjetoFinal;
	return false;
}
