// Mundimenus
// (c) 2002 Fernando Sengáriz
// Dpto. Diseño
// Mundivía, S.A.
// 01-04-2002

// funcionalidad en ejecución

var MMVmItemsTamXletra = 6;
var MMVmItemsSepara = 14;
var MMVmNombre = "";

var MMVmd_opc_m = 0;
var MMVmd_opc_1 = 0;
var MMVmd_opc_2 = 0;
var MMVmd_opc_3 = 0;
var MMVmd_opc_4 = 0;

function MMMactiva_m_0 () {
 if (MMVmd_opc_m!=0) { MMMactiva(MMVmd_opc_m,false,'CSSmFondoOn','CSSmFondoOff',0); MMVmd_opc_m = 0; }
}
function MMMactiva_m_1 (celda) {
 MMVfdm.muestra();
 if (MMVmd_opc_m!=0) { MMMactiva(MMVmd_opc_m,false,'CSSmFondoOn','CSSmFondoOff',0); MMVmd_opc_m = 0; }
 MMMactiva(celda,true,'CSSmFondoOn','CSSmFondoOff',0);
 MMVmd_opc_m = celda;
}
function MMMactiva_0 () {
 if (MMVmd_opc_1!=0) { MMMactiva(MMVmd_opc_1,false,'CSSsmFondoOn','CSSsmFondoOff'); MMVmd_opc_1 = 0; }
 if (MMVmd_opc_2!=0) { MMMactiva(MMVmd_opc_2,false,'CSSsmFondoOn','CSSsmFondoOff'); MMVmd_opc_2 = 0; }
 if (MMVmd_opc_3!=0) { MMMactiva(MMVmd_opc_3,false,'CSSsmFondoOn','CSSsmFondoOff'); MMVmd_opc_3 = 0; }
 if (MMVmd_opc_4!=0) { MMMactiva(MMVmd_opc_4,false,'CSSsmFondoOn','CSSsmFondoOff'); MMVmd_opc_4 = 0; }
}
function MMMactiva_1 (celda) {
 if (MMVmd_opc_1!=0) { MMMactiva(MMVmd_opc_1,false,'CSSsmFondoOn','CSSsmFondoOff'); MMVmd_opc_1 = 0; }
 if (MMVmd_opc_2!=0) { MMMactiva(MMVmd_opc_2,false,'CSSsmFondoOn','CSSsmFondoOff'); MMVmd_opc_2 = 0; }
 if (MMVmd_opc_3!=0) { MMMactiva(MMVmd_opc_3,false,'CSSsmFondoOn','CSSsmFondoOff'); MMVmd_opc_3 = 0; }
 if (MMVmd_opc_4!=0) { MMMactiva(MMVmd_opc_4,false,'CSSsmFondoOn','CSSsmFondoOff'); MMVmd_opc_4 = 0; }
 MMMactiva(celda,true,'CSSsmFondoOn','CSSsmFondoOff');
 MMVmd_opc_1 = celda;
}
function MMMactiva_2 (celda) {
 if (MMVmd_opc_2!=0) { MMMactiva(MMVmd_opc_2,false,'CSSsmFondoOn','CSSsmFondoOff'); MMVmd_opc_2 = 0; }
 if (MMVmd_opc_3!=0) { MMMactiva(MMVmd_opc_3,false,'CSSsmFondoOn','CSSsmFondoOff'); MMVmd_opc_3 = 0; }
 if (MMVmd_opc_4!=0) { MMMactiva(MMVmd_opc_4,false,'CSSsmFondoOn','CSSsmFondoOff'); MMVmd_opc_4 = 0; }
 MMMactiva(celda,true,'CSSsmFondoOn','CSSsmFondoOff');
 MMVmd_opc_2 = celda;
}
function MMMactiva_3 (celda) {
 if (MMVmd_opc_3!=0) { MMMactiva(MMVmd_opc_3,false,'CSSsmFondoOn','CSSsmFondoOff'); MMVmd_opc_3 = 0; }
 if (MMVmd_opc_4!=0) { MMMactiva(MMVmd_opc_4,false,'CSSsmFondoOn','CSSsmFondoOff'); MMVmd_opc_4 = 0; }
 MMMactiva(celda,true,'CSSsmFondoOn','CSSsmFondoOff');
 MMVmd_opc_3 = celda;
}
function MMMactiva_4 (celda) {
 if (MMVmd_opc_4!=0) { MMMactiva(MMVmd_opc_4,false,'CSSsmFondoOn','CSSsmFondoOff'); MMVmd_opc_4 = 0; }
 MMMactiva(celda,true,'CSSsmFondoOn','CSSsmFondoOff');
 MMVmd_opc_4 = celda;
}
function MMMactiva (src,accion,estiloOn, estiloOff) {
 if (accion) {
 	src.style.cursor = 'hand';
 	src.className = estiloOn;
 } else {
 	src.style.cursor = 'default';
 	src.className = estiloOff;
 }
}
function MMMreset () {
 MMMactiva_0();
 MMMactiva_m_0();
 MMMmuestra_1(0);
 document.all.cMMVfdm.style.cursor='default';
 MMVfdm.oculta();
}

