/*
DIREITOS DE PROPRIEDADE INTELECTUAL. 

O SOFTWARE E AS CÓPIAS AUTORIZADAS PELA COTONET SÃO DE
TITULARIDADE E INCORPORAM PROPRIEDADE INTELECTUAL DA 
COTONET, LDA. A ESTRUTURA, ORGANIZAÇÃO E O CÓDIGO
DO SOFTWARE SÃO CONSIDERADOS SEGREDO COMERCIAL VALIOSO E
CONTÊM INFORMAÇÕES CONFIDENCIAIS DA COTONET,
LDA. O SOFTWARE É PROTEGIDO POR DIREITOS DE AUTOR, INCLUINDO,
SEM RESTRIÇÕES, DISPOSIÇÕES DE TRATADOS
INTERNACIONAIS E LEIS APLICÁVEIS NO PAÍS NO QUAL O SOFTWARE 
ESTÁ A SER UTILIZADO. NÃO PODE COPIAR O
SOFTWARE. CONCORDA EM NÃO MODIFICAR, 
ADAPTAR NEM TRADUZIR O SOFTWARE. 
TAMBÉM CONCORDA EM NÃO USAR 
ENGENHARIA REVERSA, DESCOMPILAR, DECOMPOR OU TENTAR
DE ALGUM OUTRO MODO DESCOBRIR O CÓDIGO DO SOFTWARE.
A UTILIZAÇÃO DESTE SOFTWARE NÃO LHE GARANTE QUAISQUER 
DIREITOS DE PROPRIEDADE INTELECTUAL DO SOFTWARE.

LIMITAÇÃO DE RESPONSABILIDADE. 

EM HIPÓTESE ALGUMA A COTONET OU OS SEUS
FORNECEDORES SERÃO RESPONSÁVEIS POR QUAISQUER DANOS,
REIVINDICAÇÕES OU CUSTOS OU QUAISQUER DANOS CONSEQUENCIAIS,
INDIRECTOS, INCIDENTAIS, PUNITIVOS OU ESPECIAIS OU POR LUCROS 
CESSANTES, MESMO QUE UM REPRESENTANTE DA COTONET
TENHA SIDO AVISADO DA POSSIBILIDADE DE TAIS PERDAS, DANOS,
REIVINDICAÇÕES OU CUSTOS OU POR QUALQUER REIVINDICAÇÃO FEITA POR
TERCEIROS. TAIS LIMITAÇÕES E EXCLUSÕES APLICAM-SE DE ACORDO COM 
A LEGISLAÇÃO APLICÁVEL NA SUA JURISDIÇÃO. A RESPONSABILIDADE INTEGRAL
DA COTONET E DOS SEUS FORNECEDORES SOB ESTE CONTRATO OU RELACIONADA
A ELE, CONTRATUAL, DECORRENTE DE ACTO ILÍCITO (EM CADA CASO INCLUINDO
SEM LIMITAÇÃO NEGLIGÊNCIA) OU DE OUTRO MODO DEVEM SER
LIMITADOS À QUANTIA PAGA PELO SOFTWARE, SE HOUVER.
*/
// CopyRight 2007 - CotoNet, Lda
// Todos os Direitos Reservados
	var map;
	var aFazer;
	var xmlHttp,xmlHttpPes;
	var fezLogin = false;
	var meusPesqueiros;
	var pesPesqueiros;
	var favPesqueiros;
	var arrTipoPesqueiro = ["Mar","Mar Costa","Rio","Barragem"];
	var arrtiposPesca = ["Fundo","Bóia","Corrico","Amostra Directa","Mosca","Sentir","Chumbadinha","Outro"];
	var meusPesqueiros;	

	var bookmarkurl="http://www.pescador.com.pt/pesqueiros"
	var bookmarktitle="O Sítio dos Pesqueiros"
	function addFav(){
	window.external.AddFavorite(bookmarkurl,bookmarktitle)
	}
	
	if (document.getElementById && document.getElementsByTagName) 
	{if (window.addEventListener) window.addEventListener('load', initScrollBars, false);
	else if (window.attachEvent) window.attachEvent('onload', initScrollBars);}
	function initScrollBars() {
		CSBfleXcroll('scrlDados');
		CSBfleXcroll('scrlPesqueiros');
		CSBfleXcroll('scrlFavoritos');
		CSBfleXcroll('scrlPesquisa');
	}
	function load() 
	{
		 if (GBrowserIsCompatible()) 
		 {
			map = new GMap2(document.getElementById("map"));

			/*
			map.addControl(new GLargeMapControl());
			map.addControl(new GMapTypeControl());
			map.addControl(new GOverviewMapControl());
			*/
			map.setUIToDefault();
		    map.setCenter(new GLatLng(38.75408327579141,-17.8857421875), 5);
		}
	}
	function login(frm)
	{
		var queryString = "user=" + escape(frm.user.value) + "&psw=" + escape(frm.pp.value);

		aFazer="Login";
		xmlHttp = CriaXmlHttp();

		if (xmlHttp==null)
		{
		  alert ("O seu browser não suporta AJAX!");
		  return;
		} 
		
		var url="login.php";
		xmlHttp.onreadystatechange=loginChanged;
		xmlHttp.open("POST",url,true);
		xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		xmlHttp.send(queryString);
	}
	function frmPesquisa(frm)
	{
		if(!fezLogin)
		{
			alert("Para efectuar pesquisas tem de fazer o login...");
			return false;
		}

		if(frm.distrito.selectedIndex==0)
		{
			alert("Escolha um distrito...");
			return false;
		}

		if(frm.concelho.selectedIndex==0)
		{
			alert("Escolha um concelho...");
			return false;
		}

		aFazer="PesquisaPesqueiros";
		var sid = document.frmId.sid.value;

		xmlHttp = CriaXmlHttp();

		if (xmlHttp==null)
		{
		  alert ("O seu browser não suporta AJAX!");
		  return;
		} 		
		var distritoPesq = frm.distrito.options[frm.distrito.selectedIndex].value;
		var concelhoPesq = frm.concelho.options[frm.concelho.selectedIndex].value;
		var tipoPesqueiroPesq = frm.tipoPesqueiro.options[frm.tipoPesqueiro.selectedIndex].value;
		var tiposPescaIDPesca = frm.tiposPescaID.options[frm.tiposPescaID.selectedIndex].value;
		var url="pesquisa.php?sid=" + sid + "&distrito=" + distritoPesq + "&concelho=" + concelhoPesq + "&tipoPesqueiro=" + tipoPesqueiroPesq + "&tiposPescaID=" + tiposPescaIDPesca;
		xmlHttp.onreadystatechange=pesquisaChanged;
		xmlHttp.open("GET",url,true);
		xmlHttp.send(null);
		return false;
	}
	function actualizaPesqueiros()
	{
		aFazer="ActualizaPesqueiros";
		var sid = document.frmId.sid.value;

		xmlHttp = CriaXmlHttp();

		if (xmlHttp==null)
		{
		  alert ("O seu browser não suporta AJAX!");
		  return;
		} 		
		var url="pesqueiros.php?sid=" + sid;
		xmlHttp.onreadystatechange=pesqueirosChanged;
		xmlHttp.open("GET",url,true);
		xmlHttp.send(null);
	}

	function pesqueiroAleatorio()
	{
		aFazer="pesqueiroAleatorio";
		var sid = document.frmId.sid.value;
		xmlHttpPes = CriaXmlHttp();
		if (xmlHttpPes==null)
		{
		  alert ("O seu browser não suporta AJAX!");
		  return;
		} 		
		var url="pesqAleatorio.php?sid=" + sid;
		xmlHttpPes.onreadystatechange=aleatorioChanged;
		xmlHttpPes.open("GET",url,true);
		xmlHttpPes.send(null);
	}
	function actualizaFavoritos()
	{
		aFazer="ActualizaFavoritos";
		var sid = document.frmId.sid.value;

		xmlHttp = CriaXmlHttp();

		if (xmlHttp==null)
		{
		  alert ("O seu browser não suporta AJAX!");
		  return;
		} 		
		var url="favoritos.php?sid=" + sid;
		xmlHttp.onreadystatechange=favoritosChanged;
		xmlHttp.open("GET",url,true);
		xmlHttp.send(null);
	}

	function mostraConcelho(codigo)
	{

		if(codigo==0)
		{
			document.getElementById("txtConcelho").innerHTML= "";
			return false;
		}

		xmlHttp=CriaXmlHttp()
		if (xmlHttp==null)
		{
		  alert ("O seu browser não suporta AJAX!");
		  return;
	   } 
	   var url="getConcelho.php?codigo="+codigo;
	
		xmlHttp.onreadystatechange=distritoChanged;
		xmlHttp.open("GET",url,true);
		xmlHttp.send(null);
	}


	function CriaXmlHttp()
	{
		var xmlHttp=null;
		try
		{
			xmlHttp = new XMLHttpRequest();
		}
		catch (e)
		{
			try
			{
				xmlHttp=new ActiveXObject("Msxml2.xmlHttp");
			}
			catch (e)
			{
				xmlHttp=new ActiveXObject("Microsoft.xmlHttp");
			}
		}
		return xmlHttp;
	}

	function distritoChanged() 
	{ 
		if (xmlHttp.readyState==1)
		{ 
			document.getElementById("txtConcelho").innerHTML= "<b>A ler concelhos... Aguarde...</b>";
		}

		if (xmlHttp.readyState==4)
		{ 
			if (xmlHttp.status==200)
			{
				try
				{
					document.getElementById("txtConcelho").innerHTML= xmlHttp.responseText;				
				}
				catch(e)
				{
					document.getElementById("txtConcelho").innerHTML= "<b>Erro a ler dados..." + e + "</b>";
				}		
			}		
		}
	}

	function loginChanged() 
	{ 
		if (xmlHttp.readyState==1)
		{ 
			document.getElementById("txtDados").innerHTML= "<b>A ler dados... Aguarde...</b>";
		}

		if (xmlHttp.readyState==4)
		{ 
			if (xmlHttp.status!=200)
			{
				try
				{
					document.getElementById("txtDados").innerHTML= "Erro comunicar com o servidor...";				
				}
				catch(e)
				{
				}		
			}		
			if (xmlHttp.status==200)
			{
				try
				{
						document.getElementById("txtDados").innerHTML= xmlHttp.responseText;				
						if(xmlHttp.responseText.indexOf("Bem vindo(a) ")==0)
						{
							fezLogin = true;
							actualizaPesqueiros();
							pesqueiroAleatorio();
						}

				}
				catch(e)
				{
					alert("Erro comunicar com o servidor... " + e.description);
				}		
			}		
		}
	}

	function pesqueirosChanged() 
	{ 
		if (xmlHttp.readyState==1)
		{ 
				document.getElementById("txtPesqueiros").innerHTML= "<b>A ler dados... Aguarde...</b>";
		}

		if (xmlHttp.readyState==4)
		{ 
			if (xmlHttp.status!=200)
			{
				try
				{
						document.getElementById("txtPesqueiros").innerHTML= "Erro comunicar com o servidor...";				
				}
				catch(e)
				{
				}		
			}		
			if (xmlHttp.status==200)
			{
				try
				{

					meusPesqueiros  = eval('(' + xmlHttp.responseText + ')');
					
					var txt=""				
					var totMPesc = meusPesqueiros.numero;

					if(totMPesc>0)					
					{				
						
						var icn = new GIcon();
						icn.image="ic_user.png";
						icn.shadow="shdw.png";
						icn.iconSize= new GSize(29,35);
						icn.shadowSize= new GSize(42,35);
						icn.iconAnchor= new GPoint(15,34);
						icn.infoWindowAnchor= new GPoint(14,2);
						icn.infoShadowAnchor= new GPoint(14,2);


						for(f=0; f<totMPesc; f++)
						{
							
							txt += meusPesqueiros.pesqueiros[f].nome + " - [ <a href=\"javascript:veMeuPesq("+f+")\" class=\"textoJanela\">Ver</a> ] ; [ <a href=\"javascript:editMeuPesq("+f+")\" class=\"textoJanela\">Editar</a> ]";
							if(meusPesqueiros.pesqueiros[f].activo==0)
							{
								txt += " <img src=\"images/naoActivo.png\" alt=\"Ainda não foi activado por um moderador\" align=\"absmiddle\"/>";
							}
							if(meusPesqueiros.pesqueiros[f].activo==1)
							{
								txt += " <img src=\"images/activo.png\" alt=\"Já foi activado por um moderador\" align=\"absmiddle\"/>";
							}
							txt += "<br/>";

							//imagem
							var imgMeuPesq = "nfoto.gif"
							if(meusPesqueiros.pesqueiros[f].imagemP.length>3) imgMeuPesq = meusPesqueiros.pesqueiros[f].imagemP;

							//activo
							var activMeuPesq = "Está activo..."
							if(meusPesqueiros.pesqueiros[f].activo==0)  activMeuPesq = "Ainda não está activo...";


							meuTextoArray = [ 
								new GInfoWindowTab("Geral","<div class=\"textoGeo\"><center class=\"textoGeoTit\">" + meusPesqueiros.pesqueiros[f].nome + "</center><br/>Dono do Pesqueiro: <b><a href=\"../contactar.php?nick="+meusPesqueiros.pesqueiros[f].dono+"\" target=\"_blank\" title=\"Contactar dono do pesqueiro...\">"+meusPesqueiros.pesqueiros[f].dono+"</a></b><br/>Tipo de pesca: <b>"+arrTipoPesqueiro[meusPesqueiros.pesqueiros[f].tipoPesqueiro]+"</b><br/>Método de pesca: <b>"+arrtiposPesca[meusPesqueiros.pesqueiros[f].tiposPescaID]+"</b><br/>Espécies: <b>"+meusPesqueiros.pesqueiros[f].especies+"</b><br><br/>Activo: <b>"+activMeuPesq+"</b></div>"),
								new GInfoWindowTab("Local","<div class=\"textoGeo\"><center class=\"textoGeoTit\">" + meusPesqueiros.pesqueiros[f].nome + "</center><br/>Distrito: <b>"+meusPesqueiros.pesqueiros[f].distrito+"</b><br/>Concelho: <b>"+meusPesqueiros.pesqueiros[f].concelho+"</b><br/>Latitude: <b>"+meusPesqueiros.pesqueiros[f].latitude+"</b><br/>Longitude: <b>"+meusPesqueiros.pesqueiros[f].longitude+"</b></div>"),
								new GInfoWindowTab("Obs.","<div class=\"textoGeo\"><center class=\"textoGeoTit\">" + meusPesqueiros.pesqueiros[f].nome + "</center><br/>"+meusPesqueiros.pesqueiros[f].observacoes+"</div>"),
								new GInfoWindowTab("Foto","<div class=\"textoGeo\"><center class=\"textoGeoTit\">" + meusPesqueiros.pesqueiros[f].nome + "<br/><img src=\"mmedia/"+imgMeuPesq+"\" alt=\"" + meusPesqueiros.pesqueiros[f].nome + "\"><br/><img src=\"mmedia/sp.gif\" width=\"350\" height=\"1\"></center></div>")
							];

							addMarker(meusPesqueiros.pesqueiros[f].latitude, meusPesqueiros.pesqueiros[f].longitude, meusPesqueiros.pesqueiros[f].nome,meuTextoArray, icn);
						}			

					}
					else
					{
						txt += "Ainda não adicionou pesqueiros.<br/>";
					}
					

					txt += "<br/>Apenas pode consultar o mesmo número de pesqueiros que adicionou. Por exemplo, se adicionou 5 pesqueiros pode consultar em cada pedido 5 pesqueiros adicionados por outros utilizadores.<br/><br/>Para os utilizadores do site pró existe um bónus de 10 pesqueiros (desde que tenha adicionado 5 ou mais pesqueiros), por exemplo, se adicionou 5 pesqueiros e tem validade na sua conta do site pró, pode consultar 15 pesqueiros de cada vez.<br/><br/>[ <a href=\"javascript:addMeuPesq()\" class=\"textoJanela\">Adicione mais pesqueiros</a> ]";

					document.getElementById("txtPesqueiros").innerHTML = txt;					

					actualizaFavoritos();
				}
				catch(e)
				{
					alert("Erro comunicar com o servidor... " + e.description);
				}
			}		
		}
	}


	function pesquisaChanged() 
	{ 
		if (xmlHttp.readyState==1)
		{ 
				//document.getElementById("txtPesqueiros").innerHTML= "<b>A ler dados... Aguarde...</b>";
		}

		if (xmlHttp.readyState==4)
		{ 
			if (xmlHttp.status!=200)
			{
				try
				{
						//document.getElementById("txtPesqueiros").innerHTML= "Erro comunicar com o servidor...";				
				}
				catch(e)
				{
				}		
			}		
			if (xmlHttp.status==200)
			{
				try
				{
								
					map.clearOverlays();				

					pesPesqueiros  = eval('(' + xmlHttp.responseText + ')');
					
					var txt=""				
					var totMPesc = parseInt(pesPesqueiros.limite);

					if(totMPesc>0)					
					{				
						
						alert("Número de pesqueiros na pesquisa: " + pesPesqueiros.numero + "\n\nNúmero de pesqueiros que pode ver: " + totMPesc+"\n\nPara aumentar o número de pesqueiros que pode ver,\ndeve adicionar mais pesqueiros!");

						var icn = new GIcon();
						icn.image="ic_pes.png";
						icn.shadow="shdw.png";
						icn.iconSize= new GSize(29,35);
						icn.shadowSize= new GSize(42,35);
						icn.iconAnchor= new GPoint(15,34);
						icn.infoWindowAnchor= new GPoint(14,2);
						icn.infoShadowAnchor= new GPoint(14,2);


						if(totMPesc>parseInt(pesPesqueiros.numero))
						{
							totMPesc =  parseInt(pesPesqueiros.numero);
						}

						if(totMPesc>0)					
						{
							for(f=0; f<totMPesc; f++)
							{
								

								var imgMeuPesq = "nfoto.gif"
								if(pesPesqueiros.pesqueiros[f].imagemP.length>3) imgMeuPesq = pesPesqueiros.pesqueiros[f].imagemP;


								meuTextoArray = [ 
									new GInfoWindowTab("Geral","<div class=\"textoGeo\"><center class=\"textoGeoTit\">" + pesPesqueiros.pesqueiros[f].nome + "</center><br/>Dono do Pesqueiro: <b><a href=\"../contactar.php?nick="+pesPesqueiros.pesqueiros[f].dono+"\" target=\"_blank\" title=\"Contactar dono do pesqueiro...\">"+pesPesqueiros.pesqueiros[f].dono+"</a></b><br/>Tipo de pesca: <b>"+arrTipoPesqueiro[pesPesqueiros.pesqueiros[f].tipoPesqueiro]+"</b><br/>Método de pesca: <b>"+arrtiposPesca[pesPesqueiros.pesqueiros[f].tiposPescaID]+"</b><br/>Espécies: <b>"+pesPesqueiros.pesqueiros[f].especies+"</b><br/><br/>[ <a href=\"javascript:addFavPesq("+f+")\" class=\"textoGeo\">Adicionar aos Favoritos</a> ]</div>"),
									new GInfoWindowTab("Local","<div class=\"textoGeo\"><center class=\"textoGeoTit\">" + pesPesqueiros.pesqueiros[f].nome + "</center><br/>Distrito: <b>"+pesPesqueiros.pesqueiros[f].distrito+"</b><br/>Concelho: <b>"+pesPesqueiros.pesqueiros[f].concelho+"</b><br/>Latitude: <b>"+pesPesqueiros.pesqueiros[f].latitude+"</b><br/>Longitude: <b>"+pesPesqueiros.pesqueiros[f].longitude+"</b></div>"),
									new GInfoWindowTab("Obs.","<div class=\"textoGeo\"><center class=\"textoGeoTit\">" + pesPesqueiros.pesqueiros[f].nome + "</center><br/>"+pesPesqueiros.pesqueiros[f].observacoes+"</div>"),
									new GInfoWindowTab("Foto","<div class=\"textoGeo\"><center class=\"textoGeoTit\">" + pesPesqueiros.pesqueiros[f].nome + "<br/><img src=\"mmedia/"+imgMeuPesq+"\" alt=\"" + pesPesqueiros.pesqueiros[f].nome + "\"><br/><img src=\"mmedia/sp.gif\" width=\"350\" height=\"1\"></center></div>")
								];

								addMarker(pesPesqueiros.pesqueiros[f].latitude, pesPesqueiros.pesqueiros[f].longitude, pesPesqueiros.pesqueiros[f].nome,meuTextoArray, icn);
							}						
							map.setCenter(new GLatLng(pesPesqueiros.pesqueiros[0].latitude,pesPesqueiros.pesqueiros[0].longitude), 10);
						}
					}
					else
					{
						window.alert("A pesquisa não retornou resultados!");
						//txt += "A pesquisa não retornou pesqueiros.<br/>";
					}
					

					//txt += "<br/>Apenas pode consultar o mesmo número de pesqueiros que adicionou. Por exemplo, se adicionou 5 pesqueiros pode consultar em cada pedido 5 pesqueiros adicionados por outros utilizadores.<br/><br/>Para os utilizadores do site pró existe um bónus de 10 pesqueiros (desde que tenha adicionado 5 ou mais pesqueiros), por exemplo, se adicionou 5 pesqueiros e tem validade na sua conta do site pró, pode consultar 15 pesqueiros de cada vez.<br/><br/>[ <a href=\"javascript:addMeuPesq()\" class=\"textoJanela\">Adicione mais pesqueiros</a> ]";

					//document.getElementById("txtPesqueiros").innerHTML = txt;					

					actualizaPesqueiros();
				}
				catch(e)
				{
					alert("Erro comunicar com o servidor... " + e.description);
				}
			}		
		}
	}

	function aleatorioChanged() 
	{ 
		if (xmlHttpPes.readyState==1)
		{ 
		}

		if (xmlHttpPes.readyState==4)
		{ 
			if (xmlHttpPes.status!=200)
			{
				try
				{
				}
				catch(e)
				{
				}		
			}		
			if (xmlHttpPes.status==200)
			{
				try
				{
								
					pesPesqueiros  = eval('(' + xmlHttpPes.responseText + ')');
					var icn = new GIcon();
					icn.image="ic_pes.png";
					icn.shadow="shdw.png";
					icn.iconSize= new GSize(29,35);
					icn.shadowSize= new GSize(42,35);
					icn.iconAnchor= new GPoint(15,34);
					icn.infoWindowAnchor= new GPoint(14,2);
					icn.infoShadowAnchor= new GPoint(14,2);

					//imagem
					var imgMeuPesq = "nfoto.gif"
					if(pesPesqueiros.pesqueiros[0].imagemP.length>3) imgMeuPesq = pesPesqueiros.pesqueiros[0].imagemP;					


					meuTextoArray = [ 
						new GInfoWindowTab("Geral","<div class=\"textoGeo\"><center class=\"textoGeoTit\">" + pesPesqueiros.pesqueiros[0].nome + "</center><br/>Dono do Pesqueiro: <b><a href=\"../contactar.php?nick="+pesPesqueiros.pesqueiros[0].dono+"\" target=\"_blank\" title=\"Contactar dono do pesqueiro...\">"+pesPesqueiros.pesqueiros[0].dono+"</a></b><br/>Tipo de pesca: <b>"+arrTipoPesqueiro[pesPesqueiros.pesqueiros[0].tipoPesqueiro]+"</b><br/>Método de pesca: <b>"+arrtiposPesca[pesPesqueiros.pesqueiros[0].tiposPescaID]+"</b><br/>Espécies: <b>"+pesPesqueiros.pesqueiros[0].especies+"</b><br/><br/>[ <a href=\"javascript:addFavPesq(0)\" class=\"textoGeo\">Adicionar aos Favoritos</a> ]</div>"),
								new GInfoWindowTab("Local","<div class=\"textoGeo\"><center class=\"textoGeoTit\">" + pesPesqueiros.pesqueiros[0].nome + "</center><br/>Distrito: <b>"+pesPesqueiros.pesqueiros[0].distrito+"</b><br/>Concelho: <b>"+pesPesqueiros.pesqueiros[0].concelho+"</b><br/>Latitude: <b>"+pesPesqueiros.pesqueiros[0].latitude+"</b><br/>Longitude: <b>"+pesPesqueiros.pesqueiros[0].longitude+"</b></div>"),
								new GInfoWindowTab("Obs.","<div class=\"textoGeo\"><center class=\"textoGeoTit\">" + pesPesqueiros.pesqueiros[0].nome + "</center><br/>"+pesPesqueiros.pesqueiros[0].observacoes+"</div>"),
								new GInfoWindowTab("Foto","<div class=\"textoGeo\"><center class=\"textoGeoTit\">" + pesPesqueiros.pesqueiros[0].nome + "<br/><img src=\"mmedia/"+imgMeuPesq+"\" alt=\"" + pesPesqueiros.pesqueiros[0].nome + "\"><br/><img src=\"mmedia/sp.gif\" width=\"350\" height=\"1\"></center></div>")
							];

					addMarker(pesPesqueiros.pesqueiros[0].latitude, pesPesqueiros.pesqueiros[0].longitude, pesPesqueiros.pesqueiros[0].nome,meuTextoArray, icn);

					map.setCenter(new GLatLng(pesPesqueiros.pesqueiros[0].latitude,pesPesqueiros.pesqueiros[0].longitude), 10);
					
				}
				catch(e)
				{
					alert("Erro comunicar com o servidor... " + e.description);
				}
			}		
		}
	}

	function favoritosChanged() 
	{ 
		if (xmlHttp.readyState==1)
		{ 
				document.getElementById("txtFavoritos").innerHTML= "<b>A ler dados... Aguarde...</b>";
		}

		if (xmlHttp.readyState==4)
		{ 
			if (xmlHttp.status!=200)
			{
				try
				{
						document.getElementById("txtFavoritos").innerHTML= "Erro comunicar com o servidor...";				
				}
				catch(e)
				{
				}		
			}		
			if (xmlHttp.status==200)
			{
				try
				{

					favPesqueiros  = eval('(' + xmlHttp.responseText + ')');
					
					var txt=""				
					var totMPesc = favPesqueiros.totalFav;

					if(totMPesc>0)					
					{				
						

						var icn = new GIcon();
						icn.image="ic_fav.png";
						icn.shadow="shdw.png";
						icn.iconSize= new GSize(29,35);
						icn.shadowSize= new GSize(42,35);
						icn.iconAnchor= new GPoint(15,34);
						icn.infoWindowAnchor= new GPoint(14,2);
						icn.infoShadowAnchor= new GPoint(14,2);

						if (totMPesc>=favPesqueiros.totalCaixa)
						{
							totalFav=favPesqueiros.totalCaixa;
						}
						for(f=0; f<totMPesc; f++)
						{
							
							txt += favPesqueiros.pesqueiros[f].nome + " - [ <a href=\"javascript:veFavPesq("+f+")\" class=\"textoJanela\">Ver</a> ]";
							txt += " <img src=\"images/favorito.png\" alt=\"Pesqueior Favorito\" align=\"absmiddle\"/>";
							txt += "<br/>";

							//imagem
							var imgMeuPesq = "nfoto.gif"
							if(favPesqueiros.pesqueiros[f].imagemP.length>3) imgMeuPesq = favPesqueiros.pesqueiros[f].imagemP;

							
							meuTextoArray = [ 
								new GInfoWindowTab("Geral","<div class=\"textoGeo\"><center class=\"textoGeoTit\">" + favPesqueiros.pesqueiros[f].nome + "</center><br/>Dono do Pesqueiro: <b><a href=\"../contactar.php?nick="+favPesqueiros.pesqueiros[f].dono+"\" target=\"_blank\" title=\"Contactar dono do pesqueiro...\">"+favPesqueiros.pesqueiros[f].dono+"</a></b><br/>Tipo de pesca: <b>"+arrTipoPesqueiro[favPesqueiros.pesqueiros[f].tipoPesqueiro]+"</b><br/>Método de pesca: <b>"+arrtiposPesca[favPesqueiros.pesqueiros[f].tiposPescaID]+"</b><br/>Espécies: <b>"+favPesqueiros.pesqueiros[f].especies+"</b></div>"),
								new GInfoWindowTab("Local","<div class=\"textoGeo\"><center class=\"textoGeoTit\">" + favPesqueiros.pesqueiros[f].nome + "</center><br/>Distrito: <b>"+favPesqueiros.pesqueiros[f].distrito+"</b><br/>Concelho: <b>"+favPesqueiros.pesqueiros[f].concelho+"</b><br/>Latitude: <b>"+favPesqueiros.pesqueiros[f].latitude+"</b><br/>Longitude: <b>"+favPesqueiros.pesqueiros[f].longitude+"</b></div>"),
								new GInfoWindowTab("Obs.","<div class=\"textoGeo\"><center class=\"textoGeoTit\">" + favPesqueiros.pesqueiros[f].nome + "</center><br/>"+favPesqueiros.pesqueiros[f].observacoes+"</div>"),
								new GInfoWindowTab("Foto","<div class=\"textoGeo\"><center class=\"textoGeoTit\">" + favPesqueiros.pesqueiros[f].nome + "<br/><img src=\"mmedia/"+imgMeuPesq+"\" alt=\"" + favPesqueiros.pesqueiros[f].nome + "\"><br/><img src=\"mmedia/sp.gif\" width=\"350\" height=\"1\"></center></div>")
							];

							addMarker(favPesqueiros.pesqueiros[f].latitude, favPesqueiros.pesqueiros[f].longitude, favPesqueiros.pesqueiros[f].nome,meuTextoArray, icn);
						}			

					}
					else
					{
						txt += "Ainda não adicionou pesqueiros.<br/>";
					}
					

					txt += "<br/>Apenas pode ter nos favoritos o mesmo número de pesqueiros que adicionou. Por exemplo, se adicionou 5 pesqueiros pode ter nos favoritos 5 pesqueiros adicionados por outros utilizadores.<br/><br/>Para os utilizadores do site pró existe um bónus de 10 pesqueiros (desde que tenha adicionado 5 ou mais pesqueiros), por exemplo, se adicionou 5 pesqueiros e tem validade na sua conta do site pró, pode ter 15 pesqueiros nos favoritos.<br/><br/>Ocupação da sua caixa de favoritos: "+favPesqueiros.totalFav+" / "+favPesqueiros.totalCaixa+" <br/><br/>[ <a href=\"javascript:addMeuPesq()\" class=\"textoJanela\">Adicione mais pesqueiros</a> ]";

					document.getElementById("txtFavoritos").innerHTML = txt;					
					
				}
				catch(e)
				{
					alert("Erro comunicar com o servidor... " + e.description);
				}
			}		
		}
	}



	function veMeuPesq(indice)
	{
		map.setCenter(new GLatLng(meusPesqueiros.pesqueiros[indice].latitude,meusPesqueiros.pesqueiros[indice].longitude), 15);
	}
	function veFavPesq(indice)
	{
		map.setCenter(new GLatLng(favPesqueiros.pesqueiros[indice].latitude,favPesqueiros.pesqueiros[indice].longitude), 15);
	}

	function editMeuPesq(indice)
	{
		window.open("editPesqueiro.php?id="+meusPesqueiros.pesqueiros[indice].id,"","width=700, height=500, scrollbars=yes")
	}

	function addFavPesq(indice)
	{
		window.open("addFav.php?id="+pesPesqueiros.pesqueiros[indice].id,"","width=700, height=500, scrollbars=yes")
	}


	function addMeuPesq()
	{
		window.open("adiPesqueiro.php","","width=700, height=500, scrollbars=yes")
	}

	function addMarker(lat, lon,tit,txt,icon)
	{
		var marker = new GMarker(new GLatLng(lat,lon), icon);
		GEvent.addListener(marker, "click",
			function()
			{
				marker.openInfoWindowTabsHtml(txt,{maxWidth:350});
			}
		);
		GEvent.addListener(marker,'mouseover',function() {
			marker.openToolTip(tit);
		});
 
		GEvent.addListener(marker,'mouseout',function() {
			marker.closeToolTip();
		});


		map.addOverlay(marker);	
	}

