// JavaScript Document
var oMenuTop = new function(){

	//A
	this.analizarCarga = function(a,e){
		if(a.className == 'brColorA bgColorA'){
			document.location = a.href;	
			
			
		}
		else{
			if(a.parentNode.parentNode.id != objOpacidad.id){
				menuStop = a.parentNode.parentNode;
				ocultarRecursivo(objOpacidad);
				activarMenu(a.parentNode.parentNode);
				objOpacidad = a.parentNode.parentNode;
				menuStop = null;
			}
			if(e)StopEvent(e);
		}
	}
	var activarMenu = function(menu){
		var i,j;
		for(i=0;i<menu.childNodes.length;i++){
			if(menu.childNodes[i].tagName && menu.childNodes[i].tagName.toLowerCase() == 'li' ){
				for(j=0;j<menu.childNodes[i].childNodes.length;j++){
					if(menu.childNodes[i].childNodes[j].tagName == 'A')menu.childNodes[i].childNodes[j].className = 'brColorA bgColorA';
				}
			}
		}
	}
	

	//B
	var buscarMargin = function(obj){
		var total = 0;
		total += obj.offsetLeft;
		if(obj.parentNode.parentNode.tagName == 'UL')total += buscarMargin(obj.parentNode.parentNode);
		return total;
	}
	
	//D
	var desactivarMenu = function(menu){
		var i,j;
		for(i=0;i<menu.childNodes.length;i++){
			if(menu.childNodes[i].tagName && menu.childNodes[i].tagName.toLowerCase() == 'li'){

				for(j=0;j<menu.childNodes[i].childNodes.length;j++){
					if(menu.childNodes[i].childNodes[j].tagName == 'A'){
						menu.childNodes[i].childNodes[j].className = 'brColorA bgColorA off';
					}
				}
			}
		}
		if(menu.parentNode.parentNode.id)menu.a.className = 'brColorA bgColorA on off';
	}
	
	//M
	this.mostrarMenu = function(a,obj,principal,e){
		if(a.className == 'brColorA bgColorA' || a.className == 'ColorA bgColorAHv'){
	
			if(objOpacidad){
				if(principal){
					ocultarRecursivo(objOpacidad);
				}
				else {
					desactivarMenu(objOpacidad);
				}
			}

			
			activarMenu(obj);
			obj.a = a;
			obj.a.className = 'brColorA bgColorA on';
			setOpacity(0, obj);
			obj.style.display = 'block';
			if(!principal)obj.style.marginTop = -obj.a.offsetHeight+'px';
				
			
			//BUSCO EL PRIMER HIJO PORQUE DEBO PONERLE BORDE;
			var s,t;
			for(s=0;s<obj.childNodes.length;s++){
				if(obj.childNodes[s].tagName == 'LI'){
					for(t=0;t<obj.childNodes[s].childNodes.length;t++){
						if(obj.childNodes[s].childNodes[t].tagName == 'A')obj.childNodes[s].childNodes[t].style.borderTopWidth = '2px';
					}
					break;
				}
			}
			if(Nav.esIE){
				obj.childNodes[obj.childNodes.length-1].childNodes[0].style.borderBottomWidth = '2px';	
			}
			else obj.childNodes[obj.childNodes.length-2].childNodes[1].style.borderBottomWidth = '2px';
			
			
			
			if(!principal){

				var mitad = Math.round((obj.a.offsetHeight-21)/2);
				var margen = buscarMargin(obj);
				if(margen + obj.offsetWidth > WScreen()){
					if(!obj.margenSeteado){
						obj.style.marginLeft = ((-obj.offsetWidth)+4)+'px';				
						if(Nav.esIE){
							posicionarCerrar(obj.id.replace('subMenu',''),-obj.offsetWidth-10);
							posicionarIconSub(obj.id.replace('subMenu',''),-10,mitad);
						}
						else{
							posicionarCerrar(obj.id.replace('subMenu',''),-10);
							posicionarIconSub(obj.id.replace('subMenu',''),obj.offsetWidth-10,mitad);			
						}
						
						
						
						obj.margenSeteado = true;
					}
				}
				else{
					if(!obj.margenSeteado){
						obj.style.marginLeft = (obj.offsetLeft+4)+'px';
						if(Nav.esIE){
							posicionarCerrar(obj.id.replace('subMenu',''),-10);
							posicionarIconSub(obj.id.replace('subMenu',''),-obj.offsetWidth-10,mitad,true);
						}
						else{
							posicionarIconSub(obj.id.replace('subMenu',''),-5,mitad,true);
						}
						obj.margenSeteado = true;
					}
				}
			}
			else{
				var margen = obj.parentNode.offsetLeft;

				if(margen + obj.offsetWidth > WScreen()){
					if(!obj.margenSeteado){
					
						if(!Nav.esIE)obj.style.marginLeft = ((-obj.offsetWidth)+obj.a.offsetWidth)+'px';
						else obj.style.marginLeft = ((-obj.offsetWidth)-4)+'px';
					}
				}
				else{
					if(!obj.margenSeteado){
						if(obj.offsetLeft < 0){
							if(Nav.esIE)obj.style.marginLeft = ((-margen-obj.parentNode.offsetWidth))+'px';
							else{
								obj.style.marginLeft = -(margen - 10)+'px';
							}
							
						}
					}
				}
				if(Nav.esIE)posicionarCerrar(obj.id.replace('subMenu',''),-10);
				
			}
			this.mostrarOpacidad(obj);
		}
		else{
			
			if(objOpacidad){
				if(a.parentNode.parentNode.id){
					menuStop = a.parentNode.parentNode;
					ocultarRecursivo(objOpacidad);
					activarMenu(a.parentNode.parentNode);
					objOpacidad = a.parentNode.parentNode;
					menuStop = null;
				}
			}
		}
		if(e)StopEvent(e);
	}
	this.mostrarOpacidad = function(obj,e){
		if(obj){
			if(!animOpacidad){
				animOpacidad = true;
				modoOpacidad = 'mostrar';
				indiceFrameOpacidad	= 0;
				objOpacidad = obj;
				opacidad();
			}
		}

		if(e)StopEvent(e);
	}
	var mostrarOpacidadFin = function(){
		
	}

	
	
	
	//O	
	this.ocultarMenuActivo = function(){
		if(objOpacidad){
			ocultarRecursivo(objOpacidad);	
		}
	}
	this.ocultarMenu = function(obj){
		this.ocultarOpacidad(obj);

		soloOcultar(obj);
	}
	var soloOcultar = function(obj){
		//ESTA FUNCION OCULTA TODOS LOS MENUES QUE POSEE HACIA ABAJO
		var i,j;

		for(i=0;i<obj.childNodes.length;i++){
			if(obj.childNodes[i].tagName == 'LI'){
				for(j=0;j<obj.childNodes[i].childNodes.length;j++){
					if(obj.childNodes[i].childNodes[j].tagName == 'UL'){

						obj.childNodes[i].childNodes[j].style.display = 'none';	
						soloOcultar(obj.childNodes[i].childNodes[j]);
					}
				}
			}
		}
		
	}
	this.ocultarOpacidad = function(obj,e){
		if(obj){
			if(!animOpacidad){
				animOpacidad = true;
				modoOpacidad = 'ocultar';
				indiceFrameOpacidad	= 0;
				objOpacidad = obj;
				opacidad();
			}
		}
		if(e)StopEvent(e);		
	}
	var opacidad = function(){
		if(indiceFrameOpacidad == (framesOpacidad + 1)){
			animOpacidad = false;
			if(Nav.esIE)objOpacidad.style.filter = 'none';
			if(modoOpacidad == 'mostrar'){ mostrarOpacidadFin(); }
			else{ ocultarOpacidadFin(); }
		}
		else{
			var i = (modoOpacidad == 'mostrar')? (100 / framesOpacidad) * indiceFrameOpacidad : (100 / framesOpacidad) * (framesOpacidad - indiceFrameOpacidad);
			setOpacity(i, objOpacidad);
			
			indiceFrameOpacidad++;
			
			setTimeout(opacidad, delayOpacidad);
		}
	}
	var ocultarOpacidadFin = function(){
		objOpacidad.style.display = 'none';
		if(objOpacidad.parentNode.parentNode.id){
			objOpacidad.a.className = 'brColorA bgColorA';
		}
		else{
			objOpacidad.a.className = 'ColorA bgColorAHv';
		}
		soloOcultar(objOpacidad);		
		if(objOpacidad.parentNode.parentNode.id){
			activarMenu(objOpacidad.parentNode.parentNode);
			objOpacidad = objOpacidad.parentNode.parentNode;
		}
		

	}
	var ocultarRecursivo = function(menu){
		if(!menuStop || menuStop.id != menu.id){
			menu.style.display = 'none';
			if(menu.parentNode.parentNode.id){
				ocultarRecursivo(menu.parentNode.parentNode);
				
			}
			else menu.a.className = 'ColorA bgColorAHv';
		}
	}
	var obtenerPadreRecursivo = function(menu){
		var ret;
		if(menu.parentNode.parentNode.id)ret = obtenerPadreRecursivo(menu.parentNode.parentNode);
		else ret = menu;
		return menu;
	}

	//P
	var posicionarCerrar = function(idSubMenu,left){
		if($('btnCerrarS'+idSubMenu)){
			if(!left)$('btnCerrarS'+idSubMenu).style.marginLeft = '0px';
			else $('btnCerrarS'+idSubMenu).style.marginLeft = left+'px';
		}
	}
	var posicionarIconSub = function(idSubMenu,left,top,vuelta){
		if($('iconSubMenu'+idSubMenu)){
			if(!left)$('iconSubMenu'+idSubMenu).style.marginLeft = '0px';
			else $('iconSubMenu'+idSubMenu).style.marginLeft = left+'px';
			$('iconSubMenu'+idSubMenu).style.marginTop = top+'px';
			if(vuelta)$('iconSubMenu'+idSubMenu).src = DIR_ROOT + 'img/iconSubMenu.png';
		}
	}

	
	var MOSTRADOS = new Array();
	var framesOpacidad = 10;
	var indiceFrameOpacidad = 0;
	var delayOpacidad = 4;
	var objOpacidad = null;
	var animOpacidad = false;
	var modoOpacidad = '';
	var menuStop = null;//ESTA VARIABLE ME INDICA QUE DEBO OCULTAR HASTA ESE MENU SIN INCLUIRLO.
	
	
}