function formalizaMatricula(validar, idUsuario, textoERROR)
{
	
	if(validar==1)imprimeMatricula(idUsuario);
	else alert(textoERROR);
	
	
}



function imprimeMatricula(idUsuario)
{

	var Ancho=900;
	var Alto=700;
	
	var features;
	features+="location=yes,"
	features+="toolbar=yes,"
	features+="directories=yes,"
	features+="scrollbars=yes,"
	features+="menubar=yes,"
	features+="resizable=yes,"
	features+="fullscreen=0,"
	features+="status=yes,"
	features+="channelmode=0,"
	features+="width="+Ancho+","
	features+="height="+Alto+","
	features+="left="+(tempX+window.screenLeft-Ancho/2)+","
	features+="top="+(tempY+window.screenTop-Alto)+","
	features+="topmargin=0;"
	personal = window.open("imprimeMatricula.asp?id="+idUsuario, "", features);
}



function listadoParticipantes(formName, idReserva)
{
		document[formName].idreserva.value=idReserva;
		document[formName].submit();


}




function desplegaPasesporActividades(formName,divDestino)
{	
	var id=document[formName].ambito.value;
	document[formName].idA.value=id;	
	if(id!=-1)
	{
	URL="muestraPases.asp?id="+id
	llamadaAJAX(URL, divDestino)	
	}


}



function desplegaActividadesporAmbito(formName,divDestino)
{	
	var id=document[formName].ambito.value;
	document[formName].idA.value=id;	
	if(id!=-1)
	{
	URL="muestraActividades.asp?id="+id
	llamadaAJAX(URL, divDestino)	
	}


}



function calcular_edad2(Fecha){
	fecha = new Date(Fecha)
	hoy = new Date()
	ed = parseInt((hoy -fecha)/365/24/60/60/1000)
	return ed


}




function calcular_edad(fecha){ 

	//calculo la fecha de hoy 
	hoy=new Date() 
	//alert(hoy) 

	//calculo la fecha que recibo 
	//La descompongo en un array 
	var array_fecha = fecha.split("/") 
	//si el array no tiene tres partes, la fecha es incorrecta 
	if (array_fecha.length!=3) 
	   return false 

	//compruebo que los ano, mes, dia son correctos 
	var ano 
	ano = parseInt(array_fecha[2]); 
	if (isNaN(ano)) 
	   return false 

	var mes 
	mes = parseInt(array_fecha[1]); 
	if (isNaN(mes)) 
	   return false 

	var dia 
	dia = parseInt(array_fecha[0]); 
	if (isNaN(dia)) 
	   return false 


	//si el año de la fecha que recibo solo tiene 2 cifras hay que cambiarlo a 4 
	if (ano<=99) 
	   ano +=1900 

	//resto los años de las dos fechas 
	edad=hoy.getYear()- ano - 1; //-1 porque no se si ha cumplido años ya este año 

	//si resto los meses y me da menor que 0 entonces no ha cumplido años. Si da mayor si ha cumplido 
	if (hoy.getMonth() + 1 - mes < 0) //+ 1 porque los meses empiezan en 0 
	   return edad 
	if (hoy.getMonth() + 1 - mes > 0) 
	   return edad+1 

	//entonces es que eran iguales. miro los dias 
	//si resto los dias y me da menor que 0 entonces no ha cumplido años. Si da mayor o igual si ha cumplido 
	if (hoy.getUTCDate() - dia >= 0) 
	   return edad + 1 

	return edad 
} 

	
function mayorEdat(formName)
{	
	dd=document[formName].dd.value;
	mm=document[formName].mm.value;
	aa=document[formName].aa.value;	
	
	if(dd!=-1 && mm!=-1 && aa!=-1)
	{
		//fecha=""+dd+"/"+mm+"/"+aa+"";
		//temp=calcular_edad(fecha);
		fecha=""+mm+"/"+dd+"/"+aa+"";
		temp=calcular_edad2(fecha);
		if(temp>=18)
			{
				document.getElementById("error").innerHTML ="";
				document[formName].edat.value="1";
			}
		else{
		document.getElementById("error").innerHTML ="<a class='r11'>és necessari ser major d'edat per a inscriure's </a>";
		}

	}

}