function ToolTip(marker,html,width) 
{
	this.html_ = html;
	this.width_ = (width ? width + 'px' : 'auto');
	this.marker_ = marker;
}
 
//ToolTip.prototype = new GOverlay();
 
ToolTip.prototype.initialize = function(map) 
{
	var div = document.createElement("div");
	div.style.display = 'none';
	map.getPane(G_MAP_FLOAT_PANE).appendChild(div);
	this.map_ = map;
	this.container_ = div;
}
 
ToolTip.prototype.remove = function() 
{
	this.container_.parentNode.removeChild(this.container_);
}
 
ToolTip.prototype.copy = function() 
{
	return new ToolTip(this.html_);
}
 
ToolTip.prototype.redraw = function(force) 
{
	if (!force) return;
	 
	var pixelLocation = this.map_.fromLatLngToDivPixel(this.marker_.getPoint());
	this.container_.innerHTML = this.html_;
	this.container_.style.position = 'absolute';
	this.container_.style.left = pixelLocation.x + "px";
	this.container_.style.top = pixelLocation.y + "px";
	this.container_.style.width = this.width_;
	this.container_.style.font = 'bold 9px/9px verdana, arial, sans';
	this.container_.style.border = '1px solid black';
	this.container_.style.background = '#FCFCFF';
	this.container_.style.padding = '4px';
	this.container_.style.whiteSpace = 'nowrap';
	if(this.width_ != 'auto') this.container_.style.overflow = 'hidden';
	this.container_.style.display = 'block';
}
 
GMarker.prototype.ToolTipInstance = null;
 
GMarker.prototype.openToolTip = function(content) 
{
	if(this.ToolTipInstance == null) 
	{
		this.ToolTipInstance = new ToolTip(this,content)
		map.addOverlay(this.ToolTipInstance);
	}
}
GMarker.prototype.closeToolTip = function() 
{
	if(this.ToolTipInstance != null) 
	{
		map.removeOverlay(this.ToolTipInstance);
		this.ToolTipInstance = null;
	}
}
