/*
'***************************************************************************
'Copyright ©2001, by Arachnida. All Rights Reserved.
'Todos los Derechos Reservados ©2001, por Arachnida.

'No está permitida la copia o reproducción total o parcial de este
'programa, sea por medio impreso o electrónico, ni la transmisión de
'ninguna forma o por cualquier medio, ya sea electrónico, por impresión,
'por fotocopia, por registro u otros medios sin la autorización previa y
'por y por escrito de los titulares del Copyright.
'No está permitida la alteración, total o parcial de este programa, por
'ningún medio, sin la autorización previa y por escrito de los titulares
'del Copyright.
'No está permitida la locación, alquiler, o venta de este programa ni de
'los servicios que este programa puede ofrecer sin la autorización previa
'y por escrito de los titulares del Copyright.

'Corporación Arachnida C.A.
'Avenida Sucre, Centro Parque Boyacá, Piso 2, Oficina 21,
'Los Dos Caminos, Caracas 1071, Venezuela. Tel: +58 212 2860760.
'email: master@arachnida.com
'http://www.arachnida.com
'***************************************************************************
*/
var onTextColor="";
var offTextColor="";
var onCellColor="";
var offCellColor="";
var onBorderColor="";
var offBorderColor="";
var currentSpanElement="";
var oldLevel="";
var menuArray=new Array();
var offsetMenuX=173;
var offsetMenuY=15;
var startDistanceX=-10;
var startDistanceY=0;
var menuOn=false;
var started=false;
var clickStart=true;
var clickX=0;
var clickY=0;
var selectCount=0;
var select="";
var appletCount=0;
var applets="";
var objectCount=0;
var objects="";
var timeout="";
var claseOn = "on";
var claseOff = "co";

function startIt(menu,thisItem,level,img,spacing,tb,dir) {
	hideAllDivs();
	if (menuOn == true) {
		window.event.cancelBubble = true;
		hideAllDivs();
		return;
	} else {
	//Ocultar los select y los applet
		select = document.all.tags("select");
		selectCount = select.length;
		if (selectCount > 0) {
			for (i=0;i<selectCount;i++) {
				if ((new String(select.item(i).name).substr(0,3)) != "nh_"){
					select.item(i).style.visibility = "hidden";
				}
			}
		}
		applets = document.all.tags("applet");
		appletCount = applets.length;
		if (appletCount > 0) {
			for (i=0;i<appletCount;i++) {
				applets.item(i).style.visibility = "hidden";
			}
		}
	//Ocultar los flash	
/*		objects = document.all.tags("object");
		objectCount = objects.length;
		if (objectCount > 0) {
			for (i=0;i<objectCount;i++) {
				objects.item(i).style.visibility = "hidden";
			}
		}*/
		menuOn = true;
		started = true;
		clickX = 0;
		clickY = 0;
		table = eval(tb);
		eMenu = eval("document.all('" + menu + "')");     
		while (table != document.body) {
			clickX += table.offsetLeft;
			clickY += table.offsetTop;
			table = table.offsetParent;
		} //while
		clickX -= document.body.scrollLeft;
		clickY -= document.body.scrollTop;
		if (dir == 3){
			if (clickX + img.width < document.body.clientWidth)
				clickX += img.width;}
		else if (dir == 1)
			clickY += img.height;
		else if (dir == 4){
			if (clickX - eMenu.offsetWidth > 0)
				clickX -= eMenu.offsetWidth;
		}
		else if (dir == 2){
			if (clickY - eMenu.offsetHeight > 0)
				clickY -= eMenu.offsetHeight
			
		}
		if (clickStart) window.event.cancelBubble = true;
		sChg(menu,thisItem,level);
	}
}

function sChg(menu,thisItem,level) {
	if (currentSpanElement != thisItem.id && started != true) {
		//Establecer el elemento actual si no esta definido
		if (currentSpanElement == "") currentSpanElement = thisItem.id;
		//Establecer el nivel anterior como el actual
		if (oldLevel == '') oldLevel=level
		eItemOld = eval("document.all('" + currentSpanElement + "')");
		eItemNew = eval("document.all('" + thisItem.id + "')");

		//Si avanzo en el camino del menu guardo el padre en
		//eItemLevelParent + el nivel del padre
		if (level > oldLevel)
			eval("eItemLevelParent" + oldLevel + " = eItemOld");
		
		//Si la opción está	en el mismo nivel o en el anterior
		//desmarco la opcion anterior
		if (level==oldLevel || level < oldLevel){
			eItemOld.className = claseOff;
		}
		
		//Si el nivel anterior es mayor que el actual desmarco el camino
		// hasta el nivel en el que me encuentre actualmente
		if (level < oldLevel && level != ''){
			for(k=level;k<oldLevel;k++){
				eval("eItemLevelParent" + k + ".className = claseOff;")
			}
		}
		
		eItemNew.className = claseOn;

		currentSpanElement = thisItem.id;
		oldLevel=level
	}

	if (menu != "") {
		eMenu = eval("document.all('" + menu + "')");     
		eItem = eval("document.all('" + thisItem.id + "')");
		hD(level);
		menuArray[menuArray.length] = menu;
		var positionX =  eItem.parentElement.offsetLeft + eItem.parentElement.offsetWidth - 20
		var positionY =  eItem.parentElement.offsetTop + eItem.offsetTop + 7
		if (started) {
			positionX = clickX + document.body.scrollLeft 
			positionY = clickY + startDistanceY + document.body.scrollTop
		}
		
		if ((positionX + eMenu.offsetWidth) > document.body.clientWidth) {
			positionX -= (eMenu.offsetWidth * 1.3)  ;
		}
		if ((positionX + eMenu.offsetWidth) < eMenu.offsetWidth) {
			positionX += (eMenu.offsetWidth * 1.3);
		}
		if ((positionY < 0) || ((positionY + eMenu.offsetHeight) > document.body.clientHeight)) {
			if (started != true) positionY = 2 
		}

		eMenu.style.left = positionX;
		eMenu.style.top = positionY ;
		eMenu.style.visibility='visible';
	}

	started = false;
}

function hD(currentLevel) {
	for (var i=currentLevel;i<menuArray.length;i++) {
		var arrayString = new String(menuArray[i]);
		if (arrayString == "undefined") continue;
		eval("document.all('" + menuArray[i] + "').style.visibility='hidden'");
	}
	menuArray.length = currentLevel;
}

function hideAllDivs() {
	if (menuOn == true) {
		for (var i=0;i<menuArray.length;i++) {
			var arrayString = new String(menuArray[i]);
			if (arrayString == "undefined") continue;
			document.all(menuArray[i]).style.visibility = "hidden";
			document.all(menuArray[i]).style.left = 0;
			document.all(menuArray[i]).style.top = 0;
		}
		if (currentSpanElement != "") {
			eItem = eval("document.all('" + currentSpanElement + "')");
			eItem.className = claseOff;
			menuArray = new Array();
			currentSpanElement = "";
		}
		if (selectCount > 0) {
			for (i=0;i<selectCount;i++) {
				select.item(i).style.visibility = "visible";
			}
			selectCount = 0;
			select = "";
		}
		if (appletCount > 0) {
			for (i=0;i<appletCount;i++) {
				applets.item(i).style.visibility = "visible";
			}
			appletCount = 0;
			applets = "";
		}
		if (objectCount > 0) {
			for (i=0;i<objectCount;i++) {
				objects.item(i).style.visibility = "visible";
			}
			objectCount = 0;
			objects = "";
		}
	}
	menuOn = false;
}

document.onclick = hideAllDivs;