/*--------------------------------------------------------------------
JAVASCRIPT "usados ao longo do site" 

Version: 	2.0 - 2008/2008
author: 	Burocratik (alexandre gomes)
email: 		alex@burocratik.com
website: 	http://www.burocratik.com
-----------------------------------------------------------------------*/
/* =Open new window e Mandar Imprimir
-----------------------------------------------------------------------*/
document.onclick = function(e){
  var target = e ? e.target : window.event.srcElement; //teste para FF-IE
  while (target && !/^(a|body)$/i.test(target.nodeName)){target = target.parentNode;}
	//Open new window
  if (target && target.getAttribute("rel")&& target.rel == "external"){
    var linkExterno = window.open(target.href);
    return linkExterno.closed;
  }
	//Mandar Imprimir
  if (target && target.getAttribute("rel")&& target.rel == "print"){
    var imprimir = window.print();
    return false;
  }
}

/*-----------------------------------------------------------------------
 =RODAPE
-----------------------------------------------------------------------*/
var W3CDOM = (document.getElementsByTagName && document.createElement);
if (W3CDOM){
	var link = document.createElement('link');
	link.setAttribute("rel", "stylesheet");
	link.setAttribute("type", "text/css");
	link.setAttribute("href", "scripts/javascript-armonica.css");
	link.setAttribute("media", "screen");
	document.getElementsByTagName("head")[0].appendChild(link);
}

function fVisivelFooter(id) {
  var divs = document.getElementsByTagName("div");
  for (var i=0; i<divs.length; i++ ) {
    if (divs[i].className.indexOf("txtFooter") == -1) continue;
    if (divs[i].getAttribute("id") == id) {
		if (addClass("check",divs[i],"show")){ //verifica se ja apliquei a class (isto e' se ja estava aberto)
			addClass("remove",divs[i],"show"); //tira a class
		} else {
			addClass("add",divs[i],"show"); //adiciona nova class, esta funcao esta em geral.js
		}
    } else {
	  addClass("remove",divs[i],"show"); //remove nova class, esta funcao esta em geral.js
    }
  }
}

function iniciarLinksFooter() {
	if (!document.getElementsByTagName) return false;
	if (!document.getElementById) return false;
	var links = getElementsByClassName(document, "a", "linkFooter");
	for (var i=0; i<links.length; i++ ) {
   	var sectionId = links[i].getAttribute("href").split("#")[1];
    	if (!document.getElementById(sectionId)) continue;
			links[i].destination = sectionId;
    	links[i].onclick = function() {
       fVisivelFooter(this.destination);
      	//return false;
    	}
	}
}

/*-----------------------------------------------------------------------
 =LINGUAS
-----------------------------------------------------------------------*/
function iniciarLing() {
	if (!document.getElementsByTagName) return false;
	if (!document.getElementById) return false;
	var link = document.getElementById("linkLing");
	var botoes = document.getElementById("btnLing");
	link.onclick = function() {
		if (addClass("check",botoes,"showLing")){ //verifica se ja apliquei a class (isto e' se ja estava aberto)
			addClass("remove",botoes,"showLing");
			this.style.backgroundPosition="top";
			//over e out do botao
			this.onmouseover=this.onfocus=function(){this.style.backgroundPosition="bottom";}
			this.onmouseout=this.onblur=function(){this.style.backgroundPosition="top";}
		} else {
			addClass("add",botoes,"showLing");
			this.style.backgroundPosition="bottom";
			//over e out do botao
			this.onmouseover=this.onfocus=function(){this.style.backgroundPosition="bottom";}
		}
		return false;
	}
}

/*-----------------------------------------------------------------------
 =TOOLTIP balao de destaques
-----------------------------------------------------------------------*/
 function iniciarTooltips() {
	if (!document.getElementsByTagName) return false;
	if (!document.getElementById) return false;
	var linkT = getElementsByClassName(document, "a", "linkTool");
	for (var i=0; i<linkT.length; i++ ) {
  	var sectionId = linkT[i].getAttribute("id").split("L")[1];
    if (!document.getElementById(sectionId)) continue;
		linkT[i].destination = sectionId;
    linkT[i].onmouseover = linkT[i].onfocus = function() {
			var elem = document.getElementById(this.destination);
			elem.style.zIndex="1000";
			elem.style.position = "absolute";
			elem.style.left = -20 +"px";
			if(this.getAttribute("id")=="Ltool1"){elem.style.top = -105+"px";}
			if(this.getAttribute("id")=="Ltool2"){elem.style.top = -70+"px";}
    }
		linkT[i].onmouseout = linkT[i].onblur = function() {
			var elem = document.getElementById(this.destination);
			elem.style.left = "-9999px";
			elem.style.top = "-9999px";
  	}
	}
}


/*-----------------------------------------------------------------------
=Limpar Formulario de Pesquisa
-----------------------------------------------------------------------*/
function limparForms(qualform) {
  for (var i=0; i<qualform.elements.length; i++) {
    var element = qualform.elements[i];
    if (element.type == "submit")continue; //se o elemento for um submit passa a proxima iteracao do loop
	  if (element.type == "button") continue; //se o elemento for um button passa a proxima iteracao do loop
    if (!element.defaultValue) continue;
    element.onfocus = function() {
    if (this.value == this.defaultValue) {
      this.value = "";
     }
    }
    element.onblur = function() {
      if (this.value == "") {
        this.value = this.defaultValue;
      }
    }
  }
}
//passar cada object form para a funcao limparForms()
function iniciarForms() {
  formId = document.forms["formPesquisar"]; //forms k quero que possam ser limpos
  formId2 = document.forms["formDocumentos"];
  for (var i=0; i<document.forms.length; i++) {
  	if (document.forms[i]!= formId && document.forms[i]!= formId2) continue; //se nao e' o form k defini, sai do loop
    var thisform = document.forms[i];
    limparForms(thisform);
  }
}


/* =Preparar Eventos
-----------------------------------------------------------------------*/
addLoadEvent(iniciarLinksFooter);
addLoadEvent(iniciarLing);
addLoadEvent(iniciarTooltips);
addLoadEvent(iniciarForms);

