// Variables para setear
onload=function() 
{
	divTransparente=document.getElementById("transparencia");
	divMensaje=document.getElementById("transparenciaMensaje");
	form=document.getElementById("formulario");
	urlDestino="mail.php";
	
	claseNormal="input_formulario";
	claseNormalMini="input_formulario_mini";
	claseError="input_formulario_error";
	claseErrorMini="input_formulario_mini_error";
		
}

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()
{
	document.getElementById("inputFecha").className=claseNormalMini;
	document.getElementById("inputHora").className=claseNormalMini;
	document.getElementById("inputGrupos").className=claseNormal;
	document.getElementById("inputLugar").className=claseNormal;
	document.getElementById("inputLocalidad").className=claseNormal;
	document.getElementById("inputProvincia").className=claseNormal;	
	document.getElementById("inputDatos").className=claseNormal;
}

function limpiaFormContenido()
{
	document.getElementById("inputFecha").value="";
	document.getElementById("inputHora").value="";
	document.getElementById("inputGrupos").value="";
	document.getElementById("inputLugar").value="";
	document.getElementById("inputLocalidad").value="";
	document.getElementById("inputProvincia").value="";
	document.getElementById("inputDatos").value="";
}

function campoError(campo,clase)
{
	campo.className=clase;
	error=1;
}

function ocultaMensaje(valor)
{
	divTransparente.style.display="none";

	if (valor==1)
	{
			limpiaFormContenido();
	}
}

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);
	cadena = cadena.replace(/&/g, 'y');
	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 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 validaForm()
{
	limpiaForm();
	error=0;
	
	var tipo=eliminaEspacios(form.inputTipo.value);
	var fecha=eliminaEspacios(form.inputFecha.value);
	var hora=eliminaEspacios(form.inputHora.value);
	var grupos=eliminaEspacios(form.inputGrupos.value);
	var lugar=eliminaEspacios(form.inputLugar.value);
	var localidad=eliminaEspacios(form.inputLocalidad.value);
	var provincia=eliminaEspacios(form.inputProvincia.value);
	var datos=eliminaEspacios(form.inputDatos.value);
	
	if(!validaLongitud(fecha, 0, 2, 15)) campoError(form.inputFecha,claseErrorMini);
	if(!validaLongitud(grupos, 0, 2, 150)) campoError(form.inputGrupos,claseError);
	if(!validaLongitud(lugar, 0, 2, 100)) campoError(form.inputLugar,claseError);
	if(!validaLongitud(localidad, 0, 2, 100)) campoError(form.inputLocalidad,claseError);
	
	if(error==1)
	{
		var texto="<img src='/imagenes/web/frmerror.gif' alt='Error'><br><br><span class=textoEncabezadoNegro>Los campos que están en rojo, son obligatorios y tienen que tener un formato correcto.</spain><br><br><button onClick='ocultaMensaje(0)' type='button'>Aceptar</button>";
		muestraMensaje(texto);
	}
	else
	{
		var texto="<img src='/imagenes/web/frmloading.gif' alt='Enviando'><br><br><span class=textoEncabezadoNegro>Enviando datos...</spain><br><br><button onClick='ocultaMensaje(0)' type='button'>Ocultar</button>";
		muestraMensaje(texto);
		
		var ajax=nuevoAjax();
		ajax.open("POST", urlDestino, true);
		ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		ajax.send("tipo="+tipo+"&fecha="+fecha+"&hora="+hora+"&grupos="+grupos+"&lugar="+lugar+"&localidad="+localidad+"&provincia="+provincia+"&datos="+datos);
		
		ajax.onreadystatechange=function()
		{
			if (ajax.readyState==4)
			{
				var respuesta=ajax.responseText;
				if(respuesta=="OK")
				{
					var texto="<img src='/imagenes/web/frmok.gif' alt='Ok'><span class=textoEncabezadoNegro><br><br>Concierto enviado correctamente<br><br>En las pr&oacute;ximas horas le insertaremos en la agenda.<br><br></spam><button onClick='ocultaMensaje(1)' type='button'>Aceptar</button><button onClick='ocultaMensaje(0)' type='button'>Recuperar datos enviados</button>";
				}
				else var texto="<img src='/imagenes/web/frmerror.gif'><br><br><span class=textoEncabezadoNegro>En estos momentos no podemos enviar los datos, por favor, inténtalo mas tarde.</spain><br><br><button onClick='ocultaMensaje(0)' type='button'>Aceptar</button>";
				
				muestraMensaje(texto);
			}
		}
	}
}

