/***********Definir idioma*************/
var _Idioma = "PT";
function defIdioma()
{
    _Idioma = "PT";
    var sPag = document.URL;
    if (sPag.indexOf("_en.") >0) _Idioma = "EN";
}

//DC -Ago2008
//Função para construir uma string da data de acordo com o idioma
//recebe data em milisegundos (ver UTC)
//depende de uma var global _Idioma
function constroiData(milisecsUTC)
{
    var sData = "";
    var dData = new Date(milisecsUTC);
    //if(!_Idioma) _Idioma = "PT";
    var iDia = dData.getDate();
    var iMes = (dData.getMonth() + 1);
    var iAno = dData.getFullYear();
    switch (_Idioma) {
        case "EN" :
            sData += iMes + "/";
            sData += iDia + "/";
            sData += iAno;
            break;
        default :
            sData += iDia + "/";
            sData += iMes + "/";
            sData += iAno;
            break;
    }
    return sData;
}

/************Árvore de Temas **********/
function treeSel(obj) 
{
	//serviria para controlar o tema clicado
	//alert('Tema: ' + obj.value);
	//alert(obj.checked)
	tocTemas();
}

//RC - 14092006
//Actualiza o objecto mapa com os layers visiveis da árvore
function updateVisibleLayers()
{
	var lstTemas = '';
	var oTemas = $('arvTemas').getElementsByTagName('input'); 

	for(i = 0 ; i < oTemas.length; i++)
	{
		if (oTemas[i].checked) { lstTemas += oTemas[i].value +','; }
	}
	
	mMapa.layers = lstTemas.split(',');
	
	delete mMapa.layers[mMapa.layers.length-1];
}

function tocTemas() 
{
	//recolhe temas seleccionados e pede mapa
	updateVisibleLayers();
	
	pedeMapa('');
}

String.prototype.trim = function() { return this.replace(/^\s+|\s+$/, ''); };

