function compruebaFormularioRegistro()
{
	//comprobamos que los campos de este array no esten vacios
	campos = new Array('email','password','nombre','apellidos','dni','direccion','codigo_postal','poblacion','pais','movil');
	
	var indiceSelect = document.getElementById('conocio').selectedIndex;
	var conocio = document.getElementById('conocio').options[indiceSelect].text;
	
	for(i=0; i<campos.length; i++)
	{
		if(document.getElementById(campos[i]).value == "")
		{
			alert("No deje ningún campo obligatorio vacío.");
			return false;	
		}
	}
	
	if(conocio == "Seleccione una opción")
	{
		alert("Debe indicarnos cómo nos conoció");
		return false;
	}
	
	if(document.getElementById('email').value != document.getElementById('email2').value)
	{
		alert("La confirmación del email no es correcta, vuelva a escribir el email");	
		return false;
	}
	
	if(document.getElementById('password').value != document.getElementById('password2').value)
	{
		alert("La confirmación de la contraseña no es correcta, vuelva a escribir la contraseña");	
		return false;
	}
	
	if(document.getElementById('acepto').checked == false)
	{
		alert("Debe leer y aceptar las condiciones de uso y la política de privacidad.");
		return false;
	}
	
	document.f_registro.submit();
	
}

function compruebaFormularioVenta()
{
	
	var cantidad = document.f_ventrada.cantidad.value;
	var precio = document.f_ventrada.precio_unidad.value;
	var direccion = document.f_ventrada.direccion_recogida.value;
	
	//comprobamos la cantidad
	if(cantidad == "")
	{
		alert("Debe indicar la cantidad de entradas que va a vender.");	
		return false;
	}
	
	if(isNaN(cantidad))
	{
		alert("Debe indicar la cantidad en formato numérico.");
		return false;
	}
	
	//comprobamos el precio
	if(precio == "" || precio == 0)
	{
		alert("Debe indicar el precio por unidad de la entrada.");	
		return false;
	}
	
	if(isNaN(precio))
	{
		alert("Debe indicar el precio en formato numérico y separando los decimales por puntos.");	
		return false;
	}
	
	//comprobamos la direccion de recogida
	if(direccion == "")
	{
		alert("Debe indicar la dirección en la cual podremos recoger su entrada.");
		return false;
	}
	
	//comprobamos la casilla de condiciones de uso
	if(document.f_ventrada.acepto.checked == false)
	{
		alert("Debe leer y aceptar las condiciones de uso.");
		return false;
	}
	
	document.f_ventrada.submit();
	
}

function descuentaPorcentaje(porcentaje, idRecoger, idMostrar)
{

	var cantidadRecogida = parseFloat(document.getElementById(idRecoger).value);
	var calculo;
	var texto;
	
	calculo = cantidadRecogida - (cantidadRecogida * parseInt(porcentaje)) / 100;
	
	if(cantidadRecogida == 0 || isNaN(cantidadRecogida))
	{
		texto = 'Introduzca un precio por unidad para indicarle la cantidad que usted recibir&aacute; por cada entrada vendida.';
	}
	else
	{
		calculo = Math.round(calculo * 100) / 100; //redondeo 2 decimales
		texto = calculo + '&euro; de cada entrada vendida. ';	
	}
	
	document.getElementById(idMostrar).innerHTML = texto;
}

function compruebaCambioPassword()
{
	
	var password_nueva = document.getElementById('password_nueva').value;
	var password_nueva2 = document.getElementById('password_nueva2').value;
	
	if(password_nueva != password_nueva2)
	{
		alert('La confirmación de contraseña no es correcta, introduzca los mismos datos en ambos campos, gracias.');
		return false;
	}
	
	document.f_cambiopassword.submit();
	
}

function compruebaCuentaBancaria()
{
	
	camposObligatorios = new Array('entidad_bancaria', 'titular', 'entidad', 'sucursal', 'dc', 'cuenta');
	camposNumericos = new Array(0,0,1,1,1,1); //guardamos si los campos son numéricos o no, 1 númerico y 0 sin definir.
	caracteresObligatorios = new Array(0,0,4,4,2,10); //guardamos los caracteres obligatorios de cada campo, 0 no limita caracteres
	
	for(i=0; i<camposObligatorios.length; i++)
	{
	
		//comprobamos que tengan contenido
		if(document.getElementById(camposObligatorios[i]).value == "")
		{
			alert('Debe rellenar los campos obligatorios marcados con un asterisco.');
			return false;
		}
		
		//comprobamos si es numérico
		if(camposNumericos[i] == 1 && isNaN(document.getElementById(camposObligatorios[i]).value)) 
		{
			alert('Los campos del número de cuenta deben contener sólo números.');
			return false;
		}
		
		//comprobamos si cumple la condición de los caracteres mínimos
		if(caracteresObligatorios[i] != 0 && document.getElementById(camposObligatorios[i]).value.length != caracteresObligatorios[i])
		{
			alert('En cada campo del número de cuenta, debe introducir el número de caracteres indicado en paréntesis al lado del campo.');
			return false;
		}
	
	}
	
	document.f_cuentabancaria.submit();
	
}

function mensajeIcono(idCapa, idEstado)
{	
	var estado = new Array('', 'none');
		
	document.getElementById(idCapa).style.display = estado[idEstado];
	
}

