// JavaScript Document
/*
Nom de la cookie: escapadeMF
Format de la cookie:
	#id_estab#tipus#id_apart#data_entrada#data_sortida#pensio#preu#nom#nEstrelles/localitat(apart)#id_foto#nHab#vHab
	
	id_estab: id_hotel / id_inmo
	tipus:	0 = hotel
		1 = inmo
	si tipus==hotel -> id_apart = 0
	si tipus==inmo  -> nHab = 0
			       vHab = 0
	nom: nom_hotel / nom_apart
	nEstrelles: en el cas de tipus==hotel
				si tipus==inmo -> nEstrelles = localitat (Tenir en compte alhora de llegir la cookie)
	id_foto = id de la primra foto per mostrar al llistat
	nHab = num. habitacions
	vHab = Es un string separat per '^' que conté les dades de les habitacions.
		   Format: idHab^nAdults^nNensGratis^nNensDte
		   Dins de la funció addfavorites li afegim nCamps_vHab a vHab.
		   S'han de tornar a calcular els preus a la lectura de la cookie i comprovar si el total coincideix.
		   En el cas de que hagi canviat el preu, mostrar un missatge de FeedBack informant l'usuari.
	
	Atenció (BUGS):	- no es poden llegir els continguts amb espais en blanc de la cookie,
					per aquest motiu substituim els espai en blanc del nom i la localitat pel caracter '^'.
					Ho hem de tenir en compte en el moment de llegir el contingut de la cookie.
					
					- no es pot fer servir ',' en el preu, s'ha de substituir per '.' en la separació decimal.
*/
var MAX_REG_EN_COOKIE	= 25;

var expDays = 365;
var nCampsCookie = 12;
var nCamps_vHab = 4;
var Safari = navigator.userAgent.indexOf("Safari") > -1?true:false
function addFavorites(id_estab,tipo,id_apart,data_entrada,data_sortida,pensio,preu,nom,nEstrelles,id_foto,nHab,vHab)
{
	var correcte = true;
	var cookies;
	var lname;
	
	/*
	//Safari
	var i;
	var aux="";
	var layer;
	var divTags;
	*/
	try
	{
		if (!(id_estab == null || id_estab == ''))
		{
			nom = nom.replace(/ /g,"^");
			if(tipo==1)
			{
				nEstrelles = nEstrelles.replace(/ /g,"^"); //Si es un apart aquesta variable conte la localitat
				nEstrelles = String2CookieCode(nEstrelles);
			}
			preu = preu.replace(/,/g,".");
			cookies = readCookie('escapadeMF');
			if (cookies == null)
			{
				cookies = nCampsCookie;
			}
			
			vHab = nCamps_vHab + "^" + vHab;
			
			cookies += "#" + id_estab;
			cookies += "#" + tipo;
			cookies += "#" + id_apart;
			cookies += "#" + data_entrada;
			cookies += "#" + data_sortida;
			cookies += "#" + pensio;
			cookies += "#" + preu;
			cookies += "#" + nom;
			cookies += "#" + nEstrelles;
			cookies += "#" + id_foto;
			cookies += "#" + nHab;
			cookies += "#" + vHab;
			
			createCookie('escapadeMF',cookies,expDays);
			/*
			//modLayerFavoritos();
			
			//Amagar el link
			lname = 'divLinkFavoritos'
			
			//Safari
			if(Safari)
			{
				divTags = document.getElementsByTagName("DIV");
				for (i=0;i<divTags.length;i++)
				{
					aux = divTags[i].id;
					if(aux==lname)
					{
						layer = divTags[i];
					}
				}
				layer.style.visibility='hidden';
			}
			else
			{
				eval("document.getElementById('" + lname + "').style.visibility='hidden'");	
			}
			*/
		}
	}
	catch(ex)
	{
		correcte = false;
	}
	return correcte;
}

