/*! 
	\file app.js
	\brief Integra a biblioteca de funções de apoio à execução da camada cliente,
		   responsável pela interação entre usuário e interface, introduzindo
           dinamismo ao documento e reduzindo a quantidade de requisições ao
           servidor de aplicação na medida em que realiza tarefas de validação de entradas e
           requisições em segundo plano, assim como alterações na estrutura e na forma do documento HTML DOM
           da camada de apresentação.

     Author:  André Carvalho
     Data : 05/12/2006

     Alteração: André Carvalho
     Data : 11/09/2007
     
     Comentários: André Carvalho
     Data: 04/10/2007
*/
/*! Definição do tipo de cursor apresentado, altera a aparência do ponteiro do mouse. */
var cursorType = "default";
/*! Ponto do mouse na área de imagem do mapa. */
var mouseX,mouseY;
/*! Atributos de controle para permitir que opção selecionada em barra de ferramentas seja mantida */
var opSelected = "";
var oldOpSelected = "";
var boolIsNewSelect = false;
/*! Atributo de controle da seqüência de assistentes (navegação entre janelas) */
var navegacao = "";
/*! Referência à um frame filho */
var frameChildWindow = null;
/*! Referência ao frame canvas */
var frameCanvasReference = null;
/*! Controle de aberto fechado para o mapa resumo */
var controleEyeBird = "on";
/*! Controle de menu selecionado */
var currentMenu="menu5";
/*! Controle de desenho de texto sobre o mapa void=desenha, OK=limpa desenho de texto */
var clearTextMap = "OK";
/*! Marcador de estado de requisição de informações tolltip para imageMap. */
var boolImageMap = false;
/*! Referência ao frame que exibe a árvore de planos. */
var iframeLayers;
/*! Atributo que armazena a vista corrente selecionada na árvore. */
var vista = "";
/*! Atributo que armazena a lista de temas visiveis selecionados na árvore. */
var listaTemas = "";
/*! Atributo que armazena o tema corrente selecionado na árvore. */
var tema = "";
/*! Lista de arquivos temporários gerados por operações de exportação de mapas ou relatórios. */
var listFiles="";
/*! Objeto que identifica o navegador usado pela sessão cliente. */
var bw = new checkBrowser();
/*! Longitude de referência para o ponto de contrato, para exibir no GoogleMap. */
var strPointLongG = "";
/*! Latitude de referência para o ponto de contrato, para exibir no GoogleMap. */
var strPointLatG = "";
/*! Texto informativo para o ponto de contrato, para exibir no GoogleMap. */
var strInfoPointG = "";
/*! \htmlonly */
/*! Se o navegador usado suporta criação de objeto na estrutura do documento, DOM, cria.  */
if(bw.bw) {
	document.write('<div id="divLoadCont" style="position:absolute; top:154px; width:200px; right:20px; z-index:1000; visibility:visible;">Carregando mapa... <img src="../../img/loadMap.gif" style="margin:0 0 -12px 10px;" /></div>');
	document.write('<div id="divLoadCont1" style="position:absolute; top:'+ ycentral +'; left:'+ xcentral +'; width:120px; height:20px; z-index:1000; visibility:visible; text-color:#000000; FONT-WEIGHT: bold; FONT:12px Arial; margin:-40px 0 0 -50px;"></div>');
	document.write('<div id="infoTolTip" style="position:absolute; width:300px; height:200px; top:10px; left:10px; z-index:1000; visibility:hidden;"></div>');
}
/*! Define o nome da janela. */
window.name = "frmMapa";
/*! Configura janela para não apresentar srollbar. */
window.scrollbars="no";
/*! \endhtmlonly */
/*!
	\brief Recupera a referência a um frame da aplicação, identificado pelo parâmetro iframe_name.
	\param String iframe_name, nome para identificação de um objeto frame.
	\return Object, referência ao objeto frame encontrado para a referência indicada em iframe_name.
	\public
*/
function getFrame(iframe_name) {
	if (navigator.appName == "Microsoft Internet Explorer") {
		if (window.frames != null) {
			for (var i = 0 ; i < window.frames.length; i++)
				if (window.frames(i).name == iframe_name) {
					return window.frames(i);
				}
		}
	}
	else if (navigator.appName == "Netscape") {
		if (window.frames[iframe_name] != null) {
			return window.frames[iframe_name];
		}
	}
}
/*!
	\brief Atualiza a referência para um frame filho, é acionada pelo frame filho.
	\param Object objWindow, referência a um objeto frame.
	\return void.
	\public
*/
function setReferenciaFrame(objWindow) {
	frameChildWindow = objWindow;
}
/*!
	\brief Atualiza a referência para o frame filho que abria o mapa, é acionada pelo frame filho.
	\param Object objWindow, referência a um objeto frame.
	\return void.
	\public
*/
function setFrameCanvasReference(objWindow) {
	frameCanvasReference = objWindow;
}
/*!
	\brief Repassa o fluxo de execução da função loadBox, para o frame que abriga o mapa.
	\param void.
	\return void.
	\public
*/
function loadBox() {
	return getFrame("ifrmMapa").loadBox();
}
/*!
	\brief Exibe os elementos visuais que indicam processo de carragemento do mapa em execução.
	Atualiza o foco na janela do Google, se está existe.
	\param void.
	\return void.
	\public
*/
function showCarregando() {
	if(bw.bw){
		div="divLoadCont";
		obj=bw.dom?document.getElementById(div).style:bw.ie4?document.all[div].style:bw.ns4?document[div]:0;
		obj.visibility='visible';
		div="divLoadCont1";
		obj=bw.dom?document.getElementById(div).style:bw.ie4?document.all[div].style:bw.ns4?document[div]:0;
		obj.visibility='visible';
	}
	if (googleWindow) {
		googleWindow.focus();
	}
}
/*!
	\brief Abrir nova janela do navegador para exibir interface secundária.
	\param String pagina, URL de acesso ao recurso solicitado.
	\param String nome, nome da nova janela.
	\param Integer largura, largura da janela a ser aberta.
	\param Integer altura, altura da janela a ser aberta.
	\return void.
	\public
*/
function AbrirJanela(pagina, nome, largura, altura) {
	window.open(pagina, nome, "location=no,width="+largura+",scrollbars=1,resizable=yes,height="+altura+"");
}
/*!
	\brief Função usada para solicitar um recurso a uma URL passada como parâmetro.    
	\param String url, endereço de requisição.
	\return void.
	\public
*/
function submeter(url){
	document.general.action=url;
	document.general.target="_self";
	document.general.method=(url=="index.php")?("GET"):("POST");
	document.general.submit();
}
/*!
	\brief Intermedia o processamento de requisição de atualização do mapa.
	Chamada após manipulação de contexto.
	\param String url_, endereço de requisição.
	\return void.
	\public
*/
function submeter_(url_) {
	showCarregando();
	// chama execSubmeter logo após repassar valores de vista e temas ao servidor.
	setNewViewAndThemes(url_);
}
/*!
	\brief Executa requisição ao recurso "mapa.php", através do iframe de apresentação do mapa,
	para atualizar o mapa de acordo com o contexto corrente.
	\param String url, endereço de requisição.
	\return void.
	\public
*/
function execSubmeter(url) {
	if (url==""){ // não atualiza o mapa se url_ == ""
		return;
	}
	if (navigator.appName == "Microsoft Internet Explorer") {
		if (window.frames != null) {
			for (i = 0 ; i < window.frames.length; i++)
				if (window.frames(i).name == "ifrmMapa") {
					if (!window.frames(i).ifrmGeneral) {
						window.frames(i).src = "mapa.php";
					}else {
						window.frames(i).ifrmGeneral.action=url;
						window.frames(i).ifrmGeneral.target="_self";
						window.frames(i).ifrmGeneral.method="POST";
						window.frames(i).ifrmGeneral.submit();
					}
				}
		}
	}
	else if (navigator.appName == "Netscape") {
		if (window.frames["ifrmMapa"] != null) {
			if (!window.frames["ifrmMapa"].document.ifrmGeneral){
				window.frames["ifrmMapa"].src = "mapa.php";
			}else{
				window.frames["ifrmMapa"].document.ifrmGeneral.action=url;
				window.frames["ifrmMapa"].document.ifrmGeneral.target="_self";
				window.frames["ifrmMapa"].document.ifrmGeneral.method="POST";
				window.frames["ifrmMapa"].document.ifrmGeneral.submit();
			}
		}
	}
}
/*!
	\brief Altera o modo de ação do cursor.
	\param Int id, valor de identificação do novo cursor.
	Identificador das ferramentas, valores assumidos por cursormode:
		0 => zoom por seleção de área.
		1 => localiza objetos por apontamento, e exibe informações sobre este objeto.
		2 => medida de distância entre dois pontos.
		3 => zoom de aproximação.
		4 => zoom de distanciação.
		5 => visualização de dica de contexto por apontamento, rótulo dinâmico.
		6 => não usado.
		7 => localiza município por apontamento, e exibe informações de contratos deste.
		8 => arrastar o mapa, pan.
		9 a 14 => não usado.
		15 => seleção de objetos por área, desabilitado.
	\return void.
	\public
*/
function AlterCursorMode(id) {
	if (id==5 && !boolImageMap){
		alert("Esta ferramenta não pode ser utilizada, pois o servidor ainda não respondeu.");
		return false;
	}
	if (id == 8) cursorType = "move";         
	else if (id == 0) cursorType = "crosshair";
	else cursorType = "default";
	// controle de visualização do tol tip
	if (frameCanvasReference) {
		if (id == 5) frameCanvasReference.setImageMapVisibility(true);
		else  frameCanvasReference.setImageMapVisibility(false);
	}
	cursormode = id;
	document.getElementById('inputcursor').value = cursormode;
	
	if (navigator.appName == "Microsoft Internet Explorer") {
		if (window.frames != null) {
			for (i = 0 ; i < window.frames.length; i++)
				if (window.frames(i).name == "ifrmMapa") {
					window.frames(i).ifrmGeneral.cursor.value = cursormode;
					window.frames(i).upDateEvent(id);
					window.frames(i).document.getElementById("imagemCanvas").style.cursor = cursorType;
					window.frames(i).document.getElementById("imagemW").style.cursor = cursorType;
				}
		}
	}
	else if (navigator.appName == "Netscape") {
		if (window.frames["ifrmMapa"] != null) {
			window.frames["ifrmMapa"].document.ifrmGeneral.cursor.value = cursormode;
			window.frames["ifrmMapa"].upDateEvent(id);
			window.frames["ifrmMapa"].document.getElementById("imagemCanvas").style.cursor = cursorType;
			window.frames["ifrmMapa"].document.getElementById("imagemW").style.cursor = cursorType;
		}
	}
}
/*!
	\brief Exibe a legenda no painel de informações do lado direito do mapa.
	\param void.
	\return void.
	\public
*/
function showLegenda(){
	// Tirar seleção, por troca de cor, de todos os nomes de links da barra de opções de ferramentas especiais.
	getTagByContent("font", "acesso").color = "#578d50";
	getTagByContent("font", "planos").color = "#578d50";
	getTagByContent("font", "sair").color = "#578d50";
	// selecionar apenas este elemento
	getTagByContent("font", "legenda").color = "#578d50";
	setOpcao("legenda");
	document.getElementById("layer_eye_login").innerHTML ="<IFRAME style='Z-INDEX:1;' src='legenda.php' frameBorder='0' scrolling='no' width='235' height='380'></IFRAME>";//scrolling='yes' 
	//document.getElementById("layer_eye_login").innerHTML ="<IFRAME style='Z-INDEX:1;' src='legenda.php' frameBorder='0' width="+width_panel_leg+" height="+(tamy * 0.97)+"></IFRAME>";//scrolling='yes' 
}
/*!
	\brief Encerra a autenticação da sessão corrente.
	\param void.
	\return void.
	\public
*/
function logout() {
	if (confirm("Deseja encerrar uso com usuário autenticado?")) {
		request = createXMLHttp();
		request.open("GET", "logout.php", true);
		request.setRequestHeader("Content-Type", "text/html; charset=iso-8859-1");
		request.onreadystatechange=function() {
			if (request.readyState==4) {
				resp = request.responseText;
				if (request.status == 200) {
					if (resp == "OK") {
						document.getElementById("divShowLogin").style.display = "inline";
						document.getElementById("divShowLogout").style.display = "none";
						showLogin();
						// limpa valores de acesso a registro de acesso.
						permiteAcesso = false;
						idUs_  = "";
						idFun_ = "";
					}
				}else if (request.status == 401) {
					alert("Falha na requisição "+request.statusText);
				}else {
					alert("There was a problem retrieving the XML data:\n" +request.statusText);
				}
			}
		}
		request.send("");
	}else {
		showLogin();
	}
}
/*!
	\brief Exibe interface de autenticação de usuário no painel de informações do lado direito do mapa.
	\param void.
	\return void.
	\public
*/
function showLogin(){
	getTagByContent("font", "planos").color = "#578d50";
	getTagByContent("font", "legenda").color = "#578d50";
	// selecionar apenas este elemento
	getTagByContent("font", "acesso").color = "#578d50";
	getTagByContent("font", "sair").color = "#578d50";
	setOpcao("acesso");
 	wi = width_panel_leg;
 	hi = tamy * 0.97;
 	document.getElementById("layer_eye_login").innerHTML ="<IFRAME style='Z-INDEX:1;' src='login.php' frameBorder='0' width='235' scrolling='no' height='380' align='center'></IFRAME>";
	//document.getElementById("layer_eye_login").innerHTML ="<IFRAME style='Z-INDEX:1;' src='login.php' frameBorder='0' width="+wi+" scrolling='no' height="+hi+" align='center'></IFRAME>";
}
/*!
	\brief Exibe interface, árvore, de planos disponíveis no painel de informações do lado direito do mapa.
	\param void.
	\return void.
	\public
*/
function showLayers(){
	// Tirar seleção, por troca de cor, de todos os nomes de links da barra de opções de ferramentas especiais.
	getTagByContent("font", "acesso").color = "#578d50";
	getTagByContent("font", "legenda").color = "#578d50";
	getTagByContent("font", "sair").color = "#578d50";
	// selecionar apenas este elemento
	getTagByContent("font", "planos").color = "#578d50";
	setOpcao("planos");
   document.getElementById("layer_eye_login").innerHTML ="<IFRAME src='frmMatrixLayers.php' id='iframeLayer' style='Z-INDEX:1;' frameBorder='0' scrolling='no' width='235' height='380' align='center'></IFRAME>";
	 //document.getElementById("layer_eye_login").innerHTML ="<IFRAME src='frmMatrixLayers.php' id='iframeLayer' style='Z-INDEX:1; background-color:#FFFFFF;' frameBorder='0' scrolling='auto' width="+(w_eye * 1.15)+" height="+(tamy * 0.95)+" align='center'></IFRAME>";
}
/*!
	\brief Inclui objeto "iframe" na estrutura do documento, DOM, com referência ao recurso "mapa.php".
	\param void.
	\return void.
	\public
*/
function showMapa(){
	//document.getElementById("imagemMapa").innerHTML ="<IFRAME style='Z-INDEX:1;' src='mapa.php' frameBorder='0' width='640' scrolling='no' height='736' align='right'></IFRAME>";
	document.getElementById("imagemMapa").innerHTML ="<IFRAME style='Z-INDEX:1;' src='mapa.php' frameBorder='0' width="+tamx+" height="+tamy+" scrolling='no' align='left'></IFRAME>";
}
/*!
	\brief Função que atualiza valor de controle para saber se mapa resumo está aberto ou fechado.
	\param String strOp, valor de controle, "on" ou "off".
	\return void.
	\public
*/
function setcontrolEyeBird(strOp) {
	controleEyeBird = strOp;
}
/*!
	\brief Função que acessa valor de controle para saber o estado do mapa resumo.
	\param void.
	\return String strOp, valor de controle "on" ou "off".
	\public
*/
function getcontrolEyeBird() {
	return controleEyeBird;
}
/*!
	\brief Atualiza controle de seleção de interfaces exibidas no painel de informações do lado direito do mapa.
	\param String op, nome do link de acionamento da interface exibida.
	\return void.
	\public
*/
function setOpcao(op) {
	if (oldOpSelected == "") {
		opSelected = op;
		oldOpSelected = opSelected;
	}else {
		boolIsNewSelect = (oldOpSelected != op);
		if (boolIsNewSelect) {
			oldOpSelected = opSelected;
			opSelected = op;
		}
	}
}
/*!
	\brief Permite saber se existe opção de interface de informação selecionada.
	\param void.
	\return Boolean, true se aba de informação foi definida pelo usuário e false caso contrário.
	\public
*/
function opcaoIsEmpty() {
	return (opSelected == "");
}
/*!
	\brief Atualiza a interface de informaçoes conforme seleção presente no contexto corrente,
	após uma atualização na área de mapa.
	\param void.
	\return void.
	\public
*/
function showSelectedOption() {
	switch (opSelected) {
		case "acesso":
		showLogin();
		break;
		case "planos":
		setOpcao("planos");
		break;
		case "legenda":
		showLegenda();
    	break;
    }
}
/*!
	\brief Atualiza estado de elementos de interface quanto à apresentação, e modo do cursor,
	além de permitir o acionamento automático de ferramenta de consulta textual, se criado o recurso de link automático.
	\param void.
	\return void.
	\public
*/
function hideImg() {
  if(bw.bw){
	   cursormode = document.getElementById('inputcursor').value;
	   
	   AlterCursorMode(cursormode);
	   
	   div="divLoadCont";
	   obj=bw.dom?document.getElementById(div).style:bw.ie4?document.all[div].style:bw.ns4?document[div]:0;
	   obj.visibility='hidden';
	   div="divLoadCont1";
	   obj=bw.dom?document.getElementById(div).style:bw.ie4?document.all[div].style:bw.ns4?document[div]:0;
	   obj.visibility='hidden';
	   
	   showSelectedOption();
	   // verificando se deve abrir algum link automático para uma consulta simples específica
	   div="linkAuto";
	   obj=bw.dom?document.getElementById(div):bw.ie4?document.all[div]:bw.ns4?document[div]:0;
	   if (obj.value!="void") {
	   	  AbrirJanela("frmConsultaPreDefinida.php?indiceConsulta="+obj.value, "Window", 800, 600);
	   	  obj.value="void";
	   }
  }
}
/*!
	\brief Finaliza carregamento de objetos de tela quando estrutura do sitio é carregada,
	respondendo ao evento de onload	gerado pela janela principal, "app.php".
	\param void.
	\return void.
	\public
*/
function hideIt() {
  if (!document.getElementById('inputcursor')) {
	submeter("index.php");
	return;
  }
  if(bw.bw){
	cursormode = document.getElementById('inputcursor').value;
	
	AlterCursorMode(cursormode);
	showMapa();
	vista = "";
	listaTemas = "";
	// inserindo html em div oculta de subjanela
	onLoad_();
	// inserindo em div janela de pesquisa WMS
	onLoadWMS();
   }
}
/*!
	\brief Atualiza a referência de controle de realce do ícone da ferrementa selecionada.
	\param String op, identificador de objeto de tela.
	\return void.
	\public
*/
function setCurrentSelectedMenu(op) {
	currentMenu = op;
}
/*!
	\brief Acesso ao controle de realce do ícone da ferrementa selecionada.
	\param void.
	\return String currentMenu, identificador de objeto de tela.
	\public
*/
function getCurrentSelectedMenu() {
	return currentMenu;
}
/*!
	\brief Altera a classe CSS que realça os ícones das ferrementas, respondendo aos eventos de
	mouse onmouseout e onmouseover.
	\param Object ref, referência ao objeto, ícone de ferramenta, que percebeu o evento de seleção.
	\return void.
	\public
*/
function swapClassNameInMenu(ref) {
	if (ref.className=="btMenu" && currentMenu!=ref.id){
		ref.className="btMenu_";
	}else if (ref.className=="btMenu_" && currentMenu!=ref.id){
		ref.className="btMenu";
	}
}
/*!
	\brief Altera a classe CSS que realça o ícone da ferrementa selecionada.
	\param Object ref, referência ao objeto, ícone de ferramenta, que percebeu o evento de seleção.
	\return void.
	\public
*/
function setClassName(ref) {
	setCurrentSelectedMenu(ref.id);
	clearAllMenus();
	ref.className="btMenu_";
}
/*!
	\brief Altera a classe CSS que realça os ícones das ferrementas aplicando a classe que retira realce de todos os 
	ícones do menu.
	\param void.
	\return void.
	\public
*/
function clearAllMenus() {
	if (frameCanvasReference) {
		for (i=1;i < 20;i++) {
			id_ = "menu"+i;
			menu_ = frameCanvasReference.document.getElementById(id_);
			if(menu_)
				menu_.className="btMenu";
		}
	}
}
/*!
	\brief Permite que frames filhos forneçam referência de si ao pai.
	\param Object obj, referência ao objeto frame presente na estrutura, HTML DOM, do documento.
	\return void.
	\public
*/
function setFrameLayers(obj) {
	iframeLayers = obj;
}
/*!
	\brief Recupera atributos selecionados em árvore de planos.
	\param void.
	\return Boolean, true se foi bem sucedido ou false caso contrário.
	\public
*/
function getViewAndThemes() {
	if (iframeLayers)
		if (iframeLayers.name!=null) {
			iframeLayers.loadCheckbox(true);
			vista = iframeLayers.getSelectedView();
			tema = iframeLayers.getSelectTheme();
			listaTemas = iframeLayers.getListThemes();
			return true;
		}
	return false;
}
/*!
	\brief Alterna o controle de escrita de texto, rótulo dinâmico, sobre o mapa.
	\param void.
	\return void.
	\public
*/
function setClearTextMap() {
	clearTextMap = ((clearTextMap=="void")?("OK"):("void"));
	submeter_("mapa.php?clearTextMap="+clearTextMap);
}
// AJAX FUNCTIONS /////////////////////////////////////////////////////
/*!
	\brief Informa novo contexto de mapa ao servidor, para que este atualiza o contexto na sessão do usuário.
	\param String url_, endereço do recurso para gerar o mapa.
	\return void.
	\public
*/
function setNewViewAndThemes(url_) {
	if (!getViewAndThemes()) {
		execSubmeter(url_);
	}else {
		var params = "?view="+vista+"&listThemes="+listaTemas+"&theme="+tema;
		request = createXMLHttp();
		request.open("GET", "setViewAndThemes.php"+params, true);
		request.setRequestHeader("Content-Type", "text/html; charset=iso-8859-1");
		request.onreadystatechange=function() {
			if (request.readyState==4) {
				resp = request.responseText;
				if (resp == "ok") {
					execSubmeter(url_);
				}
			}
		}
		request.send("");
	}
}
/*!
	\brief Executa requisição de exclusão de arquivos temporários gerados por operações de
	exportação de mapas ou relatórios.
	\param void.
	\return void.
	\public
*/
function cleanMakeFiles_(){
	var param = "?fileList="+listFiles;
	request = createXMLHttp();
	request.open("GET", "cleanMakeFiles.php"+param, true);
	request.setRequestHeader("Content-Type", "text/html; charset=iso-8859-1");
	request.onreadystatechange=function() {
		if (request.readyState==4) {
			resp = request.responseText;
			if (resp == "OK") {
				return;
				//alert("Pasta de temporários foi esvaziada!");
			}else{
				alert(resp);
			}
		}
	}
	request.send("");
}
// AJAX FUNCTIONS END ////////////////////////////////////////////////
/*!
	\brief Temporiza a execução de processo para exclusão de arquivos temporários.
	\param void.
	\return void.
	\public
*/
function cleanMakeFiles(){
	window.setTimeout("cleanMakeFiles_()", 1000);
}
/*!
	\brief Atualiza a lista de arquivos temporários que serão excluidos.
	\param String listaArquivos, lista de nomes de arquivos.
	\return void.
	\public
*/
function setlistFiles(listaArquivos){
	listFiles = listaArquivos;
}
/*!
	\brief Atualiza a cor de texto do objeto de interface identificado pelo parâmetro tag e conteúdo em content.
	\param String tag, identificador de objeto na interface.
	\param String content, texto contido no objeto especificado pelo parâmetro tag.
	\return Object, objeto encontrado pelas identificações definidas pelos parâmetros.
	\public
*/
function getTagByContent(tag, content) {
  t=document.getElementsByTagName(tag);
  for(var i=0; i < t.length; i++){
    if(trim(t[i].innerHTML)==trim(content)){
      return t[i];
    }
  }
}
/*!
	\brief Remove espaços no início e fim do texto recebido por parâmetro.
	\param String sString, texto de entrada.
	\return void.
	\public
*/
function trim(sString) {
	while (sString.substring(0,1) == " ") {
		sString = sString.substring(1, sString.length);
	}
	while (sString.substring(sString.length-1, sString.length) == " ") {
		sString = sString.substring(0,sString.length-1);
	}
	return sString;
}
// MANIPULAÇÃO DE ATRIBUTOS PARA GERAÇÃO DO PONTO DE INTERECE NO GOOGLE MAP.
/*!
	\brief Carrega um ponto para exibir no google maps.
	\param String lat_, latitude do ponto.
	\param String long_, longitude do ponto.
	\param String txtInfo_, informação sobre o ponto.
	\return void.
	\public
*/
function setPointByGoogle(lat_, long_, txtInfo_){
	strPointLongG = long_;
	strPointLatG  =	lat_;
	strInfoPointG = txtInfo_;
}
/*!
	\brief Verifica existência de atributos para geração do ponto no google.
	\param void.
	\return Boolean, true se existe e false caso contrário.
	\public
*/
function isPointGoogle(){
	if (strPointLongG!="" && strPointLatG!="" && strInfoPointG!=""){
		return true;
	}else{
		return false;
	}
}
/*!
	\brief Acesso ao atributo que representa a coordenada longitude de um ponto.
	\param void.
	\return String strPointLongG, coordenada longitude do ponto.
	\public
*/
function getLongPoint(){
	return strPointLongG;
}
/*!
	\brief Acesso ao atributo que representa a coordenada latitude de um ponto.
	\param void.
	\return String strPointLatG, coordenada latitude do ponto.
	\public
*/
function getLatPoint(){
	return strPointLatG;
}
/*!
	\brief Acesso às informações textuais sobre o ponto.
	\param void.
	\return String strInfoPointG, informações sobre o ponto.
	\public
*/
function getInfoPoint(){
	return strInfoPointG;
}