//DC - Ago08 - bug corrigido qd cat==subcat! (eg Ag.Turismo)
function ligarTema(tema)
{
	//var oTemas = $('arvTemas').getElementsByTagName('input');
	var oTemas = document.getElementsByTagName('input');  
	var txtTemas = $('arvTemas').getElementsByTagName('span');
	var value = '';
	var lstTemas = '';
	
	for(i = 0 ; i < txtTemas.length; i++)
	{
		if (txtTemas[i].innerHTML.toUpperCase().match(tema.toUpperCase()) != null)
		{
			value = txtTemas[i].innerHTML.toUpperCase().replace(/\"/gi," ").replace(/>/gi," ");
			var idx = value.indexOf("VALUE");
			if(idx >=0)
			{
			    value = value.substr(value.indexOf("VALUE") + 6).trim();
			    value = value.substr(0,value.indexOf(' '));
			    break;
			}
		}
	}
	
	for(i = 0 ; i < oTemas.length; i++)
	{
		if (oTemas[i].value == value) { oTemas[i].checked = true; changeImg(i); };
		
		if (oTemas[i].checked) lstTemas += oTemas[i].value +',';
	}
	
	mMapa.layers = lstTemas.split(',');
	delete mMapa.layers[mMapa.layers.length-1];
}


//RC
function ligarTemaSubCat(subcat)
{
	//var oTemas = $('arvTemas').getElementsByTagName('input'); 
	var oTemas = document.getElementsByTagName('input');
	var lstTemas = '';
	var tmp;

	for(i = 0 ; i < oTemas.length; i++)
	{
		//alert(oTemas[i].value + "\n" + subcat)

		if (oTemas[i].value == subcat) { oTemas[i].checked = true; changeImg(i); };
		
		if (oTemas[i].checked) lstTemas += oTemas[i].value +',';
	}
	
	mMapa.layers = lstTemas.split(',');
	delete mMapa.layers[mMapa.layers.length-1];
}



function pesquisar()
{	
	pedeMapa('PESQUISAR',$('NOME').value.toUpperCase());
}

//DC - 01-05-2006
//toggle alterado recebe arg de ON/OFF
function toggleonoff(obj,strOnOff) 
{
	try
	{
		var el = $(obj);

		switch (strOnOff)
		{
			case 'ON':
				el.style.display = 'block';
				break;	
			case 'OFF':
				el.style.display = 'none';
				break;
		}
	} catch(e) {};
}

//scroll speed
var speed = 5;

//scroll down dos paneis laterais
//RC - 31-05-2006
function scrollDown(iContent)
{
	var sPanel = "Panel_"+iContent;
	var sContent = sPanel+"_Content";
	var panelObj = $(sPanel);
	var contentObj = $(sContent);
	
	panelheight = panelObj.offsetHeight;
	contentheight = contentObj.offsetHeight;
		
	if (parseInt(contentObj.style.top)>=((contentheight-panelheight-380)*(-1)))	
	{
		contentObj.style.top = (parseInt(contentObj.style.top)-speed) + 'px';
	}
	scrolldownvar = setTimeout('scrollDown("'+iContent+'")',20);
}

//scroll up dos paneis laterais
//RC - 31-05-2006
function scrollUp(iContent)
{
	var sPanel = "Panel_"+iContent;
	var sContent = sPanel+"_Content";
	var panelObj = $(sPanel);
	var contentObj = $(sContent);
	contentheight = contentObj.offsetHeight;
		
	if (parseInt(contentObj.style.top) < 0) 
	{
		contentObj.style.top=parseInt(contentObj.style.top)+speed + 'px';
	}
	scrollupvar = setTimeout('scrollUp("'+iContent+'")',20);
}

//scroll usando os botões inferiores
//DC - 16-01-2007
function scrollFundo(sDir)
{
	if(sDir == 'Cima')
		scrollUp('Left_' + mLeftActivePanel);
	if(sDir == 'Baixo')
		scrollDown('Left_' + mLeftActivePanel);
}

//Definir as tools do mapa
//RC - 02-08-2006
function setTool(tool)
{
	tool = tool.toUpperCase()

	switch(tool) 
	{
		case 'INIT':   //pede mapa default
			//pedeMapa(tool);
			break;
		case 'ZOOMIN':
			setActiveTool(tool)
			setMapEvent(tool);
			buttonClick(tool)
			break;
		case 'ZOOMOUT':
			setActiveTool(tool)
			setMapEvent(tool);
			buttonClick(tool)
			break;
		case 'PAN':
			setActiveTool(tool)
			setMapEvent(tool);
			buttonClick(tool)
			break;
		case 'PANN': case 'PANE': case 'PANS': case 'PANO':
			pedeMapa(tool);
			break;
		case 'IDENTIFY':
			setActiveTool(tool)
			if ($("Panel_Left_4_Content").innerHTML != "")
				setLeftPanel(4)
			setMapEvent(tool);
			buttonClick(tool)
			break;
		case 'PERCURSO':
			setLeftPanel(8);
			buttonClick(tool)
			break;
		case 'LEGENDA':
			setLeftPanel(3);
			buttonClick(tool)
			break;
		case 'TEMAS':
			setLeftPanel(2)
			buttonClick(tool)
			break;
		case 'GPS':
			setLeftPanel(5);
			buttonClick(tool)
			break;
		case 'SAVE':
			setLeftPanel(6);
			buttonClick(tool)
			break;
		case 'PESQUISAR':
			setLeftPanel(1);
			buttonClick(tool)
			break;
		case 'ZOOMFULL':
			pedeMapa(tool);
			break;
		case 'LASTZOOM':
			if (mMapa.extent.xminant != 0 && mMapa.extent.xmaxant != 0)
			{
				pedeMapa(tool);
			}
			break;

	}
}

function barMouseOver(e,tool)
{
	try
	{
		$(tool).src = 'imagens/toolbar/webgis_toolbar_BTN_' + tool.toLowerCase() + '_over.gif';
	} catch(e) {}
}

function barMouseOut(tool)
{
	try
	{
		if (!isActiveTool(tool))
		{
			$(tool).src = 'imagens/toolbar/webgis_toolbar_BTN_' + tool.toLowerCase() + '_out.gif';
		}
	} catch(e) {}
}

function isActiveTool(tool)
{
	if (tool == toolbar_id) return true;

	return false;
}

function setActiveTool(tool)
{
	$(toolbar_id).src = 'imagens/toolbar/webgis_toolbar_BTN_' + toolbar_id.toLowerCase() + '_out.gif';

	$(tool).src = 'imagens/toolbar/webgis_toolbar_BTN_' + tool.toLowerCase() + '_over.gif';
	
	toolbar_id = tool;
}

//Controlar os paineis laterais
//RC - 02-08-2006
function setLeftPanel(idPanel)
{
	var panelOn  = "Panel_Left_" + idPanel;
	var panelOff = "Panel_Left_" + mLeftActivePanel;
	
	setBottomPanelOff();
	
	mLeftActivePanel = idPanel;
	
	toggleonoff(panelOff,"OFF");
	toggleonoff(panelOn,"ON");
}

//Controlar os paineis inferiores
//RC - 02-08-2006
function setBottomPanel(idPanel)
{
	var panelOn  = "Panel_Bottom_" + idPanel;
	var panelOff = "Panel_Bottom_" + mBottomActivePanel ;
	
	mBottomActivePanel = idPanel;
	
	toggleonoff(panelOff,"OFF");
	toggleonoff(panelOn,"ON");
}

function setBottomPanelOff()
{
	var panelOff = "Panel_Bottom_" + mBottomActivePanel ;
		
	mBottomActivePanel = '';
	
	toggleonoff(panelOff,"OFF");
}

function buttonOut()
{
	fxInstr.hide();
	//fxInstr.custom(700,0);
	$("Panel_Bottom_0").style.zIndex = 0;
	$("Panel_Bottom_0").style.display = 'none';
	//$("Panel_Bottom_0_Content").innerHTML = "";
}

function buttonClick(tool)
{
	html = '<p>' + eval("insDetalhadas."+tool) + '</p>';
	
	$("Panel_Bottom_0_Content").innerHTML = html;
	if (fxInstr && $('Instrucoes').offsetWidth != 0) fxInstr.custom(0,$('Instrucoes').offsetWidth-10);
}

function buttonOut()
{
	$("Panel_Bottom_0").style.zIndex = 0;
	$("Panel_Bottom_0").style.display = 'none';
	$("Panel_Bottom_0_Content").innerHTML = "";
}

//função de controle da Ajuda
//DC - 28/Out/06
function ctrlAjuda()
{
    if($('home').status)
    {
        if($('home').status == 'ON')
        {
            toggleonoff('home','OFF');
            toggleonoff('Paineis_Fundo','ON')
            $('home').status = 'OFF';
        }
        else
        {
            toggleonoff('home','ON');
            toggleonoff('Paineis_Fundo','OFF')
            $('home').status = 'ON';
        }
    }
    else
    {
            toggleonoff('home','ON');
            toggleonoff('Paineis_Fundo','OFF')
            $('home').status = 'ON';
    }
}

function addBtnTitle()
{
    	for (var i in infBtn)
    	{
		inst = eval("insSimples." + i)
		eval("document.getElementById('" + i + "').setAttribute('title','" + inst + "')");
    	}
}

function janelaTxt(sTitulo, sTexto, xPos, yPos)
{
    IDT_MOUSE = { "clientX":xPos, "clientY": yPos };
    doTooltip(IDT_MOUSE, sTitulo, sTexto);
}
