var agt=navigator.userAgent.toLowerCase()
is_nav=((agt.indexOf('mozilla')!=-1)&&(agt.indexOf('spoofer')==-1)&&(agt.indexOf('compatible')==-1))
is_gecko=(agt.indexOf('gecko')!=-1)
is_nav6=(parseInt(navigator.appVersion)==5)
is_nav6up=(parseInt(navigator.appVersion)>=5)
ns=window.navigator.appName == "Netscape"
ie=window.navigator.appName == "Microsoft Internet Explorer"

function posa_preu(dies,cost) {
		if (ie && !is_nav6 && !is_nav6up && !is_gecko) {
			document.all["cost"].innerHTML = cost+" € (TAX not included)";
			document.all["dies"].innerHTML = dies;
		}
		if (ns && !is_nav6 && !is_nav6up && !is_gecko) {
			document.reserva.cost_total.value=cost+" € (TAX not included)";
			document.reserva.num_dies.value=dies;
		}
		if (ns && (is_nav6 || is_nav6up || is_gecko)) {
			document.getElementById("cost").innerHTML=cost+" € (TAX not included)";
			document.getElementById("dies").innerHTML=dies; 
		}
}
function recalcula(){
	var i;
	var caracter;
	var mes_in=0;
	var dies_mes_in=0;
	var mes_out=0;
	var dies_mes_out=0;
	var num_mesos=0;
	var dia_in=0;
	var dia_out=0;
	var total_dies=0;
	var total_dies_alta=0;
	var total_dies_media=0;
	var total_dies_baja=0;
	
	var total_persones=0;
	var cost=0;
	var any_seg=0;
	var cost_enter=0;
	var cost_decimal=0;
	var separador=/^(.+).(.+)$/;
	
	if (ie && !is_nav6 && !is_nav6up && !is_gecko) {
			cost_alta=parseFloat(document.reserva.all["alta"].value);
			cost_media=parseFloat(document.reserva.all["media"].value);
			cost_baja=parseFloat(document.reserva.all["baja"].value);
			mes_in=parseInt(document.reserva.all["mes"].value);
			mes_out=parseInt(document.reserva.all["mes_salida"].value);
			dia_in=parseInt(document.reserva.all["dia"].value);
			dia_out=parseInt(document.reserva.all["dia_salida"].value);
			if (document.reserva.all["personas"].value==""){
				total_persones=0;
			}
			else{
				total_persones=document.reserva.all["personas"].value;
			}
	}
	if (ns && !is_nav6 && !is_nav6up && !is_gecko) {
			cost_alta=parseFloat(document.reserva.alta.value);
			cost_media=parseFloat(document.reserva.media.value);
			cost_baja=parseFloat(document.reserva.baja.value);
			mes_in=parseInt(eval(document.reserva.mes.selectedIndex)+1);
			mes_out=parseInt(eval(document.reserva.mes_salida.selectedIndex)+1);
			dia_in=parseInt(eval(document.reserva.dia.selectedIndex)+1);
			dia_out=parseInt(eval(document.reserva.dia_salida.selectedIndex)+1);
			if (document.reserva.personas.value==""){
				total_persones=0;
			}
			else{
				total_persones=document.reserva.personas.value;
			}
	}
	if (ns && (is_nav6 || is_nav6up || is_gecko)) {
			cost_alta=parseFloat(document.getElementById("alta").value);
			cost_media=parseFloat(document.getElementById("media").value);
			cost_baja=parseFloat(document.getElementById("baja").value);						
			mes_in=parseInt(document.getElementById("mes").value);
			mes_out=parseInt(document.getElementById("mes_salida").value);
			dia_in=parseInt(document.getElementById("dia").value);
			dia_out=parseInt(document.getElementById("dia_salida").value);
			if (document.getElementById("personas").value==""){
				total_persones=0;
			}
			else{
				total_persones=document.getElementById("personas").value;
			}
	}
	if((mes_in==2 && dia_in>28) ||((mes_in==4 || mes_in==6 ||mes_in==9||mes_in==11) && dia_in>30)){
		alert("Wrong leaving day");
		return;
	}
	if((mes_out==2 && dia_out>28) ||((mes_out==4 || mes_out==6 ||mes_out==9||mes_out==11) && dia_out>30)){
		alert("Wrong leaving day");
		return;
	}
	
	if (mes_in==mes_out && dia_out>dia_in){
//***********************************************UN UNIC MES ***************************************************************************************************
		switch(mes_in){
			case 1:
			case 2:
			case 11:
				total_dies_baja=dia_out-dia_in;
			break
			case 3:
			case 4:
			case 5:
			case 10:
				total_dies_media=dia_out-dia_in;				
			break
			case 6:
			case 7:
			case 8:
			case 9:
				total_dies_alta=dia_out-dia_in;
			break
			case 12:
				if (dia_in>=15){
					total_dies_alta=parseInt(total_dies_alta + (dia_out-dia_in) );
				}
				else{
					if (dia_in<15 && dia_out<15){
						total_dies_baja=parseInt(total_dies_baja + (dia_out-dia_in) );		
					}
					else{
						total_dies_baja=parseInt(total_dies_baja + (15-dia_in) );
						total_dies_alta=parseInt(total_dies_alta + (dia_out-15) );
					}
				}
			break
		}
//FI    ***********************************************UN UNIC MES ***************************************************************************************************			
	}
	else{
		num_mesos=mes_out-mes_in
		if (num_mesos<0){
			num_mesos=num_mesos*(-1);
			any_seg=1;
		}
		if(dia_out<dia_in && (any_seg==1 || mes_out==mes_in)){
			any_seg=1;
		}
		//***************************************************************************************************************************************************		
		if(mes_in==1||mes_in==3||mes_in==5||mes_in==7||mes_in==8||mes_in==10||mes_in==12){
			dies_mes_in=parseInt(31-dia_in);
		}
		else{
			if(mes_in==2){
				dies_mes_in=parseInt(28-dia_in);
			}
			else{
				dies_mes_in=parseInt(30-dia_in);
			}
		}
		//***************************************************************************************************************************************************
		if(num_mesos>=1 && any_seg==0){
			switch(mes_in)
					{
						case 1:
						case 2:
						case 11:
							total_dies_baja=parseInt(total_dies_baja + dies_mes_in);
							break
						case 3:
						case 4:
						case 5:
						case 10:					
							total_dies_media=parseInt(total_dies_media + dies_mes_in);
							break
						case 6:
						case 7:
						case 8:
						case 9:
							total_dies_alta=parseInt(total_dies_alta + dies_mes_in);
							break
						case 12:
							if (dia_in>=15){
								total_dies_alta=parseInt(total_dies_alta + dies_mes_in);
							}
							else{
								total_dies_baja=parseInt(total_dies_baja + parseInt(dies_mes_in - 15));		
							}
							break
					}
			mes_in=parseInt(mes_in);
			mes_in=parseInt(mes_in+1);
			while(mes_in<mes_out)
			{
				switch(mes_in)
					{
						case 1:
							total_dies_baja=parseInt(total_dies_baja+31);
							break
						case 3:
						case 5:
						case 10:					
							total_dies_media=parseInt(total_dies_media+31);
							break
						case 7:
						case 8:
							total_dies_alta=parseInt(total_dies_alta+31);
							break
						case 4:
							total_dies_media=parseInt(total_dies_media+30);
							break
						case 6:
						case 9:
							total_dies_alta=parseInt(total_dies_alta+30);
							break
						case 11:
							total_dies_baja=parseInt(total_dies_baja+30);					
							break	
						case 12:
							total_dies_alta=parseInt(total_dies_alta+16);
							total_dies_baja=parseInt(total_dies_baja+15);						
							break
						case 2:
							total_dies_baja=parseInt(total_dies_baja+28);
							break
					}
				mes_in=parseInt(mes_in);
				mes_in=parseInt(mes_in+1);
			}
			switch(mes_out)
				{
				case 1:
				case 2:
				case 11:
					total_dies_baja=parseInt(total_dies_baja + parseInt(dia_out) );
				break
				case 3:
				case 4:
				case 5:
				case 10:
					total_dies_media=parseInt(total_dies_media + parseInt(dia_out) );
				break
				case 6:
				case 7:
				case 8:
				case 9:
					total_dies_alta=parseInt(total_dies_alta + parseInt(dia_out) );
				break
				case 12:
					if (dia_out<15){
						total_dies_baja=parseInt(total_dies_baja + parseInt(dia_out) );
					}
					else{
						total_dies_baja=parseInt(total_dies_baja + 15 );
						total_dies_alta=parseInt(total_dies_alta + parseInt(dia_out - 15));		
					}
				break
				}
		}
		else{
//**********calculs amb traspas d'any           *****************************************************************************************************************************		
//**********de mes actual a fi de l'any           *****************************************************************************************************************************
			if((num_mesos>=1 && any_seg==1) || (num_mesos==0 && any_seg==1)){
				switch(mes_in)
				{
					case 1:
					case 2:
					case 11:
						total_dies_baja=parseInt(total_dies_baja + dies_mes_in);
						break
					case 3:
					case 4:
					case 5:
					case 10:					
						total_dies_media=parseInt(total_dies_media + dies_mes_in);
						break
					case 6:
					case 7:
					case 8:
					case 9:
						total_dies_alta=parseInt(total_dies_alta + dies_mes_in);
						break
					case 12:
						if (dia_in>=15){
							total_dies_alta=parseInt(total_dies_alta + dies_mes_in);
						}
						else{
							total_dies_baja=parseInt(total_dies_baja + parseInt(dies_mes_in - 15));		
						}
					break
				}
				mes_in=parseInt(mes_in);
				mes_in=parseInt(mes_in+1);
				while(mes_in<13){
					{
						switch(mes_in)
							{
								case 1:
									total_dies_baja=parseInt(total_dies_baja+31);
									break
								case 3:
								case 5:
								case 10:					
									total_dies_media=parseInt(total_dies_media+31);
									break
								case 7:
								case 8:
									total_dies_alta=parseInt(total_dies_alta+31);
									break
								case 4:
									total_dies_media=parseInt(total_dies_media+30);
									break
								case 6:
								case 9:
									total_dies_alta=parseInt(total_dies_alta+30);
									break
								case 11:
									total_dies_baja=parseInt(total_dies_baja+30);					
									break	
								case 12:
									total_dies_alta=parseInt(total_dies_alta+16);
									total_dies_baja=parseInt(total_dies_baja+15);						
									break
								case 2:
									total_dies_baja=parseInt(total_dies_baja+28);
									break
							}
						mes_in=parseInt(mes_in);
						mes_in=parseInt(mes_in+1);
					}
			}
//************* de gener a fi allotjament   ********************************************************************************************************************************				
				mes_in=1;
				while(mes_in<mes_out){
					switch(mes_in)
					{
						case 1:
							total_dies_baja=parseInt(total_dies_baja+31);
							break
						case 3:
						case 5:
						case 10:					
							total_dies_media=parseInt(total_dies_media+31);
							break
						case 7:
						case 8:
							total_dies_alta=parseInt(total_dies_alta+31);
							break
						case 4:
							total_dies_media=parseInt(total_dies_media+30);
							break
						case 6:
						case 9:
							total_dies_alta=parseInt(total_dies_alta+30);
							break
						case 11:
							total_dies_baja=parseInt(total_dies_baja+30);					
							break	
						case 12:
							total_dies_alta=parseInt(total_dies_alta+16);
							total_dies_baja=parseInt(total_dies_baja+15);						
							break
						case 2:
							total_dies_baja=parseInt(total_dies_baja+28);
							break
						}
					mes_in=parseInt(mes_in);
					mes_in=parseInt(mes_in+1);
				}
//************* ultims dies del mes   ********************************************************************************************************************************				
				
				switch(mes_out)
				{
				case 1:
				case 2:
				case 11:
					total_dies_baja=parseInt(total_dies_baja + parseInt(dia_out) );
				break
				case 3:
				case 4:
				case 5:
				case 10:
					total_dies_media=parseInt(total_dies_media + parseInt(dia_out) );
				break
				case 6:
				case 7:
				case 8:
				case 9:
					total_dies_alta=parseInt(total_dies_alta + parseInt(dia_out) );
				break
				case 12:
					if (dia_out<15){
						total_dies_baja=parseInt(total_dies_baja + parseInt(dia_out) );
					}
					else{
						total_dies_baja=parseInt(total_dies_baja + 15 );
						total_dies_alta=parseInt(total_dies_alta + parseInt(dia_out - 15));		
					}
				break
				}	
//************** FI calculs d'un any a un altre *********************************************************************************				
				
			}
		}
	}
	total_persones=parseInt(total_persones);
	
	//cost_dia=parseFloat(cost_dia);
	
	if (isNaN(total_persones)){
		if (ie && !is_nav6 && !is_nav6up && !is_gecko) {
			document.reserva.all["personas"].value=""
		}
		if (ns && !is_nav6 && !is_nav6up && !is_gecko) {
				document.reserva.personas.value=""
		}
		if (ns && (is_nav6 || is_nav6up || is_gecko)) {
				document.getElementById("personas").value=""
		}
		total_persones=0
		alert("The field Number of people is not a number")
	}
	
	//cost=total_persones*total_dies*cost_dia;
	cost=total_persones*( (total_dies_alta*cost_alta) + (total_dies_media*cost_media) + (total_dies_baja*cost_baja) );
	total_dies=parseInt(total_dies_alta + total_dies_media + total_dies_baja );
	//cost_separat=parseInt(cost*1000);
	//cost_separat=(cost_separat/1000)+0.005;
	//cost_separat=parseInt(cost_separat*100);
	//cost=parseFloat(cost_separat/100);
	posa_preu(total_dies,cost);
}
function comprova(elque) {
	var nom2
	var email2
	var persones2
	var valid_email
	if(ns && !is_nav6 && !is_nav6up && !is_gecko) {
		nom2=document.reserva.nombre.value
		email2=document.reserva.email.value
		persones2=document.reserva.personas.value
  	}    
	if(ie && !is_nav6 && !is_nav6up && !is_gecko) {
   		nom2=document.reserva.nombre.value
		email2=document.reserva.email.value
		persones2=document.reserva.personas.value
	}
	if(ns && (is_nav6 || is_nav6up || is_gecko)) {
		nom2=document.reserva.nombre.value
		email2=document.reserva.email.value
		persones2=document.reserva.personas.value
  	}
  	valid_email=email2.split("@")
  	if (email2=="" || persones2=="" ||nom2==""){
  		alert("The form is not complete.")
  		return null
  	}
  	else{
  		if (valid_email.length==2 && valid_email[0]!="" && valid_email[1]!="" ){
  			document.reserva.submit()
  		}
  		else{
   			alert("Incorrect e-mail.")
  		}
  	}
}
function reseta(){
		if (ie && !is_nav6 && !is_nav6up && !is_gecko) {
			document.all["cost"].innerHTML = "0 €";
			document.all["dies"].innerHTML = "0";
		}
		if (ns && !is_nav6 && !is_nav6up && !is_gecko) {
			document.reserva.cost_total.value="0 €";
			document.reserva.num_dies.value="0";
		}
		if (ns && (is_nav6 || is_nav6up || is_gecko)) {
			document.getElementById("cost").innerHTML="0 €";
			document.getElementById("dies").innerHTML="0"; 
		}
}