function Reserva(formName)
{
//	if (confirm(txtSalida)){
	document[formName].submit();
//	}
}


function confirmaReserva(formName)
{
	document[formName].numEntradas.value=document[formName].numeroEntradas.value
	document[formName].submit();
}


function procesaReserva(formName, idReserva,txtSalida)
{


	if (confirm(txtSalida)){
		document[formName].idReserva.value=idReserva;
		document[formName].submit();
		}

}


function procesaReservaAdmin(userSessionID, formName, idReserva,txtSalida)
{


	if (confirm(txtSalida)){
		document[formName].userSessionID.value=userSessionID;		
		document[formName].idReserva.value=idReserva;
		document[formName].submit();
		}

}

function procesaReservaPagoAdmin(userSessionID, formName, idUser,txtSalida)
{


	if (confirm(txtSalida)){
		document[formName].userSessionID.value=userSessionID;		
		document[formName].idUser.value=idUser;
		document[formName].submit();
		}

}




function guardaDatos(ArrayEntrada, formName,txt)
{
	
	if(Comprueba(ArrayEntrada,formName)==true)
		{
		
			if (confirm(txt)){
					document[formName].accion.value="enviaMail";
					document[formName].submit();}
				
					
		}

}

	
	
	

function lanzaReserva(idpase)
{
	document.detalleReserva.idpase.value=idpase
	document.detalleReserva.submit();

}


function muestraActividad(formName, id)
{
	if(id!=-1)
	{
		document[formName].id.value=id;
		document[formName].submit();
	}
//	document.location="reservas.asp?id="+id;
}





function MailSyntax(texto){ 

    var mailres = true;             
    var cadena = "abcdefghijklmnñopqrstuvwxyzABCDEFGHIJKLMNÑOPQRSTUVWXYZ1234567890@._-"; 
     
    var arroba = texto.indexOf("@",0); 
    if ((texto.lastIndexOf("@")) != arroba) arroba = -1; 
     
    var punto = texto.lastIndexOf("."); 
                 
     for (var contador = 0 ; contador < texto.length ; contador++){ 
        if (cadena.indexOf(texto.substr(contador, 1),0) == -1){ 
            mailres = false; 
            break; 
     } 
    } 

    if ((arroba > 1) && (arroba + 1 < punto) && (punto + 1 < (texto.length)) && (mailres == true) && (texto.indexOf("..",0) == -1)) 
     mailres = true; 
    else 
     mailres = false; 
                 
    return mailres; 
} 



function compruebaDatos(ArrayEntrada,formName, classOk, classError)
{

var error=0;
var currentClass="";
	for(i=0; i<ArrayEntrada.length;i++)
	{
		if(document[formName][ArrayEntrada[i]].value=="")
			{
			currentClass=classError;
			document[formName][ArrayEntrada[i]].className=currentClass;
			error=1;
			}
		else document[formName][ArrayEntrada[i]].className=classOk;
			

		
	}


if(error!=0)return false;
else return true;
}



			
			
function reescribeMail(formName, classOk, classError)
{

var email=document[formName].email.value;
var ReEmail=document[formName].reescribeEmail.value;
var error=0;

if(MailSyntax(email) && (email.length>4) && (email==ReEmail))
	{
	document[formName].email.className=classOk;
	document[formName].reescribeEmail.className=classOk;	
	error=true;
	}
else
	{
	document[formName].email.className=classError;			
	document[formName].reescribeEmail.className=classError;				

	error=false;
	}


return error;
}