var MMVmPosX  = 0;
var MMVmPosY  = 0;
var MMVmTamX  = 0;
var MMVmTamY  = 0;
var MMVmdPosX = 0;
var MMVmdPosY = 0;
var MMVmdTamX = 0;
var MMVmdTamY = 0;

var MMVcargado = false;

var MMVact_1 = 0;
var MMVact_2 = 0;
var MMVact_3 = 0;
var MMVact_4 = 0;

function MMMmuestra_1 (cual) {
 if (!MMVcargado) return;
 if (cual != 0 ) MMVfdm.muestra();
 			//else MMVfdm.oculta();
 if (MMVact_1 != 0) MMVaCapas[MMMgetPosMenu(MMVact_1)].oculta();
 if (MMVact_2 != 0) MMVaCapas[MMMgetPosMenu(MMVact_1+"_"+MMVact_2)].oculta();
 if (MMVact_3 != 0) MMVaCapas[MMMgetPosMenu(MMVact_1+"_"+MMVact_2+"_"+MMVact_3)].oculta();
 if (MMVact_4 != 0) MMVaCapas[MMMgetPosMenu(MMVact_1+"_"+MMVact_2+"_"+MMVact_3+"_"+MMVact_4)].oculta();
 if (cual!=0) MMVaCapas[MMMgetPosMenu(cual)].muestra();
 MMVact_1 = cual;
 MMVact_2 = 0;
 MMVact_3 = 0;
 MMVact_4 = 0;
}
function MMMmuestra_2 (cual) {
 if (!MMVcargado) return;
 if (MMVact_2 != 0) MMVaCapas[MMMgetPosMenu(MMVact_1+"_"+MMVact_2)].oculta();
 if (MMVact_3 != 0) MMVaCapas[MMMgetPosMenu(MMVact_1+"_"+MMVact_2+"_"+MMVact_3)].oculta();
 if (MMVact_4 != 0) MMVaCapas[MMMgetPosMenu(MMVact_1+"_"+MMVact_2+"_"+MMVact_3+"_"+MMVact_4)].oculta();
 if (cual!=0) MMVaCapas[MMMgetPosMenu(MMVact_1 + "_" + cual)].muestra();
 MMVact_2 = cual
 MMVact_3 = 0;
 MMVact_4 = 0;
}
function MMMmuestra_3 (cual) {
 if (!MMVcargado) return;
 if (MMVact_3 != 0) MMVaCapas[MMMgetPosMenu(MMVact_1+"_"+MMVact_2+"_"+MMVact_3)].oculta();
 if (MMVact_4 != 0) MMVaCapas[MMMgetPosMenu(MMVact_1+"_"+MMVact_2+"_"+MMVact_3+"_"+MMVact_4)].oculta();
 if (cual!=0) MMVaCapas[MMMgetPosMenu(MMVact_1+"_"+MMVact_2+"_"+cual)].muestra();
 MMVact_3 = cual;
 MMVact_4 = 0;
}
function MMMmuestra_4 (cual) {
 if (!MMVcargado) return;
 if (MMVact_4 != 0) MMVaCapas[MMMgetPosMenu(MMVact_1+"_"+MMVact_2+"_"+MMVact_3+"_"+MMVact_4)].oculta();
 if (cual!=0) MMVaCapas[MMMgetPosMenu(MMVact_1+"_"+MMVact_2+"_"+MMVact_3+"_"+cual)].muestra();
 MMVact_4 = cual;
}
function MMMmuestra_5 (cual) {
}
function n () { self.focus(); }

// funcionalidad para creación

