// JavaScript Document
var valoresDefectoForm_pedido_cas=new Array("",
										   	"",
										   	"",
										   	"",
										   	"");
var valoresDefectoForm_pedido_eng=new Array("",
										   	"",
										   	"",
										   	"",
										   	"");

var valoresDefectoForm_alquiler_cas=new Array("",
										   	  "",
										   	  "",
										   	  "",
										   	  "");
var valoresDefectoForm_alquiler_eng=new Array("",
										   	  "",
										   	  "",
										   	  "",
										   	  "");

var valoresDefectoForm_contacto_cas=new Array("",
										   	  "",
										   	  "",
										   	  "",
										   	  "");
var valoresDefectoForm_contacto_eng=new Array("",
										   	  "",
										   	  "",
										   	  "",
										   	  "");

function aplicaRegExp(cadena,tipus)
{
	switch(tipus)
	{
		case "nombre":
			var regExp=/[^0-9]{1,60}/;
			break;
		case "telefono":
			var regExp=/[0-9 \-]{6,12}/;
			break;
		case "email":
			var regExp=/^.+@.+\..{2,3}$/;
			break;
		case "fecha":
			//este monstruo analiza la fecha en formato DD-MM-YYYY teniendo en cuenta que la fecha introducida exista (falla para el 31-02-2000, por ejemplo):
			var regExp=/^((((0?[1-9]|[12]\d|3[01])[\/\-](0?[13578]|1[02])[\/\-]((1[6-9]|[2-9]\d)?\d{2}))|((0?[1-9]|[12]\d|30)[\/\-](0?[13456789]|1[012])[\/\-]((1[6-9]|[2-9]\d)?\d{2}))|((0?[1-9]|1\d|2[0-8])[\/\-]0?2[\/\-]((1[6-9]|[2-9]\d)?\d{2}))|(29[\/\-]0?2[\/\-]((1[6-9]|[2-9]\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)|00)))|(((0[1-9]|[12]\d|3[01])(0[13578]|1[02])((1[6-9]|[2-9]\d)?\d{2}))|((0[1-9]|[12]\d|30)(0[13456789]|1[012])((1[6-9]|[2-9]\d)?\d{2}))|((0[1-9]|1\d|2[0-8])02((1[6-9]|[2-9]\d)?\d{2}))|(2902((1[6-9]|[2-9]\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)|00))))$/;
			break;
		case "hora":
			var regExp=/^((\d)|(0\d)|(1\d)|(2[0-3]))\:((\d)|([0-5]\d))$/;
	}
	
	if(cadena.match(regExp))
	{
		return true;
	} else {
		return false;
	}
}

function llenaFormulario(idioma,form)
{
	var formulario=eval("document."+form+"_form");
	if(document.all)
	{
		var ini=2;
	} else {
		var ini=0;
	}
	for(var i=ini;i<formulario.elements.length-1;i++)
	{
		if(document.all)
		{
			var valIni=i-2;
		} else {
			var valIni=i;
		}
		if(formulario.elements[i].value == "") setCont(formulario.elements[i],valIni,'1',idioma,form);
	}
}

function setCont(elemento,idLabel,tipo,idioma,form)
{
	/************************************************************************************************
	 tipo=0  ==>  sustituye el valor del campo "elemento" 
	 tipo=1  ==>  sustituye el valor del campo "elemento" si elemento está vacío
	 ************************************************************************************************/
	var valoresDefectoForm=eval("valoresDefectoForm_"+form+"_"+idioma);
	switch(tipo)
	{
		case "0":
			if(elemento.value == valoresDefectoForm[idLabel]) elemento.value="";
			break;
		case "1":
			if(elemento.value == "") elemento.value=valoresDefectoForm[idLabel];
			break;
		case "2":
			elemento.value=valoresDefectoForm[idLabel];
			break;
	}
}

function resetForm(idioma,form)
{
	var formulario=eval("document."+form+"_form");
	for(var i=0;i<formulario.elements.length-1;i++)
	{
		setCont(formulario.elements[i],i,'2',idioma,form);
	}
}

function sendForm(idioma,form)
{
	var formulario=eval("document."+form+"_form");
	var valoresDefectoForm=eval("valoresDefectoForm_"+form+"_"+idioma);
	var valores_arr=new Array();
	var error=false;
	var errorMsg="";
	for(var i=0;i<formulario.elements.length-2;i++)
	{
		if(formulario.elements[i].value == valoresDefectoForm[i] || formulario.elements[i].value == "")
		{
			error=true;
			switch(idioma)
			{
				case "cas":
					errorMsg+="- Debes introducir todos los datos obligatorios.\n\n";
					break;
				case "eng":
					errorMsg+="- You must fill in all obligatory fields.\n\n";
					break;
			}
			break;
		} else {
			valores_arr[formulario.elements[i].id]=formulario.elements[i].value;
		}
	}
	
	if(!error)
	{
		if(!aplicaRegExp(valores_arr['name'],'nombre'))
		{
			error=true;
			switch(idioma)
			{
				case "cas":
					errorMsg+="- Tu nombre no tiene un formato valido.\n\n";
					break;
				case "eng":
					errorMsg+="- Your name does not have a valid format.\n\n";
					break;
			}
		}
		
		if(!aplicaRegExp(valores_arr['mail'],'email'))
		{
			error=true;
			switch(idioma)
			{
				case "cas":
					errorMsg+="- Tu e-mail no tiene un formato valido.\n\n";
					break;
				case "eng":
					errorMsg+="- Your e-mail address does not have a valid format.\n\n";
					break;
			}
		}
		
/*		if(!aplicaRegExp(valores_arr['telf'],'telefono'))
		{
			error=true;
			switch(idioma)
			{
				case "cas":
					errorMsg+="- Tu telefono no tiene un formato valido.\n\n";
					break;
				case "eng":
					errorMsg+="- Your telephone number does not have a valid format.\n\n";
					break;
			}
		}*/
		
/*		var fecha_arr=valores_arr['date'].split(" ");
		if(fecha_arr.length == 2)
		{
			if(!aplicaRegExp(fecha_arr[0],'fecha'))
			{
				error=true;
				switch(idioma)
				{
					case "cas":
						errorMsg+="- La fecha no es valida (debe ser una fecha real y en formato ''DD-MM-AAAA'').\n\n";
						break;
					case "eng":
						errorMsg+="- The date is not valid (it must be a real date and to be formatted ''DD-MM-YYYY'').\n\n";
						break;
				}
			}
			if(!aplicaRegExp(fecha_arr[1],'hora'))
			{
				error=true;
				switch(idioma)
				{
					case "cas":
						errorMsg+="- La hora no es valida (debe ser una hora real y en formato ''HH:MM'').\n\n";
						break;
					case "eng":
						errorMsg+="- The time is not valid (it must be a real time and to be formatted ''HH:MM'').\n\n";
						break;
				}
			}
		} else {
			error=true;
			switch(idioma)
			{
				case "cas":
					errorMsg+="- Debes introducir una hora de reserva en formato ''HH:MM''.\n\n";
					break;
				case "eng":
					errorMsg+="- You must enter a reservation time in format ''HH:MM''.\n\n";
					break;
			}
		}*/
	}
	
	if(error)
	{
		alert(errorMsg);
	} else {
		formulario.goback.value=self.location;
		formulario.submit();
	}
}

function toggleDIV_destacado(kind)
{
	$("#txt-item-cont-grande").css("visibility",kind);
}