function String2CookieCode(s)
{
	//Converteix els textes amb caracters especials a html_code (sense el ';' final)
	//p.e. 'é' = '&#233'
	if (!s) return '';
	s = s.replace(/ /g,"&#160");
	s = s.replace(/¡/g,"&#161");
	s = s.replace(/¢/g,"&#162");
	s = s.replace(/£/g,"&#163");
	s = s.replace(/¤/g,"&#164");
	s = s.replace(/¥/g,"&#165");
	s = s.replace(/¦/g,"&#166");
	s = s.replace(/§/g,"&#167");
	s = s.replace(/¨/g,"&#168");
	s = s.replace(/©/g,"&#169");
	s = s.replace(/ª/g,"&#170");
	s = s.replace(/«/g,"&#171");
	s = s.replace(/¬/g,"&#172");
	//s = s.replace(/&shy;/g,"&#173;");
	s = s.replace(/®/g,"&#174");
	s = s.replace(/¯/g,"&#175");
	s = s.replace(/°/g,"&#176");
	s = s.replace(/±/g,"&#177");
	s = s.replace(/²/g,"&#178");
	s = s.replace(/³/g,"&#179");
	s = s.replace(/´/g,"&#180");
	s = s.replace(/µ/g,"&#181");
	s = s.replace(/¶/g,"&#182");
	s = s.replace(/·/g,"&#183");
	s = s.replace(/¸/g,"&#184");
	s = s.replace(/¹/g,"&#185");
	s = s.replace(/º/g,"&#186");
	s = s.replace(/»/g,"&#187");
	s = s.replace(/¼/g,"&#188");
	s = s.replace(/½/g,"&#189");
	s = s.replace(/¾/g,"&#190");
	s = s.replace(/¿/g,"&#191");
	s = s.replace(/À/g,"&#192");
	s = s.replace(/Á/g,"&#193");
	s = s.replace(/Â/g,"&#194");
	s = s.replace(/Ã/g,"&#195");
	s = s.replace(/Ä/g,"&#196");
	s = s.replace(/Å/g,"&#197");
	s = s.replace(/Æ/g,"&#198");
	s = s.replace(/Ç/g,"&#199");
	s = s.replace(/È/g,"&#200");
	s = s.replace(/É/g,"&#201");
	s = s.replace(/Ê/g,"&#202");
	s = s.replace(/Ë/g,"&#203");
	s = s.replace(/Ì/g,"&#204");
	s = s.replace(/Í/g,"&#205");
	s = s.replace(/Î/g,"&#206");
	s = s.replace(/Ï/g,"&#207");
	s = s.replace(/Ð/g,"&#208");
	s = s.replace(/Ñ/g,"&#209");
	s = s.replace(/Ò/g,"&#210");
	s = s.replace(/Ó/g,"&#211");
	s = s.replace(/Ô/g,"&#212");
	s = s.replace(/Õ/g,"&#213");
	s = s.replace(/Ö/g,"&#214");
	s = s.replace(/×/g,"&#215");
	s = s.replace(/Ø/g,"&#216");
	s = s.replace(/Ù/g,"&#217");
	s = s.replace(/Ú/g,"&#218");
	s = s.replace(/Û/g,"&#219");
	s = s.replace(/Ü/g,"&#220");
	s = s.replace(/Ý/g,"&#221");
	s = s.replace(/Þ/g,"&#222");
	s = s.replace(/ß/g,"&#223");
	s = s.replace(/à/g,"&#224");
	s = s.replace(/á/g,"&#225");
	s = s.replace(/â/g,"&#226");
	s = s.replace(/ã/g,"&#227");
	s = s.replace(/ä/g,"&#228");
	s = s.replace(/å/g,"&#229");
	s = s.replace(/æ/g,"&#230");
	s = s.replace(/ç/g,"&#231");
	s = s.replace(/è/g,"&#232");
	s = s.replace(/é/g,"&#233");
	s = s.replace(/ê/g,"&#234");
	s = s.replace(/ë/g,"&#235");
	s = s.replace(/ì/g,"&#236");
	s = s.replace(/í/g,"&#237");
	s = s.replace(/î/g,"&#238");
	s = s.replace(/ï/g,"&#239");
	s = s.replace(/ð/g,"&#240");
	s = s.replace(/ñ/g,"&#241");
	s = s.replace(/ò/g,"&#242");
	s = s.replace(/ó/g,"&#243");
	s = s.replace(/ô/g,"&#244");
	s = s.replace(/õ/g,"&#245");
	s = s.replace(/ö/g,"&#246");
	s = s.replace(/÷/g,"&#247");
	s = s.replace(/ø/g,"&#248");
	s = s.replace(/ù/g,"&#249");
	s = s.replace(/ú/g,"&#250");
	s = s.replace(/û/g,"&#251");
	s = s.replace(/ü/g,"&#252");
	s = s.replace(/ý/g,"&#253");
	s = s.replace(/þ/g,"&#254");
	s = s.replace(/ÿ/g,"&#255");

	return s;
}

