// JavaScript Document


/*
var imagenes=new Array('habitaciones','gastronomia','actividades','reuniones_y_meetings','golf','spa','reservas','sala_de_prensa');

var img_off=new Array(imagenes.length);
var img_on=new Array(imagenes.length);

for (i=0;i<imagenes.length;i++) {
	img_off[i]=new Image();
	img_off[i].src='./images/menu/'+imagenes[i]+'_off.gif';
	img_on[i]=new Image();
	img_on[i].src='./images/menu/'+imagenes[i]+'_on.gif';
}
*/



var ID_menu = "menu_ppal";

var W3CDOM = (document.createElement && document.getElementsByTagName);




// menu de navegacion
navBar = {
    // almacena la opcion sobre la que se aplica rollover
    item_sel : "",
    // almacena el objeto evento
    evt : null,

    load : function(obj)
    {
        // limpiamos el arbol de la lista y obtenemos todos los elementos
	 	cleanTree(obj)

		var items_lista = obj.getElementsByTagName("li");
		// asignamos el evento onmouseover a aquellos que sean los niveles principales
		for(var i = 0; i < items_lista.length; i++)
		{
			if(items_lista[i].parentNode == obj)
			{
				items_lista[i].onmouseout = function(event) {  navBar.hide_sub(event, obj) };
				items_lista[i].firstChild.onmouseover = navBar.show_sub;
			}
		}
    },

    // muestra las subopciones del menu principal
    show_sub : function (evt)
    {
	    evt = (evt) ? evt : ((event) ? event : null);
	    if(evt)
	    {
	    // para obtener el origen del evento (en este caso, la imagen)
		    var img = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);
			//alert(img.src);

	    }

	    // comprobamos si existe ya un elemento seleccionado
	    if(navBar.item_sel != "")
		  {

		    // dejamos la imagen en su estado inicial
		    navBar.item_sel.src = navBar.item_sel.src.replace("_on.gif","_off.gif")
		    // ocultamos su submenu
			if (navBar.item_sel.parentNode.parentNode.parentNode.getElementsByTagName("ul")[0]) {
		    navBar.item_sel.parentNode.parentNode.parentNode.getElementsByTagName("ul")[0].style.display = "none";
			}
	    }
	    // cambiamos la imagen actual

	    img.src = img.src.replace("_off.gif","_on.gif");
	    // mostramos sus subopciones
		if (img.parentNode.parentNode.parentNode.getElementsByTagName("ul")[0]) {

	    img.parentNode.parentNode.parentNode.getElementsByTagName("ul")[0].style.display = "block";
		}
	    // almacenamos el que esta seleccionado
	    navBar.item_sel = img;
    },

    // oculta las subopciones del menu principal
    hide_sub : function(evt, obj)
    {
	     evt = (evt) ? evt : ((event) ? event : null);
         var actual = (evt.currentTarget) ? evt.currentTarget : obj;

	     var proximo = (evt.relatedTarget) ? evt.relatedTarget : evt.toElement;

		 if (actual != proximo && !contains(actual, proximo))
	      {
		  		//alert(navBar.item_sel.src);
				if (navBar.item_sel.parentNode.parentNode.parentNode.getElementsByTagName("ul")[0]) {
			    	navBar.item_sel.parentNode.parentNode.parentNode.getElementsByTagName("ul")[0].style.display = "none";
				}
	      }
    }
}

function cleanTree(obj)
{
	if(obj.hasChildNodes()){

		obj = cleanWhiteSpace(obj);

		for(var i = 0; i < obj.childNodes.length; i++)
		{
			cleanTree(obj.childNodes[i]);
		}

	}
}

// elimina los nodos #text "molestos" (los que hay al hacer salto de lineas de una etiqueta a otra, por ejemplo) de un elemento
function cleanWhiteSpace(element)
{
	for (var i = 0; i < element.childNodes.length; i++)
	{
		var node = element.childNodes[i];
		if (node.nodeType == 3 && !/\S/.test(node.nodeValue))
		{
			element.removeChild(node)
		}
	}
	return element;
}

// devuelve verdadero si el nodo a contiene al nodo b
function contains(a, b)
{
  while (b.parentNode)
	   if ((b = b.parentNode) == a)
	      return true;
  return false;
}