function reescribePassw(formName, classOk, classError)
{

var Password=document[formName].Password.value;
var reescribePassword=document[formName].reescribePassword.value;
var error=0;



if((Password.length>4) && (Password==reescribePassword))
	{
	document[formName].Password.className=classOk;
	document[formName].reescribePassword.className=classOk;	
	error=true;
	}
else
	{
	document[formName].Password.className=classError;			
	document[formName].reescribePassword.className=classError;		
	error=false;
	}


return error;
}


function compruebaLista(ArrayEntrada, formName, txtSalida, txtError,  classOk, classError)
{

Datos = compruebaDatos(ArrayEntrada,formName, classOk, classError);

	
	if(Datos==true)
		{
	
			if (confirm(txtSalida)){
					document[formName].accion.value="guardar";
					document[formName].submit();}
				
					
		}
	
	else alert(txtError);
}



function compruebaedat(formName, classOk, classError)
{
	var error=false;
	if(document[formName].edat.value==1)error=true;
	 return error;

}

function compruebaLegal(formName, classOk, classError)
{
	var error=false;

	if(document[formName].checkcondiciones.checked==false)
	{
		error=false;
		document[formName].checkcondiciones.className=classError;	
	}
	else
	{
		document[formName].checkcondiciones.className=classOk;			
		error=true;
	}
	
	if(document[formName].checkedat.checked==false)
	{
		error=false;
		document[formName].checkedat.className=classError;	
	}
	else
	{
		document[formName].checkedat.className=classOk;			
		error=true;
	}	
 return error;

}


function nuevoUsuario(ArrayEntrada, formName, txtSalida, txtError,  classOk, classError)
{

Datos = compruebaDatos(ArrayEntrada,formName, classOk, classError);
legal = compruebaLegal(formName, classOk, classError);
edat =  compruebaedat(formName, classOk, classError);
Mail  = reescribeMail(formName, classOk, classError);
PassW = reescribePassw(formName, classOk, classError);
//alert(Datos+","+legal+","+edat+","+Mail+","+PassW);

	
	if(Datos==true && Mail==true && PassW==true && edat==true && legal==true)
		{
	
			if (confirm(txtSalida)){
					document[formName].accion.value="nuevoUsuario";
					document[formName].submit();}
				
					
		}
	
	else alert(txtError);
}


function nuevoUsuarioAdmin(ArrayEntrada, formName, txtSalida, txtError,  classOk, classError)
{

Datos = compruebaDatos(ArrayEntrada,formName, classOk, classError);
edat =  compruebaedat(formName, classOk, classError);
PassW = reescribePassw(formName, classOk, classError);
//alert(Datos+","+legal+","+edat+","+Mail+","+PassW);

	
	if(Datos==true && PassW==true && edat==true)
		{
	
			if (confirm(txtSalida)){
					document[formName].guardar.value="1";
					document[formName].submit();}
				
					
		}
	
	else alert(txtError);
}















function Comprueba(ArrayEntrada,formName)
{

var error=0;
var currentClass="";
	for(i=0; i<ArrayEntrada.length;i++)
	{
		if(document[formName][ArrayEntrada[i]].value=="")
			{
			currentClass=document[formName][ArrayEntrada[i]].className;
			currentClass+=" unsave";
			//document[formName][ArrayEntrada[i]].className='unsave';
			document[formName][ArrayEntrada[i]].className=currentClass;
			error=1;
			}
		else{
			document[formName][ArrayEntrada[i]].className='tColor n10';
			}

		if(ArrayEntrada[i]=="email")
			{
			ismail=MailSyntax(document[formName][ArrayEntrada[i]].value)
			if(ismail==false)
				{
				currentClass=document[formName][ArrayEntrada[i]].className;
				currentClass+=" unsave";
				document[formName][ArrayEntrada[i]].className=currentClass;				
				error=1;
				}
			else
				{
				document[formName][ArrayEntrada[i]].className='tColor n10';
				}
			}
	}


if(error!=0)return false;
else return true;

}