function CookieCode2String(s)
{
	//Converteix els textes en html_code amb caracters especials (sense el ';' final) al caracter equivalent
	//p.e. '&#233' = 'é'
	if (!s) return '';
	
	var s2 = "";
	
	for (var i=160;i<=255;i++)
	{
		s2 = "&#"+i;
		s = s.replace(new RegExp(s2,"g"),String.fromCharCode(i));
	}
	
	return s;
}

function removeFavorites(index)
{
	var correcte=true;
	var cookies=null;
	var cFav=null;
	var sFav=null;
	var i=0;
	var primer=true;
	var indexReal = 0;
	
	var nFav = 0;
	var col_nCamps		= 0;
	var col_id_estab	= 1;
	var col_tipo		= 2;
	var col_id_apart	= 3;
	var col_data_entrada= 4;
	var col_data_sortida= 5;
	var col_pensio		= 6;
	var col_preu		= 7;
	var col_nom			= 8;
	var col_nEstrelles	= 9;
	var col_id_foto		= 10;
	var col_nHab		= 11;
	var col_vHab		= 12;
	var cFav_nCamps			= 0;
	var cFav_id_estab		= "";
	var cFav_tipo			= "";
	var cFav_id_apart		= "";
	var cFav_data_entrada	= "";
	var cFav_data_sortida	= "";
	var cFav_pensio			= "";
	var cFav_preu			= "";
	var cFav_nom			= "";
	var cFav_nEstrelles		= "";
	var cFav_id_foto		= "";
	var cFav_nHab			= "";
	var cFav_vHab			= "";

	try
	{
		if (index>=0)
		{
			cookies = readCookie('escapadeMF');
			if (cookies != null)
			{
				cookies = CookieCode2String(cookies);
				cFav=cookies.split('#');
				cFav_nCamps = parseInt(cFav[col_nCamps]);		
				nFav = parseInt((cFav.length-1)/cFav_nCamps);
				indexReal = nFav - index - 1;
				for (i=0;i<nFav;i++)
				{
					cFav_id_estab = cFav[parseInt((i*cFav_nCamps)+col_id_estab)];
					cFav_tipo = cFav[(i*cFav_nCamps)+col_tipo];
					cFav_id_apart = cFav[(i*cFav_nCamps)+col_id_apart];
					cFav_data_entrada = cFav[(i*cFav_nCamps)+col_data_entrada];
					cFav_data_sortida = cFav[(i*cFav_nCamps)+col_data_sortida];
					cFav_pensio = cFav[(i*cFav_nCamps)+col_pensio];
					cFav_preu = cFav[(i*cFav_nCamps)+col_preu];
					cFav_nom = cFav[(i*cFav_nCamps)+col_nom];
					cFav_nom = String2CookieCode(cFav_nom);
					cFav_nEstrelles = cFav[(i*cFav_nCamps)+col_nEstrelles];
					cFav_nEstrelles = String2CookieCode(cFav_nEstrelles);
					cFav_id_foto = cFav[(i*cFav_nCamps)+col_id_foto];
					cFav_nHab = cFav[(i*cFav_nCamps)+col_nHab];
					cFav_vHab = cFav[(i*cFav_nCamps)+col_vHab];	

					if (i!=indexReal)
					{
						if (primer)
						{
							primer = false;
							sFav += cFav_nCamps;
						}
						sFav += '#' +cFav_id_estab;
						sFav += '#' +cFav_tipo;
						sFav += '#' +cFav_id_apart;
						sFav += '#' +cFav_data_entrada;
						sFav += '#' +cFav_data_sortida;
						sFav += '#' +cFav_pensio;
						sFav += '#' +cFav_preu;
						sFav += '#' +cFav_nom;
						sFav += '#' +cFav_nEstrelles;
						sFav += '#' +cFav_id_foto;
						sFav += '#' +cFav_nHab;
						sFav += '#' +cFav_vHab;
					}
				}
			}
			
			if (sFav==null)
			{
				eraseCookie('escapadeMF');
			}
			else
			{
				createCookie('escapadeMF',sFav,expDays);	
			}
		}
	}
	catch(ex)
	{
		alert(ex);
		correcte = false;
	}
	return correcte;
}
/*
function removeFavorites(id_estab,tipo,id_apart,data_entrada,data_sortida,pensio,preu,nom,nEstrelles,id_foto,nHab,vHab)
{
	var correcte=true;
	var cookies=null;
	var cFav=null;
	var sFav=null;
	var i=0;
	var primer=true;
	var eliminat=false;
	
	var nFav = 0;
	var col_nCamps		= 0;
	var col_id_estab	= 1;
	var col_tipo		= 2;
	var col_id_apart	= 3;
	var col_data_entrada= 4;
	var col_data_sortida= 5;
	var col_pensio		= 6;
	var col_preu		= 7;
	var col_nom			= 8;
	var col_nEstrelles	= 9;
	var col_id_foto		= 10;
	var col_nHab		= 11;
	var col_vHab		= 12;
	var cFav_nCamps			= 0;
	var cFav_id_estab		= "";
	var cFav_tipo			= "";
	var cFav_id_apart		= "";
	var cFav_data_entrada	= "";
	var cFav_data_sortida	= "";
	var cFav_pensio			= "";
	var cFav_preu			= "";
	var cFav_nom			= "";
	var cFav_nEstrelles		= "";
	var cFav_id_foto		= "";
	var cFav_nHab			= "";
	var cFav_vHab			= "";

var sAlert = "";

	try
	{
		if (!(id_estab == null || id_estab == ''))
		{
			nom = nom.replace(/ /g,"^");
			cookies = readCookie('escapadeMF');
			if (cookies != null)
			{
				cFav=cookies.split('#');
				
				cFav_nCamps = parseInt(cFav[col_nCamps]);
				nFav = (cFav.length-1)/cFav_nCamps;
				
				for (i=0;i<nFav;i++)
				{
					cFav_id_estab = cFav[(i*cFav_nCamps)+col_id_estab];
					cFav_tipo = cFav[(i*cFav_nCamps)+col_tipo];
					cFav_id_apart = cFav[(i*cFav_nCamps)+col_id_apart];
					cFav_data_entrada = cFav[(i*cFav_nCamps)+col_data_entrada];
					cFav_data_sortida = cFav[(i*cFav_nCamps)+col_data_sortida];
					cFav_pensio = cFav[(i*cFav_nCamps)+col_pensio];
					cFav_preu = cFav[(i*cFav_nCamps)+col_preu];
					cFav_nom = cFav[(i*cFav_nCamps)+col_nom];
					cFav_nEstrelles = cFav[(i*cFav_nCamps)+col_nEstrelles];
					cFav_id_foto = cFav[(i*cFav_nCamps)+col_id_foto];
					cFav_nHab = cFav[(i*cFav_nCamps)+col_nHab];
					cFav_vHab = cFav[(i*cFav_nCamps)+col_vHab];

sAlert = "";
sAlert += eliminat;
sAlert += "\n" + cFav_id_estab + " / " + id_estab;
sAlert += "\n" + cFav_tipo + " / " + tipo;
sAlert += "\n" + cFav_id_apart + " / " + id_apart;
sAlert += "\n" + cFav_data_entrada + " / " + data_entrada;
sAlert += "\n" + cFav_data_sortida + " / " + data_sortida;
sAlert += "\n" + cFav_pensio + " / " + pensio;
sAlert += "\n" + cFav_preu + " / " + preu;
sAlert += "\n" + cFav_nom + " / " + nom;
sAlert += "\n" + cFav_nEstrelles + " / " + nEstrelles;
sAlert += "\n" + cFav_id_foto + " / " + id_foto;
sAlert += "\n" + cFav_nHab + " / " + nHab;
sAlert += "\n" + cFav_vHab + " / " + vHab;

alert(sAlert);

					if (!((cFav_id_estab==id_estab) && (cFav_tipo==tipo) && (cFav_id_apart==id_apart) && (cFav_data_entrada==data_entrada) && (cFav_data_sortida==data_sortida) && (cFav_pensio==pensio) && (cFav_preu==preu) && (cFav_nom==nom) && (cFav_nEstrelles==nEstrelles) && (cFav_id_foto==id_foto) && (cFav_nHab==nHab) && (cFav_vHab==vHab)) || eliminat)
					{
						
alert("gravat");

						if (primer)
						{
							primer = false;
							sFav += cFav_nCamps;
						}
						sFav += '#' +cFav_id_estab;
						sFav += '#' +cFav_tipo;
						sFav += '#' +cFav_id_apart;
						sFav += '#' +cFav_data_entrada;
						sFav += '#' +cFav_data_sortida;
						sFav += '#' +cFav_pensio;
						sFav += '#' +cFav_preu;
						sFav += '#' +cFav_nom;
						sFav += '#' +cFav_nEstrelles;
						sFav += '#' +cFav_id_foto;
						sFav += '#' +cFav_nHab;
						sFav += '#' +cFav_vHab;
					}
					else
					{
						eliminat = true;
					}
				}
			}
			
			if (sFav==null)
			{
				eraseCookie('escapadeMF');
			}
			else
			{
				createCookie('escapadeMF',sFav,expDays);	
			}
		}
	}
	catch(ex)
	{
		correcte = false;
	}
	return correcte;
}
*/
/*
function removeFavorites(id_oferta,dia,mes,noches,estab,lng,msg)
{
	var cookies=null;
	var cFav=null;
	var sFav=null;
	var i=0;
	var j=0;
	var nElements=4; //Num. d'elements guardats a la cookie
	var primer=true;
	
	mes--; //El mes d'entrada es el num. del mes real.
	
	if (!(id_oferta == null || id_oferta == ''))
	{		
		cookies = readCookie('escapadeMF');
		if (cookies != null)
		{
			cFav=cookies.split('#');
			for (i=0;i<cFav.length;i+=nElements)
			{
				if (!((cFav[i]==id_oferta) && (cFav[i+1]==dia) && (cFav[i+2]==mes) && (cFav[i+3]==noches)))
				{
					for (j=0;j<nElements;j++)
					{
						if (primer)
						{
							primer = false;
							sFav = cFav[i+j];
						}
						else
						{
							sFav += '#' + cFav[i+j];
						}
					}
				}				
			}
		}
		
		if (sFav==null)
		{
			eraseCookie('escapadeMF');
		}
		else
		{
			createCookie('escapadeMF',sFav,expDays);
		}
		//modLayerFavoritos();
		alert(msg);
		//document.location.href='favoritos.jsp?estab='+estab+'&lng='+lng;
	}
}
*/

