var mostraMenu = new Array();
function geraMenu(id) {
	elMenu = document.getElementById(id);
	// recupera o ul pai
	var ul;
	for (i=0; i<elMenu.childNodes.length;i++){
		if (elMenu.childNodes[i].nodeName == "UL") {
			ul = elMenu.childNodes[i]; break;
		}
	}
	// array dos li principais
	var a_li = new Array();
	for (i=0;i< (el = ul.childNodes).length;i++) {
		if (el[i].nodeName == "LI"){
			if (el[i].getElementsByTagName("UL").length > 0) {
				a_li[a_li.length]=[el[i],true];// ELEMENTO COM SUBMENU
				mostraMenu[mostraMenu.length] = [el[i].getElementsByTagName("UL")[0],false];
				subMenu = el[i].childNodes;
				for (j=0;j<subMenu.length;j++) {
					if (subMenu[j].nodeName != "#text") {
						// verifica se existe submenu
						subMenu[j].onmouseover = function() {
							if (this.parentNode.getElementsByTagName("UL").length >0) {
								this.parentNode.getElementsByTagName("UL")[0].style.display="block";
								setMostraMenu([this.parentNode.getElementsByTagName("UL")[0].className], true);
							}
						}
						subMenu[j].onmouseout = function() {
							if (this.parentNode.getElementsByTagName("UL")[0].className != "" && this.parentNode.getElementsByTagName("UL")[0].className != "undefined") {
								setMostraMenu([this.parentNode.getElementsByTagName("UL")[0].className], false);
							}
							setTimeout("esconde()", 200);
						}
					}
				}
			} else {
				a_li[a_li.length]=[ul.childNodes[i],false];// ELEMENTO SEM SUBMENU
				ul.childNodes[i].onmouseover = esconde;
			}
		}
	}
	// PROCURA POR SUBMENUS DE NIVEL 2
	for (i = 0; i < a_li.length; i++) {
		// � ITEM COM SUBMENU
		if (a_li[i][1]) {
			var el = a_li[i][0].getElementsByTagName("UL")[0].childNodes; // array de elementos do submenu
			for (j=0;j<el.length;j++) {
				if (el[j].nodeName == "LI" && el[j].getElementsByTagName("UL").length > 0) {
					mostraMenu[mostraMenu.length] = [el[j].getElementsByTagName("UL")[0],false];
					subMenu = el[j].childNodes;
					for (k=0;k<subMenu.length;k++) {
						if (subMenu[k].nodeName != "#text") {
							// verifica se existe submenu
							el[j].onmouseover = function() {
								this.parentNode.style.display="block";
								this.getElementsByTagName("UL")[0].style.display="block";
								setMostraMenu([this.getElementsByTagName("UL")[0].className, this.parentNode.className], true);
							}
							el[j].onmouseout = function() {
								ie = navigator.userAgent.toLowerCase().indexOf("msie");
								if (ie != -1) {
									this.getElementsByTagName("UL")[0].style.display="none";
									removeIframe(this.parentNode.getElementsByTagName("UL")[0]);
								}
								setMostraMenu([this.getElementsByTagName("UL")[0].className, this.parentNode.className], false);
								setTimeout("esconde()", 200);
							}
							subMenu[k].onmouseover = function() {
								this.parentNode.parentNode.style.display="block";
								this.parentNode.getElementsByTagName("UL")[0].style.display="block";
								setMostraMenu([this.parentNode.getElementsByTagName("UL")[0].className, this.parentNode.parentNode.className], true);
							}
							subMenu[k].onmouseout = function() {
								ie = navigator.userAgent.toLowerCase().indexOf("msie");
								if (ie != -1) {
									this.parentNode.getElementsByTagName("UL")[0].style.display="none";
									removeIframe(this.parentNode.getElementsByTagName("UL")[0]);
								}
								setMostraMenu([this.parentNode.getElementsByTagName("UL")[0].className, this.parentNode.parentNode.className], false);
								setTimeout("esconde()", 200);
							}
						}
					}
				}
			}
		}
	}
}
function setMostraMenu(classe, t) {
	if(typeof(t)=='undefined')
		t = false;

	for (x=0;x<mostraMenu.length;x++) {
		var teste = false;
		for (y=0;y<classe.length;y++) {
			if (mostraMenu[x][0].className == classe[y]) {
				teste = true;
			}
		}
		if (teste) {
			mostraMenu[x][1] = t;
			if (t) criaIframe(mostraMenu[x][0], x);
		}
	}
}
function esconde() {
	for (x=0;x<mostraMenu.length;x++) {
		if (!mostraMenu[x][1]) {
			mostraMenu[x][0].style.display = 'none';
			removeIframe(mostraMenu[x][0]);
		} else {
			mostraMenu[x][0].style.display = 'block';
		}
	}
}
function criaIframe(o, x){
	try {
		o.style.zIndex = 1000;
		ie = navigator.userAgent.toLowerCase().indexOf("msie");
		h = o.scrollHeight;
		w = o.scrollWidth;
		o_iframe = document.createElement("iframe");
		o_iframe.src="javascript:void(0);";
		o_iframe.id = "iframeHidden"+mostraMenu[x][0].className;
		o_iframe.className = mostraMenu[x][0].className+"_iframe";
		o_iframe.scrolling = "no";
		o_iframe.style.width = (w+(ie!=-1 ? 2 : -1))+"px";
		o_iframe.style.height = (h+(ie!=-1 ? 2 : -1))+"px";
		o_iframe.style.zIndex= 900;
		o_iframe.frameBorder = "0px";
		o_iframe.style.border = "0px"
		if (!document.getElementById("iframeHidden"+mostraMenu[x][0].className)){
			document.getElementById("m_institucional").appendChild(o_iframe);
		}		
	} catch (e) { }
}
function removeIframe(o) {
	if (document.getElementById("iframeHidden"+o.className)){
		document.getElementById("m_institucional").removeChild(document.getElementById("iframeHidden"+o.className));
	}
}