// Java Script manejo de menues
<!-- Original:  Fredrik Fridsten (fredrik.fridsten@home.se) -->
<!-- Web Site:  http://hem.passagen.se/dred -->

<!-- Modificado y extendido por Daniel Negrotto -->
<!-- e-mail:  dnegrott@yahoo.com -->

<!-- Begin

// NOTAS
// The input variables to the toggle function are the number of the SubMenu to open/close,
// starting with 0, and the number of pixels to move the objects below.
// For example toggle(1,60) opens/closes the second SubMenu and moves the objects below 60 pixels.


var usePictures = 1; // usa imagenes? 1 = si, 0 = no

//var nom = 8; // Cantidad de menues
//var configSubmenues = new Array(0,5,0,0,3,0,0,0,0); 
						// Array con la cantidad de subsubmenues por cada submenu
//var TotSubmenuesAnt = new Array(0,0,0,0,0,0,0,0,0); 
						// Array con la cantidad de subsubmenues por cada submenu
//var AltoSubSubmenues = new Array(0,33,17,161,17,17,0,177,98); 
						// Array con el alto de cada subsubmenue
//var AltoSubmenues = new Array(0,90,227,145,230,98,100,146,18); 
						// Array con el alto de cada submenu						
var ttls = new Array(); // Array para los objetos titulos
var subs = new Array(); // Array para los objetos Submenu
var ssubs = new Array(); // Array para los objetos SubSubMenu
var imgpicopen = "/Hacienda/opened.gif";
var imgpicclose = "/Hacienda/closed.gif";
var pantalla;
var fondo;
var borde;
var lastn;
var lastmove;
var lastns;
var lastmoves;
var snom; // Cantidad de submenues
var visible;
var hidden;
var ladoizq = 0;  		// left de la ventana

isNS4 = (document.layers) ? 1 : 0;
isIE4 = (document.all) ? 1 : 0;
isW3C = (document.getElementById && !document.all) ? 1 : 0;


if (document.layers) {
visible = 'show';
hidden = 'hide';
}
else
if (document.all) {
visible = 'visible';
hidden = 'hidden';
} else
if (isW3C) {
visible = 'visible';
hidden = 'hidden';
usePictures = 0;
}

snom = 0;
for (var i = 1; i <= nom; i++) {
	ttls[i] = ('TituloMenu' + i);
	subs[i] = ('SubMenu' +i);
	snom = snom + configSubmenues[i];
}
k=0;
TotSubmenuesAnt[1] = 0;
for (var i = 2; i <= snom; i++) {
	TotSubmenuesAnt[i] = configSubmenues[i-1] + TotSubmenuesAnt[i-1];
}
	
for (var i = 1; i <= nom; i++) {
	for (var j = 1; j <= configSubmenues[i]; j++) {
		k++;
		ssubs[k] = ('SubMenu' +i+'to'+j);
	}
}

fondo = 'FondoMenu';
borde = 'BordeMenu';
pantalla = 'Pantalla';


function CambiarEntorno(move, signo) {
if (signo == '+') {
	if (document.layers) { // Aumenta el alto
		document.layers[fondo].height += move;
		document.layers[borde].height += move;
		document.layers[pantalla].top += move;
	}
	else 	
	if (document.all) { 
		document.all(fondo).style.pixelHeight += move;
		document.all(borde).style.pixelHeight += move;
		document.all(pantalla).style.pixelTop += move;
	}
	else
	if (isW3C) {	
		var tfondo = document.getElementById(fondo).style;
		var tborde = document.getElementById(borde).style;
		var tpantalla = document.getElementById(pantalla).style;
		var tmpfondo = parseInt(tfondo.height);
		var tmpborde = parseInt(tborde.height);
		var tmppantalla = parseInt(tpantalla.top);
 		tfondo.height = (tmpfondo + move) + "px";
 		tborde.height = (tmpborde + move) + "px";
 		tpantalla.top = (tmppantalla + move) + "px";
	}

}
else
{
	if (document.layers) { // Decrementa el alto
		document.layers[fondo].height -= move;
		document.layers[borde].height -= move;
		document.layers[pantalla].top -= move;
	} else
	if (document.all) { 
		document.all(fondo).style.pixelHeight -= move;
		document.all(borde).style.pixelHeight -= move;
		document.all(pantalla).style.pixelTop -= move;
	}
	else
	if (isW3C) {	
		var tfondo = document.getElementById(fondo).style;
		var tborde = document.getElementById(borde).style;
		var tpantalla = document.getElementById(pantalla).style;
		var tmpfondo = parseInt(tfondo.height);
		var tmpborde = parseInt(tborde.height);
		var tmppantalla = parseInt(tpantalla.top);
 		tfondo.height = (tmpfondo - move) + "px";
 		tborde.height = (tmpborde - move) + "px";
 		tpantalla.top = (tmppantalla - move) + "px";
	}
}
}