var MMVvMenuNivelMax;
var MMVaMenuItems = new Array(20);
var MMVaMenus = new Array(100);
var MMVaSMItems = new Array(300);
var MMVaCapas = new Array(100);
var MMVvMenuItems = 0;
var MMVvMenus = 0;
var MMVvSMItems = 0;

function MMMcadenaCortaATamanio (cadena,tamanio) {
 var i,l,t;
 t = 0;
 for (i=0; i<cadena.length; i++) {
	t += MMMletraCalculaTamanio(cadena.substr(i,1));
	if (t>tamanio) return(cadena.substr(0,i)+"...");
 }
 return(cadena);
}
function MMMcadenaCalculaTamanio (cadena) {
 var i,l,t;
 t = 0;
 for (i=0; i<cadena.length; i++) {
	t += MMMletraCalculaTamanio(cadena.substr(i,1));
 }
 //alert(t);
 return(t);
}
function MMMletraCalculaTamanio (letra) {
 var tt;
 
 tt = 4;
 l = "0123456789";
 if (l.indexOf(letra,0) != -1) tt = 6;

 l = "mw";
 if (l.indexOf(letra,0) != -1) tt = 8;
 l = "aábdeéghnñoópquúüvxy";
 if (l.indexOf(letra,0) != -1) tt = 6;
 l = "cksz";
 if (l.indexOf(letra,0) != -1) tt = 5;
 l = "frt-.";
 if (l.indexOf(letra,0) != -1) tt = 4;
 l = " j,";
 if (l.indexOf(letra,0) != -1) tt = 3;
 l = "iíl";
 if (l.indexOf(letra,0) != -1) tt = 2;

 l = "W";
 if (l.indexOf(letra,0) != -1) tt = 9;
 l = "MOÓQ";
 if (l.indexOf(letra,0) != -1) tt = 8;
 l = "AÁCDGHNÑRUÚÜ";
 if (l.indexOf(letra,0) != -1) tt = 7;
 l = "BEÉFKPSTVXYZ";
 if (l.indexOf(letra,0) != -1) tt = 6;
 l = "JL";
 if (l.indexOf(letra,0) != -1) tt = 5;
 l = "I";
 if (l.indexOf(letra,0) != -1) tt = 4;
 //alert(tt);
 return(tt);
}

