// JavaScript Document

 nombre_cookie='favoritos';
 var array_clientes = Array(); 
 if(favor_operador!='undefined'){
	nombre_cookie=nombre_cookie+'_'+favor_operador;
 }

 if(favor_operador!='undefined'){
	nombre_cookie=nombre_cookie+'_'+favor_oficina;
 }

/*Variables globales dentro de los favoritos*/
/// var cookie_sele_act='';
 var separador = "#" ;
 nombre_cookie=nombre_cookie;
 var array_clientes = Array(); 
 var array_valores_actual = Array(); 
//establece la cookie: la caducidad es de 31 dias  
 var _31dias = Caduca(31)  //crea la fecha de caducidad si 31 dias 

function saca_favoritos(titulo_ventana){
		if (!titulo_ventana)
			titulo_ventana=defecto_titulo_favoritos;
	 if(!ruta_favoritos)
		 ruta_favoritos='./';
	nombre='contenido_ventana_favoritos';
	$('#'+nombre).dialog('close');

	if (comprobar_cookies()){
//		cojemos la informacion antes de abrir la ventana
		saca_lista_clientes();
		
		
		existe=true;
	
		_alto=600;
		_ancho=315;
		
		$("#"+nombre).addClass("flora");		
		$("#"+nombre).attr("title",titulo_ventana);
		// ---- Abrimos la capa	
	//	$('#'+nombre).dialog({position: [tempX-370,tempY],minWidth:ancho_, minHeight:alto_ ,width:ancho_ ,height:alto_});
		
		$('#'+nombre).dialog(
		{ 
		   bgiframe:true,
		   modal: false, 
		   autoOpen:false,
		   overlay: 
		   { 
			   opacity: 0.5, 
			   background: "black" 
		   },
		   stack:true,
		   closeOnEscape: true,
		   title:titulo_ventana,
		   width:_ancho,
		   height:_alto,
		   minWidth:_ancho,
		   minHeight:_alto,
		   resizable:false,
		   draggable: true
		});
	/* open: function(event, ui) {
			   el = document.getElementById('contenido_ventana_favoritos');
			   elP = el.parentNode;
			   if (!elP.id){
				   elP.setAttribute('id','contenedor_favoritos');
			   		$( '#contenedor_favoritos' ).scrollFollow({
					   offset:50,
					   container:'header'
					   });
			   }
		   }*/
		// ----- Montamos el cargando...
			$('#'+nombre).html(getHTMLEjecucion());
			$('#'+nombre).dialog('open');	
			$('#'+nombre).show("slow");
			parametros= 'id='+favor_operador+'&id_of='+ favor_oficina+'&clientes='+array_clientes+'&cookie_actual='+cookie_sele_act+'&array_valores_actual='+escape(array_valores_actual)+'&desde_ruta='+ruta_favoritos;		
			//parametros= 'clientes='+array_clientes+'&cookie_actual='+cookie_sele_act+'&array_valores_actual='+array_valores_actual;
			URL_=ruta_favoritos+'modulos/favoritos/favoritos.php';
			$.post(URL_,parametros,function(data,Status)
			{
				$('#'+nombre).html(data);
			//	setAltoCapaDialog(nombre); 
				
			});
	}else{
		alert('Para trabajar con la herramienta de Alojamientos Favoritos.\n Debe activar en su navegador la opcion de trabajar con Cookies');
	}
}

/**************************COMPROBACION DE COOKIES HABILITADAS************************/

function CojerValorCookie_prueba(indice) {  
     //indice indica el comienzo del valor  
     var prueba = document.cookie  
     //busca el final del valor, dado por ;, a partir de indice  
     var finDeCadena = prueba.indexOf(";", indice)  
     //si no existe el ;, el final del valor lo marca la longitud total de la cookie  
     if (finDeCadena == -1)  
         finDeCadena = prueba.length  
     return unescape(prueba.substring(indice, finDeCadena))  
}  
   
