var calIni;
var calFin;
var calendario;

window.onload=function() {
	var arrSizes=getPageSize();
	
	var pWidth=arrSizes[0];
	
	
	if (pWidth>1500) {
		pWidth=1500;
	}
	
	var gal=new ProtoGal('banners', { 
		width: pWidth,
		interval: 4,
		height: 1
	});
	
	var map=$('mapGoogle');
	
	if (map) {
		posaMapa(map);
	}
	
	if ($('fIni')) {
		calIni=new PopCalendar($('fIni'), {
			id: 1,
			format: 'dd/mm/yyyy', 
			language: 'es'
		});
	}
	
	if ($('fFin')) {
		calFin=new PopCalendar($('fFin'), {
			id: 2, 
			format: 'dd/mm/yyyy', 
			language: 'es'
		});
	}
	
	if ($('hCalendario')) {
		calendario=new PopCalendarBig($('hCalendario'), $('calendario'), {
			id: 50, 
			format: 'dd/mm/yyyy', 
			language: 'es',
			hideOnClick: false,
			onChange: cargarReservas
		});
	}
}

function mostraCalendari(n) {
	if (n==1) {
		calIni.popUpCalendar();
	} else {
		calFin.popUpCalendar();
	}
} 

function cargarReservas() {
	var url="../xml/cargaReservas.php";
	var params="dini="+this.dIni.getDate()+"-"+this.dIni.getMonth()+"-"+this.dIni.getFullYear();
	params=params+"&dfin="+this.dFin.getDate()+"-"+this.dFin.getMonth()+"-"+this.dFin.getFullYear();
	params=params+"&villcod="+$('hVillcod').value;
	var ajax=new Ajax.Request(url, {
		method: 'get',
		parameters: params,
		onComplete: function(reply) {
			var nodePart=reply.responseXML.selectNodes("//reservas/reserva");
			
			if (nodePart) { 
				for (var k=0;k<nodePart.length;k++) {
					var dini=parseInt(nodePart[k].getAttribute("dIni"),10); 
					var mini=parseInt(nodePart[k].getAttribute("mIni"),10);
					var yini=parseInt(nodePart[k].getAttribute("yIni"),10); 
					
					var dfin=parseInt(nodePart[k].getAttribute("dFin"),10);
					var mfin=parseInt(nodePart[k].getAttribute("mFin"),10); 
					var yfin=parseInt(nodePart[k].getAttribute("yFin"),10); 
					
					mini--;
					mfin--;
					
					var dateIni=new Date(yini,mini,dini); 
					var dateFin=new Date(yfin,mfin,dfin); 
					
					var dt=new Date(this.dIni.getFullYear(),this.dIni.getMonth(),this.dIni.getDate()); 
					
					var td=this.calendar.childNodes[1].firstChild.childNodes[1].firstChild.firstChild; 
					
					var pinta=false;
					
					for (var j=0;j<42;j++) {
						if (j==0) {
							if (dateIni.getTime()<dt.getTime()) {
								pinta=true;
							}
						}
						
						if (dt.getTime()==dateIni.getTime()) { 
							pinta=true;
						}
						
						if (pinta) {
							td.style.backgroundColor="#ff0000";
						}
						
						if (dt.getTime()==dateFin.getTime()) { 
							pinta=false;
						}
						
						dt=new Date(dt.getFullYear(),dt.getMonth(),(dt.getDate()+1));
						
						if (td.nextSibling) {
							td=td.nextSibling;
						} else {
							if (td.parentNode.nextSibling) {
								td=td.parentNode.nextSibling.firstChild;
							} 
						}
							
					}
				}
			}
		}.bind(this)
	});
}

function posaMapa(map) {
	var lat=$('hLat').value;
	var long=$('hLong').value;
	
	var mapaLatLng=new google.maps.LatLng(lat, long);
	var mapaOptions={
		zoom: 14,
		disableDefaultUI: false,
		center: mapaLatLng,
		navigationControl: true,
		mapTypeId: google.maps.MapTypeId.ROADMAP
	};
	map=new google.maps.Map(map,mapaOptions);
	
	var latlongMarker=new google.maps.LatLng(lat,long);
	marker=new google.maps.Marker({
		position: latlongMarker,
		draggable: false,
		map: map
	});
}