function mostrarsubmenues(n) {
for (var i = 1; i <= configSubmenues[n]; i++) {
	menu = ('SubMenu' + n+'to'+i);
	if (document.layers) {
	SubMenu = document.layers[menu];
	}
	else if (document.all) {
	SubMenu = document.all(menu).style;
	}
	else if (isW3C) {
	SubMenu = document.getElementById(menu).style;
	}
	SubMenu.visibility = visible;
}
}

function ocultarsubmenues(n) {
	for (var i = 1; i <= configSubmenues[n]; i++) {
		menu = ('SubMenu' + n+'to'+i);
		if (document.layers) {
		SubMenu = document.layers[menu];
		}
		else if (document.all) {
		SubMenu = document.all(menu).style;
		}
		else if (isW3C) {
		SubMenu = document.getElementById(menu).style;
		}
		SubMenu.visibility = hidden;
	}
}

function picopen(n) {
var TituloMenu = ('TituloMenu' + n);
var pic = ('pic' + n);
if (document.layers) {
	document.layers[TituloMenu].document.images[pic].src = imgpicopen;
} else if (document.all) {
	document.all(pic).src = imgpicopen;
} else if (isW3C) {
	document.getElementById(pic).src = imgpicopen;
}

}

function subpicopen(n) {
var TituloSMenu = ('SubMenu' + n);
var pic = ('spic' + n);
if (document.layers) {
document.layers[TituloSMenu].document.images[pic].src = imgpicopen;
}
else if (document.all) {
//document.all(pic).src = imgpicopen;
   }
else if (isW3C) {
	document.getElementById(pic).src = imgpicopen;
}
}

function picclose(n) {
var TituloMenu = ('TituloMenu' + n);
var pic = ('pic' + n);
if (document.layers) {
document.layers[TituloMenu].document.images[pic].src = imgpicclose;
}
else if (document.all) {
document.all(pic).src = imgpicclose;
   }
else if (isW3C) {
	document.getElementById(pic).src = imgpicclose;

	}
}

function subpicclose(n) {
	TituloSMenu = ('SubMenu' + n);
	pic = ('spic' + n);
	if (document.layers) {
		document.layers[TituloSMenu].document.images[pic].src = imgpicclose;
	}
	else if (document.all) {
//		document.all(pic).src = imgpicclose;
	}
	else if (isW3C) {
		document.getElementById(pic).src = imgpicclose;
	}
}

lastn = (nom + 1);
lastmove = 0;