function MMnewMenu () {
}
function MMnewMenuItem (texto,link,submenu,tamX) {
 ++MMVvMenuItems;
 MMVaMenuItems[MMVvMenuItems] = new Array(4);
 MMVaMenuItems[MMVvMenuItems][0] = texto;
 MMVaMenuItems[MMVvMenuItems][1] = link;
 MMVaMenuItems[MMVvMenuItems][2] = submenu;
 MMVaMenuItems[MMVvMenuItems][3] = MMMcadenaCalculaTamanio(texto);
 MMVaMenuItems[MMVvMenuItems][3] = MMVmTamX;
}
function MMnewSubMenu (menu) {
 MMVaMenus[++MMVvMenus] = menu; 
}
function MMnewSubMenuItem (menu,texto,link,submenu,textoCorto) {
 textoCorto = (textoCorto!=null) ? textoCorto : texto;
 aux = new Array(5);
 aux[0] = menu;
 aux[1] = texto;
 aux[2] = link;
 aux[3] = submenu;
 aux[4] = textoCorto;
 MMVaSMItems[++MMVvSMItems] = aux;
}
function MMMcreaMenus () {
 var cadena = "";
 var ii = 0;
 cadena += MMMescribeMenu();
 for (ii=1; ii<=MMVvMenus; ii++) {
	if (MMMgetNivelMenu(MMVaMenus[ii]) < MMVvMenuNivelMax+1) cadena += MMMescribeSubMenu(MMVaMenus[ii]);
 }
 cadena += MMMescribeAuxiliares();

 return( cadena );
}
function MMMgetNivelMenu (menu) {
 nomNivel = menu.split("_");
 return(nomNivel.length);
}
function MMMgetPosMenu (menu) {
 var i = 0;
 for (i=1; i<=MMVvMenus; i++) {
	if (MMVaMenus[i] == menu) return(i);
 }
 return(0);
}
function MMMmd_calculaPosX (pos) {
 var i = 0;
 var aux = 0;
 for (i=1; i<=MMVvMenuItems; i++) {
	if (MMVaMenuItems[i][2]=="" || parseInt(MMVaMenuItems[i][2])<=parseInt(pos)) {
		aux += MMVaMenuItems[i][3] + 9 + 4;
		aux += MMVmItemsSepara;
	} else break;
 }
 return(aux);
}
function MMMescribeMenu () {
 var cadena = "";

 cadena += "<div id='cM' style='position:absolute; left:0px; top:0px; z-index:110; visibility: visible'>";
 cadena += "	<table border='0' cellspacing='0' cellpadding='0'><tr><td>";
 cadena += "	<table border='0' cellspacing='0' cellpadding='0'>";
 cadena += "	<tr> ";

 for (i=1; i<=MMVvMenuItems; i++) {
	sm_css = "CSSmItems";

	if (MMVaMenuItems[i][2] != "") m_am = MMVaMenuItems[i][2];
	      		       else m_am = 0;
    	sm_link = MMVaMenuItems[i][1];
    	if (sm_link != "") sm_link = "location.href='"+sm_link+"'";
    		      else sm_link = "self.focus()";
	cadena += "	  <td id='MMfm_"+i+"' align='left' valign='middle' class='CSSmFondoOff' width='"+(MMVaMenuItems[i][3]+MMVmItemsSepara-1)+"' height='"+MMVmTamY+"' onMouseOver=\"MMMactiva_m_1(this); MMMmuestra_1("+m_am+"); window.status='"+MMVaMenuItems[i][0]+"'\" onMouseout=\"window.status=''\" onClick="+sm_link+">";
	cadena += "	  		<font class='"+sm_css+"'><img src='imagenes/icoMenuOpciones.gif' width='9' height='9' border='0'><img src='imagenes/trans.gif' width='4' height='1'>"+MMVaMenuItems[i][0]+"<br>";
	cadena += "	  </td>";
	cadena += "	  <td><img src='imagenes/trans.gif' width='"+MMVmItemsSepara+"' height='1'><br></td>";
 }

 cadena += "	  <td><img src='imagenes/trans.gif' width='1' height='"+this.MMVmTamY+"'><br></td>";
 cadena += "	</tr>";
 cadena += "	</table>";
 cadena += "	<br></td></tr></table>";
 cadena += "</div>";

 return( cadena );
}
function MMMescribeSubMenu (menu) {
 var cadena = "";
 numNivel = MMMgetNivelMenu(menu);

 cadena += "<div id='cMD_"+menu+"' style='position:absolute; left:0px; top:0px; width:"+MMVmdTamX+"px; z-index:120; visibility: hidden'>";
 // esto por el fondo de la celda de las opciones del menu
 cadena += "        <table border='0' width='100%' cellspacing='0' cellpadding='1'><tr><td class='CSSmenuBorde'>";
 cadena += "        <table border='0' width='100%' cellspacing='0' cellpadding='0'>";

 j = 0;
 for (i=1; i<=MMVvSMItems; i++) {
    if (MMVaSMItems[i][0] == menu) {
    	j++;
    	sm_link = "";
	sm_css = "CSSsmItems";
	sm_msi = "";
	sm_asm = "";
	sm_smn = 0;

	if (MMVaSMItems[i][2] != "") {
		sm_link = "location.href='"+MMVaSMItems[i][2]+"'";
	}
	if (MMVaSMItems[i][3] != "") {
		if (numNivel < MMVvMenuNivelMax) sm_smn = j;
	}
	if (sm_smn != 0) {
		if (sm_link == "") sm_link = "MMMmuestra_"+(numNivel+1)+"("+j+")";
		sm_msi = "imagenes/icoMenuMas.gif";
	}
	if (MMVaSMItems[i][2] != "" || MMVaSMItems[i][3] != 0) {
		sm_asm = " onMouseOver=\"MMMactiva_"+numNivel+"(this); MMMmuestra_"+(numNivel+1)+"("+sm_smn+"); window.status='"+this.MMVaSMItems[i][1]+"'\" onMouseout=\"window.status=''\" onClick="+sm_link;
	} else {
		sm_css = "CSSsmItemsOff";
		sm_asm = " class='CSSsmItemsOff'";
	}
		
	cadena += "        <tr><td height='"+MMVmdTamY+"' "+sm_asm+" id='MMfsm_"+i+"' class='CSSsmFondoOff' style='padding-left: 6px;'>";
	if (sm_msi != "") {
		cadena += "             <img src='"+sm_msi+"' width='4' height='14' align='right'>";
	}
	var cadenaAux;
	cadenaAux = MMMcadenaCortaATamanio(MMVaSMItems[i][4],MMVmdTamX-30);
	cadena += "			"+cadenaAux+"<br>";
	cadena += "        </td></tr>";
    }
 }

 cadena += "        </table>";
 cadena += "        </td></tr></table>";
 cadena += "</div>";

 return( cadena );
}
var strMsg = "";
function MMMcreaCapas () {
 var ii = 0;
 for (ii=1; ii<=MMVvMenus; ii++) {
	menu = MMVaMenus[ii];
	nomNivel = menu.split("_");
	numNivel = nomNivel.length;
	if (numNivel < MMVvMenuNivelMax+1)	{
		laCapa = "cMD_"+menu;
		MMVaCapas[ii] = new MundiCapa(laCapa);
		MMVaCapas[ii].mueveA(MMVmdPosX+MMMmd_calculaPosX(nomNivel[0]-1)+((MMVmdTamX-20)*(numNivel-1)),MMVmTamY+MMVmdPosY+((numNivel>1)?(MMVmdTamY*(nomNivel[1]-1))+0:0)+((numNivel>2)?(MMVmdTamY*(nomNivel[2]-1)):0)+((numNivel>3)?(MMVmdTamY*(nomNivel[3]-1)):0));
		//strMsg += "capa: " + laCapa + "\n" + "MMMmd_calculaPosX(nomNivel[0]-1): " + MMMmd_calculaPosX(nomNivel[0]-1) + "\n" + "((MMVmdTamX-20)*(numNivel-1)): " + ((MMVmdTamX-20)*(numNivel-1)) + "\n\n";
	}
 }
 //alert(strMsg);
}
function MMMescribeAuxiliares () {
 var cadena = "";
 cadena += "<div id='cMMVfdm' style='position:absolute; width:100%; height:100%; z-index:101; left: 0px; top: 0px;; visibility: visible'>";
 //cadena += "<table id='MMVfdmi' width='100%' height='100%'><tr><td width='100%' height='100%' onClick='MMMreset()'></td></tr></table>";
 cadena += "	<img id='MMVfdmi' src='imagenes/trans.gif' border='0' onMouseover='MMMreset()'><br>";
 cadena += "</div>";
 return( cadena );
}
function MMMsetPosMenu (mPosX,mPosY,smPosX,smPosY) {
 MMVmPosX = mPosX;
 MMVmPosY = mPosY;
 MMVmdPosX = smPosX;
 MMVmdPosY = smPosY;
}
function MMMsetTamMenu (mTamX,mTamY,smTamX,smTamY,smMaxLetras) {
 MMVmTamX = mTamX;
 MMVmTamY = mTamY;
 MMVmdTamX = smTamX;
 MMVmdTamY = smTamY;
 MMVmdMaxLetras = smMaxLetras;
}
function MMMsetPosMenuPersiana (mPosX,mPosY) {}
function MMMsetTamMenuPersiana (mTamX,mTamY) {}
function MMMmenuInicializa () {
 var cadena = "";
 cadena += "<div id='cMenuContenedor' style='position:absolute; z-index:120; visibility: hidden'>";
 cadena += "</div>";
 document.write(cadena);
}
function MMMajustaMenu () {
 document.all.MMVfdmi.width = window.document.body.clientWidth-10;
 document.all.MMVfdmi.height = window.document.body.clientHeight-10;
}

function MMiniciar () {
 MMVvMenuNivelMax = 4;
 
 // crear capas
 mcMenuContenedor = new MundiCapa("cMenuContenedor");
 mcMenuContenedor.mueveA(MMVmPosX,MMVmPosY);
 mcMenuContenedor.ajustaA(window.document.body.scrollWidth-MMVmPosX);
 mcMenuContenedor.escribe(MMMcreaMenus());
 mcMenuContenedor.muestra();

 MMVfdm = new MundiCapa("cMMVfdm");
 MMVfdm.mueveA(-MMVmPosX,-MMVmPosY);
 MMVfdm.oculta();
 MMMajustaMenu();

 MMMcreaCapas();
 MMVcargado = true;
}
window.onresize = MMMajustaMenu;

elMenu = "";
MMMmenuInicializa();