function reservarVilla() {
	$('mens1').style.display="none";
	$('mens2').style.display="none";
	$('mens3').style.display="none";
	$('mens4').style.display="none";
	$('mens5').style.display="none";
	$('mens6').style.display="none";
	
	var nombre=$('txtNombre').value;
	var telefono=$('txtTelefono').value;
	var mail=$('txtMail').value;
	var comentario=$('txtComentario').value;
	
	if (($('fIni').value=="") || ($('fFin').value=="")) {
		$('mens1').style.display="block";;
		return;
	}
	
	if ((nombre=="") || (mail=="")) {
		$('mens1').style.display="block";;
		return;
	}
	
	//comprovam que la data d'inici es inferior a la data de finalització
	var ini=new Date(calIni.dateSelected.year, calIni.dateSelected.month, calIni.dateSelected.date);
	var fin=new Date(calFin.dateSelected.year, calFin.dateSelected.month, calFin.dateSelected.date);
	
	if (ini>fin) {
		$('mens2').style.display="block";
		return;
	}
	
	var fini=calIni.dateSelected.year+"-"+(calIni.dateSelected.month+1)+"-"+calIni.dateSelected.date;
	var ffin=calFin.dateSelected.year+"-"+(calFin.dateSelected.month+1)+"-"+calFin.dateSelected.date;
	
	$('mens4').style.display="block";
	
	var url="../xml/reservarVilla.php";
	var params="villcod="+$('hVillcod').value+"&fini="+fini+"&ffin="+ffin+"&nombre="+nombre+"&telefono="+telefono+"&mail="+mail+"&comentario="+comentario;
	var ajax=new Ajax.Request(url, {
		method: 'post',
		postBody: params,
		onComplete: function(reply) {
			$('mens4').style.display="none";
			
			if ((reply.responseText=="0") || (reply.responseText=="1")) {
				if (reply.responseText=="0") {
					$('mens5').style.display="block";
					calendario.constructCalendar();
				} else {
					$('mens3').style.display="block";
				}
			} else {
				$('mens6').style.display="block";
			}
		}
	});
}

function reservarCongresos() {
	$('mens1').style.display="none";
	$('mens2').style.display="none";
	$('mens3').style.display="none";
	$('mens4').style.display="none";
	$('mens5').style.display="none";
	$('mens6').style.display="none";
	
	var nombre=$('txtNombre').value;
	var telefono=$('txtTelefono').value;
	var mail=$('txtMail').value;
	var comentario=$('txtComentario').value;
	
	if ((nombre=="") || (mail=="")) {
		$('mens1').style.display="block";;
		return;
	}
	
	$('mens4').style.display="block";
	
	var url="../xml/reservarCongresos.php";
	var params="nombre="+nombre+"&telefono="+telefono+"&mail="+mail+"&comentario="+comentario;
	var ajax=new Ajax.Request(url, {
		method: 'post',
		postBody: params,
		onComplete: function(reply) {
			$('mens4').style.display="none";
			
			if (reply.responseText=="0") {
				$('mens5').style.display="block";
			} else {
				$('mens6').style.display="block";
			}
		}
	});
}

function reservarCoche() {
	$('mens1').style.display="none";
	$('mens2').style.display="none";
	$('mens3').style.display="none";
	$('mens4').style.display="none";
	$('mens5').style.display="none";
	$('mens6').style.display="none";
	
	var nombre=$('txtNombre').value;
	var telefono=$('txtTelefono').value;
	var mail=$('txtMail').value;
	var comentario=$('txtComentario').value;
	
	if (($('fIni').value=="") || ($('fFin').value=="")) {
		$('mens1').style.display="block";;
		return;
	}
	
	if ((nombre=="") || (mail=="")) {
		$('mens1').style.display="block";
		return;
	}
	
	//comprovam que la data d'inici es inferior a la data de finalització
	var ini=new Date(calIni.dateSelected.year, calIni.dateSelected.month, calIni.dateSelected.date);
	var fin=new Date(calFin.dateSelected.year, calFin.dateSelected.month, calFin.dateSelected.date);
	
	if (ini>fin) {
		$('mens2').style.display="block";
		return;
	}
	
	var fini=calIni.dateSelected.year+"-"+(calIni.dateSelected.month+1)+"-"+calIni.dateSelected.date;
	var ffin=calFin.dateSelected.year+"-"+(calFin.dateSelected.month+1)+"-"+calFin.dateSelected.date;
	
	$('mens4').style.display="block";
	
	var url="../xml/reservarCoche.php";
	var params="fini="+fini+"&ffin="+ffin+"&nombre="+nombre+"&telefono="+telefono+"&mail="+mail+"&horaini="+$('cboHoraRec').value+"&horafin="+$('cboHoraDej').value+"&loc="+$('txtLocalizacion').value+"&comentario="+comentario;
	var ajax=new Ajax.Request(url, {
		method: 'post',
		postBody: params,
		onComplete: function(reply) {
			$('mens4').style.display="none";
			
			if (reply.responseText=="0") {
				$('mens5').style.display="block";
			} else {
				$('mens6').style.display="block";
			}
		}
	});
}