function lasttoggle(n,move) {
sublasttoggle(lastns,lastmoves);
if (n <= nom) {
menu = ('SubMenu' + n);
if (document.layers) {
SubMenu = document.layers[menu];
}
else if (document.all) {
SubMenu = document.all(menu).style;
}
else if (isW3C) {
SubMenu = document.getElementById(menu).style;
}
if (SubMenu.visibility.toLowerCase() == visible) {
SubMenu.visibility = hidden;
ocultarsubmenues(n);
if (usePictures) picclose(n);
CambiarEntorno(move, '-');
for (var i = (n+1); i <= nom; i++) {
if (document.layers) {
document.layers[ttls[i]].top -= move;
document.layers[subs[i]].top -= move;
}
else if (document.all) {
document.all(ttls[i]).style.pixelTop -= move;
document.all(subs[i]).style.pixelTop -= move;
            }
else if (isW3C) {
		var tit = document.getElementById(ttls[i]).style;
		var subm = document.getElementById(subs[i]).style;
		var tmptit = parseInt(tit.top);
		var tmpsub = parseInt(subm.top);
		tit.top = (tmptit - move) + "px";
		subm.top = (tmpsub - move) + "px";

}
         }
      }
   }
}
function toggle(n) {
var move;
sublasttoggle(lastns,lastmoves);
move = AltoSubmenues[n];
//if (lastn != n) {
//	document.frmPrincipal.OPCIONMENU.value = n;
//	document.frmPrincipal.OPCIONSUBMENU.value = '';
//}
menu = ('SubMenu' + n);
if (document.layers) {
  SubMenu = document.layers[menu];
}
else 
if (document.all) {
  SubMenu = document.all(menu).style;
}
else 
if (isW3C) {	
  SubMenu = document.getElementById(menu).style;
}
if (SubMenu.visibility.toLowerCase() == visible) {
  SubMenu.visibility = hidden;
  ocultarsubmenues(n);
  if (usePictures) picclose(n);
  CambiarEntorno(move, '-');
  for (var i = (n+1); i <= nom; i++) {
	if (document.layers) {
		document.layers[ttls[i]].top -= move;
		document.layers[subs[i]].top -= move;
	} else
	if (document.all) {
		document.all(ttls[i]).style.pixelTop -= move;
		document.all(subs[i]).style.pixelTop -= move;
	      }
	else 
	if (isW3C) {
		var tit = document.getElementById(ttls[i]).style;
		var subm = document.getElementById(subs[i]).style;
		var tmptit = parseInt(tit.top);
		var tmpsub = parseInt(subm.top);
		tit.top = (tmptit - move) + "px";
		subm.top = (tmpsub - move) + "px";
	}
  }
}
else {
SubMenu.visibility = visible;
mostrarsubmenues(n);
if (usePictures) picopen(n);
if (lastn != n) {
	lasttoggle(lastn,lastmove);
}
CambiarEntorno(move, '+');
for (var i = (n+1); i <= nom; i++) {
	if (document.layers) {
		document.layers[ttls[i]].top += move;
		document.layers[subs[i]].top += move;
	} else
	if (document.all) {
		document.all(ttls[i]).style.pixelTop += move;
		document.all(subs[i]).style.pixelTop += move;
	}
	else 
	if (isW3C) {
		var tit = document.getElementById(ttls[i]).style;
		var subm = document.getElementById(subs[i]).style;
		var tmptit = parseInt(tit.top);
		var tmpsub = parseInt(subm.top);
		tit.top = (tmptit + move) + "px";
		subm.top = (tmpsub + move) + "px";
        }
}
}

lastn = n;
lastmove = move;
}

function sublasttoggle(n,move) {
if (n <= snom) {
	ssubmenu = ('SubSubMenu' + n);
	if (document.layers) {
		SubMenu = document.layers[ssubmenu];
	}
	else if (document.all) {
		SubMenu = document.all(ssubmenu).style;
	} else
	if (isW3C) {
		SubMenu = document.getElementById(ssubmenu).style;
	}
if (SubMenu.visibility.toLowerCase() == visible) {
SubMenu.visibility = hidden;
if (usePictures) subpicclose(n); 
CambiarEntorno(move, '-');

for (var i = (lastn+1); i <= nom; i++) {
	if (document.layers) {
		document.layers[ttls[i]].top -= move;
		document.layers[subs[i]].top -= move;
	}
	else if (document.all) {
		document.all(ttls[i]).style.pixelTop -= move;
		document.all(subs[i]).style.pixelTop -= move;
        } 
	else if (isW3C) {
		var tit = document.getElementById(ttls[i]).style;
		var subm = document.getElementById(subs[i]).style;
		var tmptit = parseInt(tit.top);
		var tmpsub = parseInt(subm.top);
		tit.top = (tmptit - move) + "px";
		subm.top = (tmpsub - move) + "px";
	}
    }
for (var i = (n+1); i <= (TotSubmenuesAnt[lastn]+configSubmenues[lastn]); i++) {
	if (document.layers) {
		document.layers[ssubs[i]].top -= move;
	}
	else if (document.all) {
		document.all(ssubs[i]).style.pixelTop -= move;
	    }
	else if (isW3C) {
		var subm = document.getElementById(ssubs[i]).style;
		var tmpsub = parseInt(subm.top);
		subm.top = (tmpsub - move) + "px";
	}
}
}
}
}