function AmagarLinkMisFavoritos(lname)
{
	//Amagar el link
	//lname = 'divLinkFavoritos'
	if(lname==null || lname=="")
	{
		lname = 'divLinkFavoritos'
	}
	
	//Safari
	if(Safari)
	{
		divTags = document.getElementsByTagName("DIV");
		for (i=0;i<divTags.length;i++)
		{
			aux = divTags[i].id;
			if(aux==lname)
			{
				layer = divTags[i];
			}
		}
		layer.style.visibility='hidden';
	}
	else
	{
		eval("document.getElementById('" + lname + "').style.visibility='hidden'");	
	}
}

function MostrarLinkMisFavoritos(lname)
{
	//Mostrar el link
	//lname = 'divLinkFavoritos'
	if(lname==null || lname=="")
	{
		lname = 'divLinkFavoritos'
	}
	
	//Safari
	if(Safari)
	{
		divTags = document.getElementsByTagName("DIV");
		for (i=0;i<divTags.length;i++)
		{
			aux = divTags[i].id;
			if(aux==lname)
			{
				layer = divTags[i];
			}
		}
		layer.style.visibility='visible';
	}
	else
	{
		eval("document.getElementById('" + lname + "').style.visibility='visible'");	
	}
}

function createCookie(name,value,days)
{
	if (days)
	{
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/; domain=.escapade.es";
}

function readCookie(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) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name)
{
	createCookie(name,"",-1);
}