function reservarGolf() {
	$('mens1').style.display="none";
	$('mens2').style.display="none";
	$('mens3').style.display="none";
	$('mens4').style.display="none";
	$('mens5').style.display="none";
	$('mens6').style.display="none";
	
	var nombre=$('txtNombre').value;
	var telefono=$('txtTelefono').value;
	var mail=$('txtMail').value;
	var comentario=$('txtComentario').value;
	
	if ((nombre=="") || (mail=="")) {
		$('mens1').style.display="block";
		return;
	}
	
	var fini=calIni.dateSelected.year+"-"+(calIni.dateSelected.month+1)+"-"+calIni.dateSelected.date;
	
	$('mens4').style.display="block";
	
	var url="../xml/reservarGolf.php";
	var params="fini="+fini+"&nombre="+nombre+"&telefono="+telefono+"&mail="+mail+"&horaini="+$('cboHoraRec').value+"&loc="+$('txtLocalizacion').value+"&participantes="+$('txtPar').value+"&comentario="+comentario;
	var ajax=new Ajax.Request(url, {
		method: 'post',
		postBody: params,
		onComplete: function(reply) {
			$('mens4').style.display="none";
			
			if (reply.responseText=="0") {
				$('mens5').style.display="block";
			} else {
				$('mens6').style.display="block";
			}
		}
	});
}

function reservarNewsletter() {
	$('mens1').style.display="none";
	$('mens2').style.display="none";
	$('mens3').style.display="none";
	$('mens4').style.display="none";
	$('mens5').style.display="none";
	$('mens6').style.display="none";
	
	var nombre=$('txtNombre').value;
	var telefono=$('txtTelefono').value;
	var mail=$('txtMail').value;
	var empresa=$('txtEmpresa').value;
	var comentario=$('txtComentario').value;
	
	if ((nombre=="") || (mail=="") || (empresa=="")) {
		$('mens1').style.display="block";;
		return;
	}
	
	$('mens4').style.display="block";
	
	var url="../xml/reservarNewsletter.php";
	var params="nombre="+nombre+"&telefono="+telefono+"&mail="+mail+"&empresa="+empresa+"&comentario="+comentario;
	var ajax=new Ajax.Request(url, {
		method: 'post',
		postBody: params,
		onComplete: function(reply) {
			$('mens4').style.display="none";
			
			if (reply.responseText=="0") {
				$('mens5').style.display="block";
			} else {
				$('mens6').style.display="block";
			}
		}
	});
}

function reservarContacto() {
	$('mens1').style.display="none";
	$('mens2').style.display="none";
	$('mens3').style.display="none";
	$('mens4').style.display="none";
	$('mens5').style.display="none";
	$('mens6').style.display="none";
	
	var nombre=$('txtNombre').value;
	var telefono=$('txtTelefono').value;
	var mail=$('txtMail').value;
	var comentario=$('txtComentario').value;
	
	if ((nombre=="") || (mail=="")) {
		$('mens1').style.display="block";;
		return;
	}
	
	$('mens4').style.display="block";
	
	var url="../xml/reservarContacto.php";
	var params="nombre="+nombre+"&telefono="+telefono+"&mail="+mail+"&comentario="+comentario;
	var ajax=new Ajax.Request(url, {
		method: 'post',
		postBody: params,
		onComplete: function(reply) {
			$('mens4').style.display="none";
			
			if (reply.responseText=="0") {
				$('mens5').style.display="block";
			} else {
				$('mens6').style.display="block";
			}
		}
	});
}

function limpia(inp,n) {
	inp.value="";
	
	if (n==1) {
		inp.setAttribute("type","password");
	}
}

function login() {
	var usu=$('txtLogin').value;
	var pass=$('txtPass').value;
	
	pass=hex_md5(pass);
	
	var url="../xml/login.php";
	var params="usu="+usu+"&pass="+pass;
	var ajax=new Ajax.Request( url, {
		method: 'post',
		postBody: params,
		onComplete: function(reply) {
			if (reply.responseText=="ok") {
				window.location.reload();
			} else {
				$('log1').style.display='none';
				$('log2').style.display='block';
			}
		}
	});
}

function volverLogin() {
	$('log1').style.display='block';
	$('log2').style.display='none';
}

function logout() {
	var url="../xml/logout.php";
	var ajax=new Ajax.Request(url, {
		method: 'get',
		onComplete: function(reply) {
			if (reply.responseText=="ok") {
				window.location.reload();
			}
		}
	});
}

function redimensionaIframe(ifr) {
	var h=ifr.contentWindow.document.body.scrollHeight;
	ifr.style.height=h+"px";
}