function resaltaNovedad(idResaltar, foto, maxNovedades)
{
	
	var color = Array('', '#ecf5fb');
	var display = Array('none','');
	
	
	for(i=0; i<maxNovedades; i++)
	{
		
		if(i == idResaltar)
		{
			var activo = 1;	
		}
		else
		{
			var activo = 0;	
		}
		
		if(document.getElementById('fotoNovedad-' + i))
		{
			document.getElementById('fotoNovedad-' + i).style.display = display[activo];
		}
		
		document.getElementById('novedad-' + i).style.backgroundColor = color[activo];
	
	}
	
}

function redondea2decimales(numero)
{
	return Math.round(numero * 100) / 100;
}

function previoCompraPrecioEntradas()
{	
	var precio_unidad = document.getElementById('precio_unidad').value;
	
	//select cantidad
	var indiceSelect = document.getElementById('cantidad').selectedIndex;
	var cantidad = document.getElementById('cantidad').options[indiceSelect].text;
			
	var totalEntradas = redondea2decimales(cantidad * precio_unidad);
	
	//alert("Dentro, "+precio_unidad+", "+cantidad+", "+totalEntradas);
	
	var gastosEnvio = parseFloat(document.getElementById('gastos_envio').value);
	
	var gastosReserva = redondea2decimales(totalEntradas * 10 / 100);
		
	var ivaGastosReserva = redondea2decimales(gastosReserva * 18 / 100);
	
	document.getElementById('totalEntradas').innerHTML = totalEntradas + "&euro;";
	document.getElementById('muestra-costeEntradas').innerHTML = totalEntradas + "&euro;";
	document.getElementById('coste_entradas').value = totalEntradas + "&euro;";
	
	document.getElementById('muestra-gastosReserva').innerHTML = gastosReserva + "&euro;";
	document.getElementById('gastos_reserva').value = gastosReserva + "&euro;";
	document.getElementById('muestra-ivaGastosReserva').innerHTML = ivaGastosReserva + "&euro;";
	document.getElementById('iva_gastosreserva').value = ivaGastosReserva + "&euro;";
	
	var totalGastosReserva = redondea2decimales(ivaGastosReserva + gastosReserva);
	
	document.getElementById('muestra-totalGastosReserva').innerHTML = totalGastosReserva + "&euro;";
	document.getElementById('total_gastosreserva').value = totalGastosReserva + "&euro;";
	
	var totalPedido = totalEntradas + totalGastosReserva + gastosEnvio;
	
	//gastos del tpv
	var gastosBancarios = redondea2decimales(totalPedido * 0.9 / 100);
	
	document.getElementById('muestra-gastosBancarios').innerHTML = gastosBancarios + "&euro;";
	document.getElementById('gastos_bancarios').value = gastosBancarios + "&euro;";
	
	totalPedido += gastosBancarios;
	
	totalPedido = redondea2decimales(totalPedido);
	
	//total del pedido
	document.getElementById('muestra-totalPedido').innerHTML = totalPedido + "&euro;";
	document.getElementById('total_pedido').value = totalPedido + "&euro;";
		
}

function compruebaFormularioPedido()
{	
	//campos que no pueden dejarse en blanco
	var campos = new Array('nombre_envio', 'apellidos_envio', 'direccion_envio', 'poblacion_envio', 'codigo_postal_envio', 'nombre_facturacion', 'apellidos_facturacion', 'direccion_facturacion', 'poblacion_facturacion', 'codigo_postal_facturacion');
	
	for(i=0; i<campos.length; i++)
	{		
		if(document.getElementById(campos[i]).value == "")
		{
			alert("Debe rellenar todos los campos marcado con asterisco, tanto de dirección de envío como de dirección de facturación.");
			return false;
		}
	}
	
	if(document.getElementById('acepto').checked == false)
	{
		alert("Debe leer y aceptar las condiciones de uso y la política de privacidad, situados en la parte inferior de la página.");
		return false;
	}
	
	document.f_previo_compra.submit();
	
}

function confirmaVinculo(mensaje, vinculo)
{
	if(confirm(mensaje))
	{
		document.location.href=vinculo;	
	}
}


function filtraResultadoEntradas(idMostrar)
{	
	var estado;
	var capa;
	var hMax;
	
	for(i=0; i<categoriasEvento.length; i++)
	{
		//temporal = categoriasEvento[i].replace('-');
		
		if(idMostrar == categoriasEvento[i] || idMostrar == '') estado = ''; else estado = 'none';
				
		if(document.getElementById('numEntradasCategorias'+categoriasEvento[i]))
		{
			//recogemos el numero de capas que hay con la misma id
			hMax = document.getElementById('numEntradasCategorias'+categoriasEvento[i]).value;
						
			//ocultamos o mostramos las capas
			for(h=1; h<=hMax; h++)
			{
				capa = document.getElementById('zona-'+categoriasEvento[i]+"-"+h);
				
				if(capa != null)
				{
					capa.style.display = estado;	
				}
			}
		}
	}
}

function vaciaCampo(valorDefecto, campo)
{
	var campo = document.getElementById(campo);
	
	if(campo.value == valorDefecto)
	{
		campo.value = '';	
	}
}

function vinculosAbsolutos(){
	
	var vinculos = document.getElementsByTagName("a");
		
	for (i=0; i < vinculos.length; i++)
	{
		if(vinculos[i].href != '')
		{
			vinculos[i].href = vinculos[i].href;
		}
	}

}