function subtoggle(n) {
var move, moves;
move = AltoSubmenues[n];
moves = AltoSubSubmenues[n];
//if (lastns != n) {
//	document.frmPrincipal.OPCIONSUBMENU.value = n;
//}

menu = ('SubMenu' + lastn);
ssubmenu = ('SubSubMenu' + n);
if (document.layers) {
SubMenu = document.layers[menu];
}
else if (document.all) {
SubMenu = document.all(menu).style;
}
else if (isW3C) {
SubMenu = document.getElementById(menu).style;
}

if (document.layers) {
SubSubMenu = document.layers[ssubmenu];
}
else if (document.all) {
SubSubMenu = document.all(ssubmenu).style;
} 
else if (isW3C) {
SubSubMenu = document.getElementById(ssubmenu).style;
}

if (SubSubMenu.visibility.toLowerCase() == visible) {
	SubSubMenu.visibility = hidden;
	if (usePictures) subpicclose(n);
	CambiarEntorno(moves, '-');
	for (var i = (n+1); i <= (TotSubmenuesAnt[lastn]+configSubmenues[lastn]); i++) {
	if (document.layers) {
		document.layers[ssubs[i]].top -= moves;
	}
	else if (document.all) {
			document.all(ssubs[i]).style.pixelTop -= moves;
	      }
	else if (isW3C) {
		var subm = document.getElementById(ssubs[i]).style;
		var tmpsub = parseInt(subm.top);
		subm.top = (tmpsub - moves) + "px";
	      }

	}
	for (var i = (lastn+1); i <= nom; i++) {
		if (document.layers) {
			document.layers[ttls[i]].top -= moves;
			document.layers[subs[i]].top -= moves;
		}
		if (document.all) {
			document.all(ttls[i]).style.pixelTop -= moves;
			document.all(subs[i]).style.pixelTop -= moves;
	   	 }
		if (isW3C) {
			var tit = document.getElementById(ttls[i]).style;
			var subm = document.getElementById(subs[i]).style;
			var tmptit = parseInt(tit.top);
			var tmpsub = parseInt(subm.top);
			tit.top = (tmptit - moves) + "px";
			subm.top = (tmpsub - moves) + "px";
	      	}
	}
	}
else {
	SubSubMenu.visibility = visible;
	if (usePictures) subpicopen(n);
	if (lastns != n) {
		sublasttoggle(lastns,lastmoves);
	}
	CambiarEntorno(moves, '+');
	for (var i = (n+1); i <= (TotSubmenuesAnt[lastn]+configSubmenues[lastn]); i++) {
		if (document.layers) {
			document.layers[ssubs[i]].top += moves;
		}
		if (document.all) {
			document.all(ssubs[i]).style.pixelTop += moves;
	    	}
		if (isW3C) {
			var subm = document.getElementById(ssubs[i]).style;
			var tmpsub = parseInt(subm.top);
			subm.top = (tmpsub + moves) + "px";

	      	}
   	}
	for (var i = (lastn+1); i <= nom; i++) {
		if (document.layers) {
			document.layers[ttls[i]].top += moves;
			document.layers[subs[i]].top += moves;
		}
		if (document.all) {
			document.all(ttls[i]).style.pixelTop += moves;
			document.all(subs[i]).style.pixelTop += moves;
		    }
		if (isW3C) {
			var tit = document.getElementById(ttls[i]).style;
			var subm = document.getElementById(subs[i]).style;
			var tmptit = parseInt(tit.top);
			var tmpsub = parseInt(subm.top);
			tit.top = (tmptit + moves) + "px";
			subm.top = (tmpsub + moves) + "px";
	      	}

   	}
}
lastns = n;
lastmoves = moves;
}
