//Menu Vertical

//função que adiciona eventos a objetos
var addEvent = function(obj, evType, fn, arg){
  if (obj.addEventListener){
    obj.addEventListener(evType, fn, true)}
  if (obj.attachEvent){
    obj.attachEvent("on"+evType, fn)}
}

//Configurações do menu vertical
var toggleDuration=.5;
var toggleEffect='blind';
//métodos extra
var extraMethods={
	fechaSub:function(element){
		element=$(element);
		new Effect.BlindUp(element, {duration:.3, transition:Effect.Transitions.linear});
		return element;
	},
	abreSub:function(element){
		element=$(element);
		new Effect.BlindDown(element, {duration:.3, transition:Effect.Transitions.linear});
		return element;
	},
	toggleSub:function(element){
		element=$(element);
		new Effect.toggle(element,toggleEffect,{duration:toggleDuration, transition:Effect.Transitions.linear});
		return element;
	}}
Element.addMethods(extraMethods);


//funções do menu vertical
function menu(obj){
	//requisitando o atributo REL do link clicado
	objSub = obj.getAttribute('rel');
	//extraindo nome da Classe
	objSubClass = $(objSub).className;
	
	//pegando todos os ids que possuem a classe do objeto que foi clicado
	arrObjSubId = new Array();
	$A($('menu').getElementsByClassName(objSubClass)).each(function(s){
			//fechar todas os elementos de classe sub e sub2, excetuando-se as to elemento clicado
			if(s.id!=objSub){
				$(s).fechaSub();
				$(s).getElementsByClassName('sub2').invoke('fechaSub');
			}
		});
	//alterando o estado do objeto clicado (abrir|fechar)	
	$(objSub).toggleSub();
}

//função que esconde TODOS os sub e sub2
var hideSub = function(){
	$A($('menu').getElementsByClassName('sub2')).invoke('hide');
	$A($('menu').getElementsByClassName('sub')).invoke('hide');
}

function abreSelecionado(obj){
	try{
		idParent = $(obj).up().id;		
		level = $(idParent).className;
	
		if(level=='sub' || level=='sub2'){//certifica-se de que não é uma seção principal com submenus
	
			$(idParent).abreSub();				
		}
		if(level=='sub2'){
			idParent2 = $(idParent).up(1).id;
			level2 = $(idParent2).className;
			$(idParent2).abreSub();
		}
	}catch(err){}
}

function initMenu(){
	hideSub();
	//variável initOpt: definida no script da página via PHP
	abreSelecionado(initOpt)
	//abreSelecionado(initOpt);
}

function openSigmaMsg() {
//	var x = getX("imgsigma");
//	var y = getY("imgsigma");
	var obj = 'sigmamsg';
//	document.getElementById(obj).style.left= y+10+'px';
//	document.getElementById(obj).style.top = x+115+'px';
	document.getElementById(obj).style.visibility = "visible";
}

function hideSigmaMsg() {
	var obj = 'sigmamsg';
//	document.getElementById(obj).style.left= '-1000px';
//	document.getElementById(obj).style.top = '-1000px';
	document.getElementById(obj).style.visibility = "hidden";
}

function getX(imagename){
	theImg= document.getElementById(imagename);
	return getOffsetLeft(theImg);
}

function getY(imagename){
	theImg= document.getElementById(imagename);
	return getOffsetTop(theImg);
}

function getOffsetTop (el) {
	var ol = el.offsetTop;
	while ((el = el.offsetParent) != null)
	  ol += el.offsetTop;
	return ol;
}

function getOffsetLeft (el) {
	var ol = el.offsetLeft;
	while ((el = el.offsetParent) != null)
	  ol += el.offsetLeft;
	return ol;
}