var divTransparente;
var divMensaje;
var form;
var urlDestino;
var claseNormal;
var claseError;
var error;
var i;
onload=function() {
	divTransparente=document.getElementById("alerta");
	divMensaje=document.getElementById("alertaMSN");
	form=document.getElementById("formulario");
	urlDestino="http://www.videojuegosymas.com/ajax/recomendar.php";
	claseNormal="input";
	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 limpiaForm(){
	for(i=1; i<=3; i++){
		form.elements[i].className=claseNormal;
	}
}

function campoError(campo){
	campo.className=claseError;
	error=1;
}

function ocultaMensaje(){
	divTransparente.style.display="none";
}

//MUESTRA EL MSN EN UNA VENTANA NUEVA
function muestraMensaje(mensaje){
	divMensaje.innerHTML=mensaje;
	divTransparente.style.display="block";
}

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 comparaValorInicio(valorAhora, valorInicio){
	if(valorAhora==valorInicio)	{
		return false;
	}else{
		return true;
	}
}

function validaCorreo(valor) {
	if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(valor)){
		return (true)
	} else {
		return (false);
	}
}

function validaFormRecomendar(){
	limpiaForm();
	error=0;
	var nombre=eliminaEspacios(form.inputNombre.value);
	var amigo=eliminaEspacios(form.inputAmigo.value);
	var correo=eliminaEspacios(form.inputCorreo.value);
	var id=eliminaEspacios(form.inputId.value);

	if(!validaLongitud(nombre, 0, 3, 50)) campoError(form.inputNombre);
	if(!validaLongitud(amigo, 0, 3, 50)) campoError(form.inputAmigo);
	if(!validaCorreo(correo)) campoError(form.inputCorreo);

	if(error==1)	{
		var texto="<p class=\"error\">Error!! Revisa los campos en rojo.</p>";
		muestraMensaje(texto);
	}	else	{
		var texto="<p class=\"ok\">Enviando... Por favor espera.</p>";
		muestraMensaje(texto);

		var ajax=nuevoAjax();
		ajax.open("POST", urlDestino, true);
		ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		ajax.send("nombre="+nombre+"&amigo="+amigo+"&correo="+correo+"&id="+id);

		ajax.onreadystatechange=function(){
			if (ajax.readyState==4){
				var respuesta=ajax.responseText;
				
				//quito espacios en blanco
				String.prototype.trim = function() { return this.replace(/^\s+|\s+$/g, ""); };
				respuesta=respuesta.trim();
				
				if(respuesta == "OK"){
					var texto="<p class=\"ok\">Gracias.<br />Tu amigo/a ya ha recibido esta p&aacute;gina.</p>";
				}else if(respuesta == "MUCHOS"){
					var texto="<p class=\"error\">No puedes recomendar la p&aacute;gina tantas veces.</p>";
				} else {
					var texto="<p class=\"error\">Error!! int&eacute;ntalo m&aacute;s tarde.</p>";
				}
				
				muestraMensaje(texto);
			}
		}
	}
}