onload=function() 
{
	claseNormal="inptex";
	claseError="inputError";
}
function nuevoAjax()
{ 
	var xmlhttp=false; 
	try 
	{ 
		// No IE
		xmlhttp=new ActiveXObject("Msxml2.XMLHTTP"); 
	}
	catch(e)
	{ 
		try
		{ 
			// IE 
			xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
		} 
		catch(E) { xmlhttp=false; }
	}
	if (!xmlhttp && typeof XMLHttpRequest!="undefined") { xmlhttp=new XMLHttpRequest(); } 
	return xmlhttp; 
}

function CambiaClase(campo,InErr)
{
	campo.className = InErr;
	error=1;
}

function eliminaEspacios(cadena)
{
	// Funcion para eliminar espacios delante y detras de cada cadena
	while(cadena.charAt(cadena.length-1)==" ") cadena=cadena.substr(0, cadena.length-1);
	while(cadena.charAt(0)==" ") cadena=cadena.substr(1, cadena.length-1);
	return cadena;
}

function validaLongitud(valor, permiteVacio, minimo, maximo)
{
	var cantCar=valor.length;
	if(valor=="")
	{
		if(permiteVacio) return true;
		else return false;
	}
	else
	{
		if(cantCar>=minimo && cantCar<=maximo) return true;
		else return false;
	}
}

function Limpia_Elemento(Elemento){
	document.getElementById(Elemento).value = "";
}
function validaCorreo(valor)
{
	var reg=/(^[a-zA-Z0-9._-]{1,30})@([a-zA-Z0-9.-]{1,30}$)/;
	if(reg.test(valor)) return true;
	else return false;
}

function Mostrar_Mensaje(Lugar, Mensaje){
	document.getElementById(Lugar).innerHTML = Mensaje;
	document.getElementById(Lugar).style.display = "block";
}

function Ocultar_Mensaje(Lugar){
	document.getElementById(Lugar).style.display = "none";
}
function envia_correo()
{
	var urlDestino = "envia_mail.php";
	CambiaClase(document.getElementById("InpNombre"),"inptex");
	CambiaClase(document.getElementById("InpEmail"),"inptex");
	CambiaClase(document.getElementById("TxtMen"),"inptex")
	CambiaClase(document.getElementById("Captcha"),"Captcha");
	error=0;
	var Nombre = eliminaEspacios(document.getElementById("InpNombre").value);
	var Correo = eliminaEspacios(document.getElementById("InpEmail").value);
	var Mensaje = eliminaEspacios(document.getElementById("TxtMen").value);
	var Captcha = eliminaEspacios(document.getElementById("Captcha").value);
														   
	if(!validaLongitud(Nombre, 0, 4, 100)) CambiaClase(document.getElementById("InpNombre"),"inputError");
	if(!validaCorreo(Correo)) CambiaClase(document.getElementById("InpEmail"),"inputError");
	if(!validaLongitud(Mensaje, 0, 4, 1000)) CambiaClase(document.getElementById("TxtMen"),"inputError");
	if(!validaLongitud(Captcha, 0, 1, 5)) CambiaClase(document.getElementById("Captcha"),"CaptchaError");
	if (error == 1){
			Mostrar_Mensaje("MensajeError","Error: Revise los campos en rojo.");
		}
	else{
		Ocultar_Mensaje("MensajeError");
		Mostrar_Mensaje("Mensaje","<img src=\"img/loading.gif\" width=\"49\" height=\"50\" />Enviando correo");
		var ajax=nuevoAjax();
		ajax.open("POST", urlDestino, true);
		ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		ajax.send("Nombre="+Nombre+"&Correo="+Correo+"&Mensaje="+Mensaje+"&Captcha="+Captcha);
		ajax.onreadystatechange=function(){
		if (ajax.readyState==4){
				var json = eval(ajax.responseText);
				if (json[0].Tipo == 1)
					{
						Mostrar_Mensaje("MensajeError",json[0].Error);
						Ocultar_Mensaje("Mensaje");
					}
				else {
 						Mostrar_Mensaje("Mensaje",json[0].Error);
						Limpia_Elemento("InpNombre");
						Limpia_Elemento("InpEmail");
						Limpia_Elemento("TxtMen");
						Limpia_Elemento("Captcha");
						setTimeout("document.location.href='contacto.html'",10000);
					}
			}
		}
		}	
}