function CojerCookie_prueba(nombre) {  
     var prueba = document.cookie  
     //construye la cadena con el nombre del valor  
     var arg = nombre + "="  
     var alen = arg.length           //longitud del nombre del valor  
     var glen = prueba.length       //longitud de la cookie  
   
     var i = 0  
     while (i < glen) {  
         var j = i + alen                    //posiciona j al final del nombre del valor  
         if (prueba.substring(i, j) == arg) //si en la cookie estamo ya en nombre del valor       
             return CojerValorCookie_prueba(j)      //devuleve el valor, que esta a partir de j  
   
         i = prueba.indexOf(" ", i) + 1     //pasa al siguiente  
         if (i == 0)  
             break                           //fin de la cookie  
     }  
     return null                             //no se encuentra el nombre del valor  
 }  
   
 function GuardarCookie_prueba (nombre, valor, caducidad) {  
     if(!caducidad)  
         caducidad = Caduca(0)  
   
     //crea la cookie: incluye el nombre, la caducidad y la ruta donde esta guardada  
     //cada valor esta separado por ; y un espacio  
     document.cookie = nombre + "=" + escape(valor) + "; path=/" ;
 }  
 
 function esiste_cookie(name){
	 var nameEQ = name + "=";
	 var ca = document.cookie.split(';');
	 for(var i=0;i < ca.length;i++) {
		 var c = ca[i];
		 while (c.charAt(0)==' ') c = c.substring(1,c.length);
		 if (c.indexOf(nameEQ) == 0)
		 	if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

  
function comprobar_cookies() {  
	 //inicia secuencia de test  
	 //guarda la cookie  
	 var exiete_cooki = esiste_cookie(nombre_cookie+'*cliente')
	 if (exiete_cooki) {
		 return true;
	 }else{
		GuardarCookie_prueba(nombre_cookie+'*cliente', "casas",_31dias)  
	 }
	 //espera 1 segundo (algunos navegadores requieren un tiempo para guardar la cookie)  
//	 setTimeout("comprobar_cookies()",1000)  
	 //lee la cookie y muestra un mensaje u otro en funcion de que la lectura tenga exito o no  

  if ( CojerCookie_prueba(nombre_cookie+'*cliente') == "casas" ) {  
     return true;
  } else {  
     return false;
  }  
}  

/*************************funciones gestion cookies************************/
/*
//ENLACE PARA FAVPRITOS SIN PRESUPUESTO
//<a onclick="add_item_lista('0#26#Ref:26#43#0#0##1#0#0#Cáceres#927175267 / 927175046');" class="texto_base" href="#">Añadir a mi lista</a>
							//0#id_casa # nombre # operador # idioma # id_of # interno # acceso # no_reserva # desde_portal #casa_provincia,telefono
							
/************JORGE ESTUDIAMOS EL FORMULARIO Y MANDAMOS DATOS**************/
function prepara_datos(datos_pasados,tlf_casa,casa_provincia){
		if ($('#contenido_ventana_favoritos').html()==''){
			saca_favoritos();
		}
		datos_pasados=document.getElementById(datos_pasados);
		parametros_tipo1='1#';
	
		for (i=0; i < datos_pasados.elements.length; i++) {
			if (datos_pasados.elements[i].id!='email_contacto')
			parametros_tipo1=parametros_tipo1+datos_pasados.elements[i].value+'#';
		}
		parametros_tipo1=parametros_tipo1+tlf_casa+"#"+casa_provincia;
		GuardarCookie(cookie_sele_act, parametros_tipo1, _31dias)
		if (!$('#contenido_ventana_favoritos').dialog('isOpen')){
		 saca_lista_clientes();
		 recarga();	 
		}

		
}

function anadir_casa_simple(parametros_tipo0){
		if ($('#contenido_ventana_favoritos').html()==''){
			saca_favoritos();
		}

		GuardarCookie(cookie_sele_act, parametros_tipo0, _31dias)
		if (!$('#contenido_ventana_favoritos').dialog('isOpen')){
		 saca_lista_clientes();
		 recarga();	 
		}

}


function elimina_casa(posicion){
	array_casas=array_valores_actual.split('@');
	//list.splice(1, 1); 
	//join("@"); 
	array_casas.splice(posicion, 1); 
	array_valores_actual=array_casas.join("@");
//	GuardarCookie(cookie_sele_act, array_valores_actual, _31dias)
	if(array_valores_actual=='')
		array_valores_actual='casas';
	document.cookie = cookie_sele_act + "=" + escape(array_valores_actual) + "; path=/"  ;
	saca_lista_clientes();
	recarga();	 
}

/*creamos una cookie nueva para cada cliente*/

function crea_cliente(nombre_cliente){

		if (nombre_cliente!=''){
		if (array_clientes.inArray(nombre_cookie+'*'+nombre_cliente))
			if (confirm("Este nombre de cliente ya exista en su lista.\nQuiere vaciar el cliente actual y trabajar con el.")) { 
			 // do things if OK
			}else{
				return;
			}

		GuardarCookie(nombre_cookie+'*'+nombre_cliente,'casas',_31dias);
		cookie_sele_act=array_clientes[array_clientes.length-1];
		array_valores_actual=CojerCookie(array_clientes[array_clientes.length-1]);
		recarga();

		}else{
			alert('Debe de introducir un nombre para el Cliente');
		}
}

Array.prototype.inArray = function (value){
	// Returns true if the passed value is found in the
	// array. Returns false if it is not.
	var i;
	for (i=0; i < this.length; i++) 
	{
		if (this[i] == value) 
		{
		return true;
		}
	}
	return false;
	};


function cambia_cliente_seleccionado(que_cliente){
	
			cookie_sele_act=array_clientes[que_cliente];
			array_valores_actual=CojerCookie(array_clientes[que_cliente]);
			recarga();
}

function recarga(){
			$('#'+nombre).html(getHTMLEjecucion());
			$('#'+nombre).dialog('open');	
			$('#'+nombre).show("slow");
			parametros= 'id='+favor_operador+'&id_of='+favor_oficina+'&clientes='+array_clientes+'&cookie_actual='+cookie_sele_act+'&array_valores_actual='+escape(array_valores_actual)+'&desde_ruta='+ruta_favoritos;			
			//parametros= 'clientes='+array_clientes+'&cookie_actual='+cookie_sele_act+'&array_valores_actual='+array_valores_actual;
			URL_=ruta_favoritos+'modulos/favoritos/favoritos.php';
			$.post(URL_,parametros,function(data,Status)
			{
				$('#'+nombre).html(data);
				
			});
}

/*sacamos todas las cookies del sitio que pertenecen al operador*/
function saca_lista_clientes() {
	check_name=nombre_cookie
	array_clientes.splice(0,array_clientes.length);
	// first we'll split this cookie up into name/value pairs
	// note: document.cookie only returns name=value, not the other components
	var a_all_cookies = document.cookie.split( ';' );
	var a_temp_cookie = '';
	var cookie_name = '';
	var cookie_value = '';
	var b_cookie_found = false; // set boolean t/f default f

	for ( i = 0; i < a_all_cookies.length; i++ )
	{
		// now we'll split apart each name=value pair
		a_temp_cookie = a_all_cookies[i].split( '=' );
		// and trim left/right whitespace while we're at it
		cookie_name = a_temp_cookie[0].replace(/^\s+|\s+$/g, '');
		// if the extracted name matches passed check_name
		
		existe=cookie_name.indexOf(check_name);
		
		if ( existe!=-1 )
		{
			array_clientes.push(cookie_name);
		}
		a_temp_cookie = null;
		cookie_name = '';
	}
	if (cookie_sele_act==''){
		cookie_sele_act=array_clientes[0];
		array_valores_actual=CojerCookie(array_clientes[0]);
	}else{
		array_valores_actual=CojerCookie(cookie_sele_act);
	}
	
	//array_clientes.reverse();
	//alert(array_clientes.join());
}




/*************************************************************************/
function GuardarCookie(nombre, valor, caducidad) {  
	valor_actual_cookie=(CojerCookie(nombre));
     if(!caducidad)  
         caducidad = Caduca(0)  
		 
	if (valor=='casas'){
	 cuantas_casas=0;
	}else{
	 cuantas_casas = valor_actual_cookie.split( '@' );
	 cuantas_casas=cuantas_casas.length;
	}
	if(cuantas_casas<=11 ){
     //crea la cookie: incluye el nombre, la caducidad y la ruta donde esta guardada  
     //cada valor esta separado por ; y un espacio  
/*	 if (valor_actual_cookie!=''){
    	 document.cookie = nombre + "=" + escape(valor_actual_cookie+'|'+valor) + "; expires=" + caducidad + "; path=/"  
	 }else{*/
	 if (valor=='casas'){
 	     document.cookie = nombre + "=" + escape(valor) + "; path=/"  ;
	 }else{
		 if (valor_actual_cookie=='casas'){
    	     document.cookie = nombre + "=" + escape(valor) + "; path=/"  ;		 
		 }else{
    	     document.cookie = nombre + "=" + escape(valor_actual_cookie)+'@'+ escape(valor) + "; path=/"  ;		 
		 }
	 }
		 saca_lista_clientes();
		 recarga();	 
	 }else{
		 alert('Solo puede guardar un total 12 casas en una misma lista de Favoritos.');
	 }
	 /*}
	 alert(valor_actual_cookie);*/
 }  
 
 
function CojerCookie(nombre) {  
	 var galleta = document.cookie  
	 //construye la cadena con el nombre del valor  
	 var arg = nombre + "="  
		 var alen = arg.length           //longitud del nombre del valor  
	 var glen = galleta.length       //longitud de la cookie  
	
	 var i = 0  
	 while (i < glen) {  
		 var j = i + alen            //posiciona j al final del nombre del valor  
		 if (galleta.substring(i, j) == arg) //si en la cookie estamo ya en nombre del valor       
			 return CojerValorCookie(j)  //devuleve el valor, que esta a partir de j  
	
		 i = galleta.indexOf(" ", i) + 1     //pasa al siguiente  
		 if (i == 0)  
			 break               //fin de la cookie  
	 }  
	 return null                 //no se encuentra el nombre del valor  
}  

function CojerValorCookie(indice) {  
     //indice indica el comienzo del valor  
     var galleta = document.cookie  
     //busca el final del valor, dado por ;, a partir de indice  
     var finDeCadena = galleta.indexOf(";", indice)  
     //si no existe el ;, el final del valor lo marca la longitud total de la cookie  
     if (finDeCadena == -1)  
         finDeCadena = galleta.length  
   
     return unescape(galleta.substring(indice, finDeCadena))  
}  

 function elimina_cliente(que_cliente) {  
// alert(array_clientes[que_cliente]);
	 if (array_clientes[que_cliente]!='favoritos_'+favor_operador+'_'+favor_oficina+'*cliente'){
     //para borrar la cookie, se le pone una fecha del pasado mediante Caduca(-1)  
     document.cookie = array_clientes[que_cliente] + "=; path=/" ;
	 if (cookie_sele_act==array_clientes[que_cliente]){
		 cookie_sele_act='';
	 }
	 saca_lista_clientes();
	 recarga();	 
	 }else{
		 alert (eliminar_cliente_general);
		 Vaciar_datos_cliente(que_cliente);
	 	 saca_lista_clientes();
		 recarga();	 

	 }
 }  
 
 function Vaciar_datos_cliente(que_cliente) {  
 	     document.cookie = array_clientes[que_cliente] + "=casas; path=/"  ;
		 saca_lista_clientes();
		 recarga();	
 }


function Caduca(dias) {  
     var hoy = new Date()//coge la fecha actual  
     var msEnXDias = eval(dias) * 24 * 60 * 60 * 1000  //pasa los dias a mseg.  
   
     hoy.setTime(hoy.getTime() + msEnXDias)          //fecha de caducidad: actual + caducidad  
     return (hoy.toGMTString())  
} 


/*************tratamos el envio al mail***************/
function enviar_lista_por_mail(que_cliente){
			nombre='contenido_ventana_favoritos';
			
			$('#'+nombre).html(getHTMLEjecucion());
			
			cliente_sele=array_clientes[que_cliente];
			lista_casas_email=CojerCookie(array_clientes[que_cliente]);

			parametros= 'id='+favor_operador+'&id_of='+ favor_oficina+'&clientes='+array_clientes+'&cookie_actual='+cookie_sele_act+'&array_valores_actual='+escape(array_valores_actual)+'&que_cliente='+que_cliente+'&idioma='+$('#idioma').val();			
			//parametros= 'clientes='+array_clientes+'&cookie_actual='+cliente_sele+'&array_valores_actual='+lista_casas_email;
			URL_=ruta_favoritos+'modulos/favoritos/favoritos_mail.php';
			$.post(URL_,parametros,function(data,Status)
			{
				$('#'+nombre).html(data);
				$('#'+nombre).animate({width: 525, height:700}, 1000);
				$('#'+nombre).parent().animate({width: 530, height:700}, 1000);
			});

}

function enviar_mail(que_cliente){
	nombre_formulario='frm_envio';
//	alert($("#"+nombre).attr('id'));
	parametros_form = $("#"+nombre_formulario).formSerialize();
	parametros_form=parametros_form+'&array_valores_actual='+escape($("#array_valores_actual").val());
	nombre='contenido_ventana_favoritos';
	$('#'+nombre).html(getHTMLEjecucion());
	cliente_sele=array_clientes[que_cliente];
	lista_casas_email=CojerCookie(array_clientes[que_cliente]);
	parametros=parametros_form;		
	//parametros= 'clientes='+array_clientes+'&cookie_actual='+cliente_sele+'&array_valores_actual='+lista_casas_email;
	URL_=ruta_favoritos+'/modulos/favoritos/envio_mail.php';
		$.post(URL_,parametros,function(data,Status)
	{
		$('#'+nombre).html(data);
	});

	//alert(parametros);
}

function volver_listado(){
	nombre='contenido_ventana_favoritos';
	$('#'+nombre).animate({width: 305, height:580}, 1000);
	$('#'+nombre).parent().animate({width: 315, height:620}, 1000);
	recarga();
}
/*****************************/