function refresca_hora()
{

/*
	var h = document.getElementById("hora");



		momentoActual = new Date()
    hora = momentoActual.getHours()-1
    minuto = momentoActual.getMinutes()

    if (minuto<9)
    {
    	horaImprimible = hora + ":0" + minuto
    }
    else
    {
    horaImprimible = hora + ":" + minuto
  	}


		h.innerHTML=horaImprimible;
		setTimeout("refresca_hora()",1000)



   // document.getElementById(target).innerHTML = '<p class="load">Cargando...</p>';
//alert(target);

    var myConn = new XHConn();
        if (!myConn) alert("XMLHTTP no esta disponible. Inténtalo con un navegador más actual.");
        var peticion = function (oXML) { document.getElementById('hora').innerHTML = oXML.responseText; };

        myConn.connect("/hora.php", "GET", "", peticion);
		setTimeout('refresca_hora("hora")',1000);
		*/
}

function refresca_dia(target,dia,mes,anyo)
{

	/*
   // document.getElementById(target).innerHTML = '<p class="load">Cargando...</p>';
    var myConn = new XHConn();
        if (!myConn) alert("XMLHTTP no esta disponible. Inténtalo con un navegador más actual.");
        var peticion = function (oXML) { document.getElementById(target).innerHTML = oXML.responseText; };

        myConn.connect("/dia_semana.php", "GET", "dia="+dia+"&mes="+mes+"&anyo="+anyo, peticion);
		//
		*/
}



window.onload=function() {

	if (!W3CDOM) return;
	// obtenemos la lista del menu principal y sus elementos
		var lista = document.getElementById(ID_menu);
		if(lista)
		{
			 navBar.load(lista);
		}

	if (document.getElementById('menu')) {
		var menu_interior=document.getElementById('menu');
		var items=menu_interior.getElementsByTagName('a');
		for (i=0;i<items.length;i++) {

			if ( (items[i].parentNode.parentNode.className!='activa') && (items[i].parentNode.parentNode.parentNode.id=='menu') ) {
				items[i].onmouseover=function() {
					this.firstChild.src=this.firstChild.src.split('_off').join('_on');
				}
				items[i].onmouseout=function() {
					this.firstChild.src=this.firstChild.src.split('_on').join('_off');
				}
			}
		}
	}
	if (document.getElementById('botonera')) {
		var botonera=document.getElementById('botonera');
		var enlaces=botonera.getElementsByTagName('a');
		for (i=0;i<enlaces.length;i++) {
			enlaces[i].onmouseover=function() {
				this.firstChild.src=this.firstChild.src.split('_off').join('_on');
			}
			enlaces[i].onmouseout=function() {
				this.firstChild.src=this.firstChild.src.split('_on').join('_off');
			}
		}
	}
	if (document.getElementById('opciones_documento')) {
		var botonera=document.getElementById('opciones_documento');
		var enlaces=botonera.getElementsByTagName('a');
		for (i=0;i<enlaces.length;i++) {
			enlaces[i].onmouseover=function() {
				this.firstChild.src=this.firstChild.src.split('_off').join('_on');
			}
			enlaces[i].onmouseout=function() {
				this.firstChild.src=this.firstChild.src.split('_on').join('_off');
			}
		}
	}

	if (document.getElementById('apoyo')) {
		var apoyo=document.getElementById('apoyo');
		var lis=apoyo.getElementsByTagName('li');
		for (i=0;i<lis.length;i++) {
			if (lis[i].className!='musica') {
				lis[i].onmouseover=function () {
					this.className=this.className+' over';
				}
				lis[i].onmouseout=function () {
					this.className=this.className.split('over').join('');
				}
			}
		}
	}
	if (document.getElementById('menu_inf')) {
		var menu_inf=document.getElementById('menu_inf');
		var lis=menu_inf.getElementsByTagName('li');
		for (i=0;i<lis.length;i++) {

				lis[i].onmouseover=function () {
					this.className=this.className+' over';
				}
				lis[i].onmouseout=function () {
					this.className=this.className.split('over').join('');
				}

		}
	}

	if (document.getElementById('tipo_cliente')) {
		var formu=document.getElementById('tipo_cliente');
		formu.onsubmit=function() {
			if (!formu.acepto.checked) {
				alert('No ha aceptado la tarifa');
				return false;
			}
			else {
				formu.submit();
			}
		}
	}

	/*
	//LA VALIDACION DE LOS CAMPOS SE HACE POR SERVIDOR

	if (document.getElementById('datos_personales')) {


		var formu=document.getElementById('datos_personales');
		formu.onsubmit=function() {

			var cadena='';

			if (formu.nombre.value=='') {
					cadena+='No ha introducido nombre. \n';
			}

			if (formu.apellido1.value=='') {
				cadena+='No ha introducido apellido. \n';
			}

			if (formu.telefono.value=='') {
				cadena+='No ha introducido telefono. \n';
			}

			if (formu.email.value=='') {
				cadena+='No ha introducido e-mail. \n';
			}
			if (formu.direccion.value=='') {
				cadena+='No ha introducido su dirección completa. \n';

			}
			if (formu.cp.value=='') {
				cadena+='No ha introducido su código postal. \n';

			}
			if (formu.localidad.value=='') {
				cadena+='No ha introducido su localidad de residencia. \n';

			}
			if (formu.pais.value=='') {
				cadena+='No ha introducido pais. \n';

			}

			if (formu.num_tarjeta.value=='') {
				cadena+='No ha introducido su numero de tarjeta de credito. \n';

			}
			if (!formu.aceptoCondiciones.checked) {
				cadena+='No se han aceptado las condiciones. \n';

			}
			if (cadena!='') {
					alert(cadena);
					return false;
				}
				else formu.submit();

		}
	}
	*/

	if (document.getElementById('hora')) {
		var el=document.getElementById('hora');
		refresca_hora('hora');
	}

	if (document.getElementById('dia_llegada')) {

		var el=document.getElementById('dia_llegada');
		el.onchange=function() {
			if ((document.getElementById('dia_llegada').value!='') && (document.getElementById('mes_llegada').value!='')) {
				var aux=document.getElementById('mes_llegada').value.split('-');
				refresca_dia('nombre_dia_llegada',document.getElementById('dia_llegada').value,aux[0],aux[1]);

			}
			else document.getElementById('nombre_dia_llegada').innerHTML='&nbsp;';
		}
	}
	if (document.getElementById('mes_llegada')) {

		var el=document.getElementById('mes_llegada');
		el.onchange=function() {
			if ((document.getElementById('dia_llegada').value!='') && (document.getElementById('mes_llegada').value!='')) {
				var aux=document.getElementById('mes_llegada').value.split('-');
				refresca_dia('nombre_dia_llegada',document.getElementById('dia_llegada').value,aux[0],aux[1]);

			}
			document.getElementById('nombre_dia_llegada').innerHTML='&nbsp;';
		}
	}
	if (document.getElementById('dia_salida')) {

		var el=document.getElementById('dia_salida');
		el.onchange=function() {
			if ((document.getElementById('dia_salida').value!='') && (document.getElementById('mes_salida').value!='')) {
				var aux=document.getElementById('mes_salida').value.split('-');
				refresca_dia('nombre_dia_salida',document.getElementById('dia_salida').value,aux[0],aux[1]);

			}
			else document.getElementById('nombre_dia_salida').innerHTML='&nbsp;';
		}
	}
	if (document.getElementById('mes_salida')) {

		var el=document.getElementById('mes_salida');
		el.onchange=function() {
			if ((document.getElementById('dia_salida').value!='') && (document.getElementById('mes_salida').value!='')) {
				var aux=document.getElementById('mes_salida').value.split('-');
				refresca_dia('nombre_dia_salida',document.getElementById('dia_salida').value,aux[0],aux[1]);

			}
			else document.getElementById('nombre_dia_salida').innerHTML='&nbsp;';
		}
	}

	if (document.getElementById('dia_llegada_alt')) {

		var el=document.getElementById('dia_llegada_alt');
		el.onchange=function() {
			if ((document.getElementById('dia_llegada_alt').value!='') && (document.getElementById('mes_llegada_alt').value!='')) {
				var aux=document.getElementById('mes_llegada_alt').value.split('-');
				refresca_dia('nombre_dia_llegada_alt',document.getElementById('dia_llegada_alt').value,aux[0],aux[1]);

			}
			else document.getElementById('nombre_dia_llegada_alt').innerHTML='&nbsp;';
		}
	}
	if (document.getElementById('mes_llegada_alt')) {

		var el=document.getElementById('mes_llegada_alt');
		el.onchange=function() {
			if ((document.getElementById('dia_llegada_alt').value!='') && (document.getElementById('mes_llegada_alt').value!='')) {
				var aux=document.getElementById('mes_llegada_alt').value.split('-');
				refresca_dia('nombre_dia_llegada_alt',document.getElementById('dia_llegada_alt').value,aux[0],aux[1]);

			}
			document.getElementById('nombre_dia_llegada_alt').innerHTML='&nbsp;';
		}
	}
	if (document.getElementById('dia_salida_alt')) {

		var el=document.getElementById('dia_salida_alt');
		el.onchange=function() {
			if ((document.getElementById('dia_salida_alt').value!='') && (document.getElementById('mes_salida_alt').value!='')) {
				var aux=document.getElementById('mes_salida_alt').value.split('-');
				refresca_dia('nombre_dia_salida_alt',document.getElementById('dia_salida_alt').value,aux[0],aux[1]);

			}
			else document.getElementById('nombre_dia_salida_alt').innerHTML='&nbsp;';
		}
	}
	if (document.getElementById('mes_salida_alt')) {

		var el=document.getElementById('mes_salida_alt');
		el.onchange=function() {
			if ((document.getElementById('dia_salida_alt').value!='') && (document.getElementById('mes_salida_alt').value!='')) {
				var aux=document.getElementById('mes_salida_alt').value.split('-');
				refresca_dia('nombre_dia_salida_alt',document.getElementById('dia_salida_alt').value,aux[0],aux[1]);

			}
			else document.getElementById('nombre_dia_salida_alt').innerHTML='&nbsp;';
		}
	}

	if (document.getElementById('f_alt_si')) {
		var el=document.getElementById('f_alt_si');
		var el2=document.getElementById('f_alt_no');
		if (el.checked) {
			document.getElementById('dia_llegada_alt').disabled=false;
			document.getElementById('mes_llegada_alt').disabled=false;
			document.getElementById('dia_salida_alt').disabled=false;
			document.getElementById('mes_salida_alt').disabled=false;
		}
		else {
			document.getElementById('dia_llegada_alt').disabled=true;
			document.getElementById('mes_llegada_alt').disabled=true;
			document.getElementById('dia_salida_alt').disabled=true;
			document.getElementById('mes_salida_alt').disabled=true;
		}
		el.onchange=function() {

			if (this.checked)
			{
			document.getElementById('dia_llegada_alt').disabled=false;
			document.getElementById('mes_llegada_alt').disabled=false;
			document.getElementById('dia_salida_alt').disabled=false;
			document.getElementById('mes_salida_alt').disabled=false;
		}
		}
		el2.onchange=function() {
			if (this.checked) {
				document.getElementById('dia_llegada_alt').disabled=true;
				document.getElementById('mes_llegada_alt').disabled=true;
				document.getElementById('dia_salida_alt').disabled=true;
				document.getElementById('mes_salida_alt').disabled=true;
			}
		}
	}

	if (document.getElementById('evento_habitaciones')) {
		var tabla=document.getElementById('evento_habitaciones');
		var inputs=tabla.getElementsByTagName('input');
		for (i=0;i<inputs.length;i++) {
			inputs[i].onkeyup=function() {
				if (this.id.indexOf('individuales')!=-1) {
					var aux=this.id.split('individuales').join('');
				}
				if (this.id.indexOf('dobles')!=-1) {
					var aux=this.id.split('dobles').join('');
				}
				if (this.id.indexOf('suites')!=-1) {
					var aux=this.id.split('suites').join('');
				}
				if (isNaN(this.value)) {
					this.value=this.value.substr(0,this.value.length-1);
				}
				else {
					var contador=0;
					if (document.getElementById('individuales'+aux).value!='') {
						contador+=parseInt(document.getElementById('individuales'+aux).value,10);
					}
					if (document.getElementById('dobles'+aux).value!='') {
						contador+=parseInt(document.getElementById('dobles'+aux).value,10);
					}
					if (document.getElementById('suites'+aux).value!='') {
						contador+=parseInt(document.getElementById('suites'+aux).value,10);
					}
					document.getElementById('total'+aux).innerHTML=contador;
				}
			}
		}
		var filas=(inputs.length/3)-1;
		for (i=0;i<=filas;i++) {
			var contador=0;
					if (document.getElementById('individuales'+i).value!='') {
						contador+=parseInt(document.getElementById('individuales'+i).value,10);
					}
					if (document.getElementById('dobles'+i).value!='') {
						contador+=parseInt(document.getElementById('dobles'+i).value,10);
					}
					if (document.getElementById('suites'+i).value!='') {
						contador+=parseInt(document.getElementById('suites'+i).value,10);
					}
					document.getElementById('total'+i).innerHTML=contador;
		}
	}

	if (document.getElementById('solic_presup')) {
		var el=document.getElementById('solic_presup');
		el.onsubmit = function () {
			if (document.getElementById('salas')) {
				var tbody=document.getElementById('cuerpo_tabla');
				var cadena='';
				for (i=0;i<tbody.childNodes.length;i++) {
					var fila=tbody.childNodes[i];
					var texto_fila=''
					for (j=0;j<6;j++) {
						var celda=fila.childNodes[j];
						if (celda.childNodes[0].data!=' ') {
						texto_fila+=celda.childNodes[0].data;
						}
						else {
							texto_fila+='0';
						}
						if (j<5) {
							texto_fila+='?%?';
						}
					}

					cadena+=texto_fila;
					if (i<tbody.childNodes.length-1) {
						cadena+='|#|';
					}
				}
				document.getElementById('vector_salas').value=cadena;


			}
		}

		if (document.getElementById('vector_salas')) {
		if (salones!='') {
			var filas=salones.split('|#|');
			for (i=0;i<filas.length;i++) {
				aniadir_evento(filas[i]);
			}
		}
		}
	}




	/*
	if (document.getElementById('serv_alimentacion_si')) {
		var el=document.getElementById('serv_alimentacion_si');
		el.onchange=function() {
			document.getElementById('coffee_break').disabled=false;
			document.getElementById('coctel').disabled=false;
			document.getElementById('almuerzo_buffet').disabled=false;
			document.getElementById('almuerzo_trabajo').disabled=false;
			document.getElementById('cena_buffet').disabled=false;
			document.getElementById('cena_gala').disabled=false;
			document.getElementById('cena_tematica').disabled=false;
			document.getElementById('dine_around').disabled=false;
			document.getElementById('barra_libre').disabled=false;
			document.getElementById('picnic').disabled=false;
			document.getElementById('otros_servicios').disabled=false;
			document.getElementById('observaciones').disabled=false;
		}
		if (el.checked) {
			document.getElementById('coffee_break').disabled=false;
			document.getElementById('coctel').disabled=false;
			document.getElementById('almuerzo_buffet').disabled=false;
			document.getElementById('almuerzo_trabajo').disabled=false;
			document.getElementById('cena_buffet').disabled=false;
			document.getElementById('cena_gala').disabled=false;
			document.getElementById('cena_tematica').disabled=false;
			document.getElementById('dine_around').disabled=false;
			document.getElementById('barra_libre').disabled=false;
			document.getElementById('picnic').disabled=false;
			document.getElementById('otros_servicios').disabled=false;
			document.getElementById('observaciones').disabled=false;
		}
	}
	if (document.getElementById('serv_alimentacion_no')) {
		var el=document.getElementById('serv_alimentacion_no');
		el.onchange=function() {
			document.getElementById('coffee_break').disabled=true;
			document.getElementById('coctel').disabled=true;
			document.getElementById('almuerzo_buffet').disabled=true;
			document.getElementById('almuerzo_trabajo').disabled=true;
			document.getElementById('cena_buffet').disabled=true;
			document.getElementById('cena_gala').disabled=true;
			document.getElementById('cena_tematica').disabled=true;
			document.getElementById('dine_around').disabled=true;
			document.getElementById('barra_libre').disabled=true;
			document.getElementById('picnic').disabled=true;
			document.getElementById('otros_servicios').disabled=true;
			document.getElementById('observaciones').disabled=true;

			document.getElementById('coffee_break').checked=false;
			document.getElementById('coctel').checked=false;
			document.getElementById('almuerzo_buffet').checked=false;
			document.getElementById('almuerzo_trabajo').checked=false;
			document.getElementById('cena_buffet').checked=false;
			document.getElementById('cena_gala').checked=false;
			document.getElementById('cena_tematica').checked=false;
			document.getElementById('dine_around').checked=false;
			document.getElementById('barra_libre').checked=false;
			document.getElementById('picnic').checked=false;
			document.getElementById('otros_servicios').checked=false;
			document.getElementById('observaciones').value='';
		}
	}
	*/

	if (document.getElementById('gmap')) {
		gmapLoad();

		window.onunload = function(){
			GUnload();
		}
	}

}


function gmapLoad() {
	if (GBrowserIsCompatible()) {
		var map = new GMap2(document.getElementById("gmap"));
		map.addControl(new GSmallMapControl());
		map.addControl(new GMapTypeControl());
		map.addControl(new GOverviewMapControl());
		//map.setMapType(G_SATELLITE_MAP);
		map.enableDoubleClickZoom();

		function createMarker(point, html) {
			// Create a lettered icon for this point using our icon class
			var marker = new GMarker(point);
			/*
			GEvent.addListener(marker, "click", function() {
				marker.openInfoWindowHtml(html);
			});
			*/
			return marker;
		}

		var point = new GLatLng(28.09297531185106, -16.742359399795532);
		map.setCenter(point, 17, G_SATELLITE_MAP );
		map.addOverlay(createMarker(point, "bahia_sduque"));

	}
}


