First commit 18/08/2000

This commit is contained in:
2021-09-12 22:40:30 +02:00
commit e721637efc
531 changed files with 16045 additions and 0 deletions

177
addons/menu_bar/custom.js Normal file
View File

@ -0,0 +1,177 @@
//UDMv3.1
//**DO NOT EDIT THIS *****
if (!exclude) { //********
//************************
///////////////////////////////////////////////////////////////////////////
//
// ULTIMATE DROPDOWN VERSION 3.0.3 by Brothercake
// http://www.brothercake.com/dropdown/
//
// Link-wrapping routine by Brendan Armstrong
//
// KDE modifications by David Joham
//
// Opera 5 reload/resize routine by Michael Wallner
// http://www.wallner-software.com/
//
///////////////////////////////////////////////////////////////////////////
// *** POSITIONING AND STYLES *********************************************
var menuALIGN = "right"; // alignment
var absLEFT = 5; // absolute left or right position (if not center)
var absTOP = 0; // absolute top position
var staticMENU = false; // static positioning mode (ie5/6 and ns4 only)
var stretchMENU = false; // show empty cells
var showBORDERS = false; // show empty cell borders
var baseHREF = baseA+"addons/menu_bar/"; // base path
// var baseA = "";
var zORDER = 1000; // base z-order of nav structure (not ns4)
var mCOLOR = "#0066CC"; // main nav cell color
var rCOLOR = "#1878ED"; // main nav cell rollover color
var keepLIT = true; // keep rollover color when browsing menu
var bSIZE = 1; // main nav border size
var bCOLOR = "#000000" // main nav border color
var aLINK = "#FFFFFF"; // main nav link color
var aHOVER = "#FFFF00"; // main nav link hover-color (dual purpose)
var aDEC = "none"; // main nav link decoration
var fFONT = "verdana,arial,sans serif"; // main nav font face
var fSIZE = 10; // main nav font size (pixels)
var fWEIGHT = "bold" // main nav font weight
var tINDENT = 7; // main nav text indent (if text is left or right aligned)
var vPADDING = 2; // main nav vertical cell padding
var vtOFFSET = 0; // main nav vertical text offset (+/- pixels from middle)
var vOFFSET = -1; // shift the submenus vertically
var hOFFSET = -1; // shift the submenus horizontally
var smCOLOR = "#1878ED"; // submenu cell color
var srCOLOR = "#FFFFFF"; // submenu cell rollover color
var sbSIZE = 1; // submenu border size
var sbCOLOR = "#000000" // submenu border color
var saLINK = "#FFFFFF"; // submenu link color
var saHOVER = "#FF0000"; // submenu link hover-color (dual purpose)
var saDEC = "none"; // submenu link decoration
var sfFONT = "verdana,arial,sans serif"; // submenu font face
var sfSIZE = 11; // submenu font size (pixels)
var sfWEIGHT = "normal" // submenu font weight
var stINDENT = 5; // submenu text indent (if text is left or right aligned)
var svPADDING = 2; // submenu vertical cell padding
var svtOFFSET = 0; // submenu vertical text offset (+/- pixels from middle)
var shSIZE = 3; // menu drop shadow size
var shCOLOR = "#0086DC"; // menu drop shadow color
var shOPACITY = 75; // menu drop shadow opacity (not ie4/ns4/op5)
var keepSubLIT= true; // keep submenu rollover color when browsing child menu
var chvOFFSET = 5; // shift the child menus vertically
var chhOFFSET = -3; // shift the child menus horizontally
var closeTIMER = 330; // menu closing delay time
var cellCLICK = true; // links activate on TD click
var aCURSOR = "hand"; // cursor for active links (not ns4 or op5)
var altDISPLAY = "title"; // where to display alt text
var allowRESIZE=true; // allow resize/reload
//** LINKS ***********************************************************
// WRAPPER --
function _addMainItem( url, link, width, tal, target, alt, top, left, key )
{
addMainItem( baseA+url, link, width, tal, target, alt, top, left, key );
}
function _addSubmenuItem( url, link, target, alt )
{
addSubmenuItem( baseA+url, link, target, alt );
}
function _addChildmenuItem( url, link, target, alt )
{
addChildmenuItem( baseA+url, link, target, alt );
}
// END WRAPPER
_addMainItem("","!",5,"center","","",0,0,"");
// add main link item ("url","Link name",width,"text-alignment","_target","alt text",top position,left position,"key trigger")
_addMainItem("noticias.htm","<center>Noticias</center>",80,"center","","",0,0,"");
// define submenu properties (width,"align to edge","text-alignment",v offset,h offset)
defineSubmenuProperties(150,"left","left",0,0);
// add submenu link items ("url","Link name","_target","alt text")
addSubmenuItem("","Ofertas","","");
_addSubmenuItem("promociones/index.htm","Promociones Pymes","","Promociones dirigidas especialmente a empresas");
addMainItem("","<center>Productos</center>",80,"center","","",0,0,"");
defineSubmenuProperties(150,"left","left",0,0);
_addSubmenuItem("tarifa.htm","Tarifas Light","","");
_addSubmenuItem("makeord.htm","Maqueta tu Ordenador","","Maqueta tu ordenador a medida facilmente");
_addSubmenuItem("iprod/tprodi.htm","Listado Completo","","");
addSubmenuItem("javascript:alert('Fuera de Servicio');","Cesta de la compra","","");
_addSubmenuItem("drivers.htm","Drivers","","Listado de p<>ginas con drivers de todos los productos que ofertamos");
// defineChildmenuProperties(160,"left","left",-1,-5);
//
// addChildmenuItem("entomologia/sistematica/Sistematica.htm","Filogenetica Formicidae","","");
// addChildmenuItem("http://bio.infdj.com/entomologia/sistematica/cladograma-formicidae.gif","Cladograma Formicidae","","");
_addMainItem("donde.htm","<center><3E>Donde...?</center>",80,"center","","",0,0,"");
defineSubmenuProperties(150,"left","left",0,0);
_addSubmenuItem("donde.htm","Direcciones","","Si aun no sabes donde estamos, consulta nuestro mapa");
_addSubmenuItem("camaras.htm","Video Camaras","","Visitanos On-Line, y ve lo que vemos!");
_addMainItem("cursos.htm","<center>Cursos</center>",80,"center","","",0,0,"");
defineSubmenuProperties(150,"left","left",0,0);
_addSubmenuItem("cursos.htm","Introducci<63>n","","");
_addSubmenuItem("cursos/cguiones.htm","Materias","","");
_addSubmenuItem("cursos/carchiv.htm","Documentos","","Descarga de los apuntes de clase");
addSubmenuItem("","","","");
_addSubmenuItem("cursos/cprofes.htm","Profesores","","Si tienes dudas, ponte en contacto con los profesores");
_addSubmenuItem("cursos/chorarios.htm","Horarios","","Consulta nuestros horarios");
_addMainItem("diseno.htm","<center>Dise<73>o de...</center>",80,"center","","Dise<73>amos programas, y p<>ginas web a medida",0,0,"");
defineSubmenuProperties(170,"left","left",0,0);
_addSubmenuItem("dweb.htm","P<>ginas Web","","Lance su empresa a INTERNET");
_addSubmenuItem("app.htm","Aplicaciones","","<22>Porqu<71> usar STANDARS cuando lo puede tener a MEDIDA ?");
_addSubmenuItem("app/ddemos.htm","Ejemplos y Demostraciones","","");
_addMainItem("stecnico.htm","<center>Serv. T<>cnico</center>",80,"center","","Instalaci<63>n/Reparaci<63>n/Mantenimiento de equipos inform<72>ticos", ", ",0,0,"");
defineSubmenuProperties(130,"left","left",0,0);
_addSubmenuItem("stecnico.htm","General","","Informaci<63>n General sobre nuestro SAT");
_addSubmenuItem("stecnico/local.htm","En nuestros locales","","Consulta sobre el funcionamiento de nuestros CyberCentros");
_addSubmenuItem("stecnico/faqs.htm","FAQ's","","(F)recuently (A)sked (Q)uestions <20> PUF -> [Preguntas de Uso Frecuente]");
_addMainItem("otros.htm","<center>Otros</center>",80,"center","","Instalaci<63>n/Reparaci<63>n/Mantenimiento de equipos inform<72>ticos", ", ",0,0,"");
defineSubmenuProperties(130,"right","left",0,0);
_addSubmenuItem("javascript:window.open('otros/financiar.htm','displayCalcWindow','toolbar=no,scrollbars=no, width=280, height=164')","Cal","_new","Calcula tu mismo cuanto te sale la financiaci<63>n");
_addSubmenuItem("otros/index.php","SysInfo","","Informaci<63>n sobre el estado de este servidor");
_addSubmenuItem("otros/skinwinamp.htm","Skin WinAmp","","Personaliza tu WinAmp con el skin de 'infdj.com'");
addSubmenuItem("javascript:window.open('http://www.enviasms.com/enviasms/envia.php?dominio=infdj&ext=com&tema=informatica','displaySMS','toolbar=no,location=no,titlebar=no,directories=no,status=yes,scrollbars=no,resizable=no,copyhistory=no,width=550,height=400,top=0,left=" + eval((screen.width/2)-400) + "');","SMS","","Envia mensajes a m<>viles");
//**DO NOT EDIT THIS *****
}//***********************
//************************

1
addons/menu_bar/menu.js Normal file
View File

@ -0,0 +1 @@
//UDMv3.1

859
addons/menu_bar/menu_ie.js Normal file
View File

@ -0,0 +1,859 @@
//UDMv3.1
// filter for undefined arrays
for (f=0;f<mI.length;f++){
if(!sP[f]){sP[f]=new Array(mI[f][2],mI[f][3],mI[f][3],0,0);}
if(!cP[f]){cP[f]=new Array;}
if(!sI[f]){sI[f]=new Array;}
if(!cI[f]){cI[f]=new Array;}
for (sf=0;sf<sI[f].length;sf++){
if(!cP[f][sf]){cP[f][sf]=new Array;}
if(!cI[f][sf]){cI[f][sf]=new Array;}
}}
// appreviations
var bh=baseHREF;
var ttt='<table border=0 cellpadding=0 cellspacing=';
var aL=absLEFT; aT=absTOP;
if(aT<0){aT=0;}
if(aL<0){aL=0;}
if(svPADDING<=0){svPADDING=1;}
// find the inner height of the browser window
var bHe=document.body.clientHeight;
if(mac){bHe-=15; if(ie5){bHe-=15;}}
// find background colors or images
var back_defs=new Array(mCOLOR,bCOLOR,rCOLOR,smCOLOR,sbCOLOR,srCOLOR,shCOLOR);
var useIMG=new Array(false,false,false,false,false,false);
var bks=new Array;
var mbackers=new Array;
for (b=0;b<back_defs.length;b++){
bks[b]='bgcolor='+back_defs[b];
if((back_defs[b].indexOf('.gif') != -1) || (back_defs[b].indexOf('.jpg') != -1) || back_defs[b]==''){useIMG[b]=true;}
if(useIMG[b]){
bks[b]='background="'+bh + back_defs[b]+'"';
}
if(back_defs[b]==''){bks[b]='';}
}
// link color behaviour
if(aHOVER==""){aHOVER=aLINK;}
var aRoll=aLINK;
if(rCOLOR!=""){aRoll=aHOVER;}
if(saHOVER==""){saHOVER=saLINK;}
var saRoll=saLINK;
if(srCOLOR!=""){saRoll=saHOVER;}
// convert shadow type
var shy=false;
if ((typeof shSIZE)=="string") {
shy=true;
shSIZE=Number(shSIZE);
}
// find the inner width of the browser window
var nWid=document.body.clientWidth;
var bW=nWid;
// find the nav width and horizontal space
var eS=0;
var nS=0;
for (j=0;j<mI.length;j++){
if(mI[j][2]==""){mI[j][2]=10;}
if(mI[j][1]==""){mI[j][1]='&nbsp;';
}
nS+=mI[j][2]+bSIZE;
}
eS=bW-nS-bSIZE;
if(menuALIGN!="free"&&(bW<nS)){menuALIGN="left"; aL=0; stretchMENU=false; showBORDERS=false;}
// find the nav height
var nH=fSIZE+5+vPADDING;
if (fSIZE<13) { nH+=(13-sfSIZE); }
var onH=nH;
// find wrapping links routine by brendan armstrong
var Mrows=new Array;var Nrows=new Array;
var thisNH=new Array;var thisAH=new Array;
for(i=0;i<mI.length;i++){
var thisT=mI[i][1];
var splitT=thisT.split('<br>');
Mrows[i]=splitT.length;
Nrows[i]=Mrows[i];
}
function cFun(a,b) { return b-a; }
Mrows.sort(cFun);
nH=nH*Mrows[0];
var aH=nH+(bSIZE*2);
for(i=0;i<mI.length;i++){
thisNH[i]=nH;if(menuALIGN=="free"){thisNH[i]=onH*Nrows[i];}
thisAH[i]=nH+(bSIZE*2);if(menuALIGN=="free"){thisAH[i]=thisNH[i]+(2*bSIZE);}
}
// find the subnav item height
var snH=sfSIZE+5+svPADDING;
if (sfSIZE<13) { snH+=(13-sfSIZE); }
var asH=snH+(sbSIZE*2);
// set values for different alignments
var free=false;
var xp=0;
var aP=new Array;
var aPL=new Array;
if(menuALIGN=="free"){
stretchMENU=false;
showBORDERS=false;
free=true;
for (xc=0;xc<mI.length;xc++){
aP[xc]=mI[xc][6]+aT;
aPL[xc]=mI[xc][7]+aL;
}
} else {
aP[xp]=aT;
}
var stA=0; var absR; var rL;
var ra=false;
if(menuALIGN=="right"){
ra=true;
absR=aL;
aL=eS-absR;
rL=aL;
if(rL<0){rL=0;}
aL=0;
}
var ca=false;
if(menuALIGN=="center"){
ca=true;
aL=eS / 2;
rL=aL;
if(rL<0){rL=0;}
if(mac){rL-=1;}
aL=0;
}
var la=false;
if(menuALIGN=="left"){
la=true;
absR=aL;
rL=aL;
if(stretchMENU&&absR>0){stA=absR+(2*bSIZE);}
if(rL<0){rL=0;}
if(stretchMENU){aL=0;}
}
var sL=rL;
if(ra){sL-=absR;}
if(la){sL+=absR;}
// how many main nav items
var ntl=0;
for (intl=0;intl<mI.length;intl++){if(mI[intl][1]!=""){ntl++;}}
var cSt='cursor:'+aCURSOR;
// do nothing
function doNothing(){}
// store some object references
var oR=new Array;
for (obr=0;obr<14;obr++){oR[obr]=new Array;}
var obGrid;
function storeObjects(){
obMaster=d.all["master"];
obGrid=d.all["grid"];
for (sob=0;sob<mI.length;sob++){
oR[0][sob]=d.all['roll'+sob];
oR[1][sob]=d.all['subnav'+sob];
oR[2][sob]=d.all['sublinks'+sob];
oR[3][sob]=d.all['gridblocker'+sob];
oR[12][sob]=d.all['gridLblocker'+sob];
if(shCOLOR!=""){oR[4][sob]=d.all['shadow'+sob];}
oR[13][sob]=new Array;
for (sobr=5;sobr<12;sobr++){oR[sobr][sob]=new Array;}
for (soj=0;soj<sI[sob].length;soj++){
oR[5][sob][soj]=d.all['subroll'+sob+'-'+soj];
if(cP[sob][soj]){
if(cP[sob][soj].length>0){
oR[6][sob][soj]=d.all['subroll'+sob+'-'+soj];
if(shCOLOR!=""){oR[7][sob][soj]=d.all['childshadow'+sob+'-'+soj];}
if((chhOFFSET+cP[sob][soj][4])>0){oR[8][sob][soj]=d.all['childgrid'+sob+'-'+soj];}
oR[9][sob][soj]=d.all['childnav'+sob+'-'+soj];
oR[10][sob][soj]=d.all['childlinks'+sob+'-'+soj];
oR[11][sob][soj]=new Array;
oR[13][sob][soj]=new Array;
for (scj=0;scj<cI[sob][soj].length;scj++){
oR[11][sob][soj][scj]=d.all['childroll'+sob+'-'+soj+'-'+scj];
oR[13][sob][soj][scj]=d.all['childlinktext'+sob+'-'+soj+'-'+scj];
}
}
}
}
}
findHeights();
}
// code saving visibility toggles
function miH(hr){if(allready&&hr){hr.style.visibility="hidden";}}
function miV(hv){if(allready&&hv){hv.style.visibility="visible";}}
// clear submenus
var pId=0;
var pCId=0;
var rTimer;var rCount=0;
function aCM(n){
if(allready){
miH(obGrid);
miH(oR[3][pId]);
miH(oR[12][pId]);
miH(oR[4][pId]);
miH(oR[1][pId]);
miH(oR[2][pId]);
if(n!=pId||rCount>0){
for (sj=0;sj<sI[pId].length;sj++){
miH(oR[5][pId][pCId]);
}
clearTimeout(rTimer);rCount=0;
miH(oR[0][pId]);
if(cP[pId][pCId]){
if(cP[pId][pCId].length>0){
miH(oR[5][pId][pCId]);
miH(oR[8][pId][pCId]);
miH(oR[9][pId][pCId]);
miH(oR[10][pId][pCId]);
if(oR[7][pId][pCId]){
oR[7][pId][pCId].filters.alpha.opacity=0;
miH(oR[7][pId][pCId]);
}
}
}
}
usegrid=false;
}
}
// start menu closing timer
function cM(n){
if(allready){
var ieNum=n;
if(pCId==0&&!usegrid){
aCM(ieNum);
pId=0;pCId=0;
} else {
if(rCount==0){
rCount++;
rTimer=setTimeout("cM(pId)",closeTIMER);
} else {
aCM(ieNum);
pId=0;pCId=0;
}
}
}
}
// special closing for grid
var usegrid=false;
function gridClearMenus(){
if(allready){
rCount=0;clearTimeout(rTimer);
usegrid=true;
cM();
}
}
// open selected submenu
var rObj; var n; var sms=-1;
var gridOkay=false;
function oM(n){
if(allready){
sms=n;
miV(obGrid);
if(sI[n]!=""){
for (ohm=0;ohm<sI[n].length;ohm++){
miH(oR[5][n][ohm]);
}
miV(oR[3][n]);
miV(oR[12][n]);
miV(oR[0][n]);
miV(oR[1][n]);
miV(oR[2][n]);
if(sI[n]!=''){miV(oR[4][n]);}
}
pId=n;
rCount=0;clearTimeout(rTimer);
}
}
// clear child menus
function cCM(snum,cnum){
if(allready){
miH(oR[5][snum][pCId]);
if(cP[snum][pCId]){
if(cP[snum][pCId].length>0&&cI[snum][pCId].length>0){
miH(oR[8][snum][pCId]);
miH(oR[9][snum][pCId]);
miH(oR[10][snum][pCId]);
if(oR[7][snum][pCId]){
oR[7][snum][pCId].filters.alpha.opacity=0;
miH(oR[7][snum][pCId]);
}
}
}
pCId=0;
}
}
// open selected child menu
var snum; var cnum; var cmsS=-1; var cmsC=-1;
function oCM(snum,cnum){
if(allready){
cmsS=snum;cmsC=cnum;
if(cP[snum][cnum].length>0&&cI[snum][cnum].length>0){
miV(oR[8][snum][cnum]);
miV(oR[9][snum][cnum]);
miV(oR[10][snum][cnum]);
if(oR[7][snum][cnum]&&cI[snum][cnum]!=''){
oR[7][snum][cnum].filters.alpha.opacity=shOPACITY;
miV(oR[7][snum][cnum]);
}
}
pCId=cnum;
rCount=0;clearTimeout(rTimer);
}
}
// td click handlers
function goToUrl(cUrl,cT){
if(cellCLICK||(cellCLICK==mu)){
if(cT=="_self"){self.document.location=cUrl;}
else if(cT=="_top"){top.document.location=cUrl;}
else if(cT=="_parent"){parent.document.location=cUrl;}
else if(cT=="_blank"){var newwin=open(cUrl,"","status=yes,scrollbars=yes,scrolling=yes,toolbar=yes,menubar=yes,location=yes,resizable=yes");}
else {if(top[cT]){top[cT].document.location=cUrl} else {document.location=cUrl;}}
}
}
//alert("assemble main nav");
var S='';
var T='';
// nav stretching
var stbSize=0;
if(showBORDERS){stbSize=bSIZE;}
if(stretchMENU||showBORDERS){
S+=ttt + stbSize+' '+bks[1]+' width='+bW+' height='+aH+' id="stretchnav" ';
S+='style="z-index:'+(zORDER+1)+'\; position:absolute\; top:'+aP[xp]+'\; left:0\;">';
S+='<tr><td onmouseover="gridClearMenus()" onmousedown="aCM()"></td></tr></table>';
if(stretchMENU){
var tbf=bks[0]; if(showBORDERS){tbf='';}
var tbs=bks[0]; if(!showBORDERS){tbs='';}
S+=ttt + stbSize+' width='+bW+' '+tbf+' height='+aH+' style="z-index:'+(zORDER+2)+'\; position:absolute\; top:'+aP[xp]+'\; left:0\;"><tr><td '+tbs+' onmouseover="gridClearMenus()" onmousedown="aCM()"></td></tr></table>';
}
}
// event capturing layer
var evW=bW;if(mac&&ie5){evW=(bW-15);}
T+='<span id="grid" style="visibility:hidden\; position:absolute\; top:0\; left:0\; width:'+evW+'\; height:'+bHe+'\; z-index:'+zORDER+'" onmousedown="aCM()" onmouseover="gridClearMenus()">&nbsp;</span>';
// open frame
if(!free){T+=ttt + bSIZE+' width='+nS+' height='+aH+' id="mainnav" '+bks[1]+' style="z-index:'+(zORDER+4)+'\; position:absolute\; top:'+aP[xp]+'px\; left:'+rL+'px\;"><tr>';}
// links
var cSt=new Array;
var cTd=new Array;
var linkHover=' onmouseover="if(allready){this.style.color=\''+aHOVER+'\'}" onmouseout="if(allready){this.style.color=\''+aLINK+'\'}"';
if(aHOVER==''||rCOLOR!=''){linkHover='';}
var space=new Array;
// alt text arrays
var aTx=new Array;
var sTx=new Array;
var cTx=new Array;
var altNull='';
// write alt text to status bar
function writeStatus(sTxt){if(allready){window.status=sTxt; return true;}}
for (i=0;i<mI.length;i++){
aTx[i]='';
if(mI[i][5]!="none"){
if(altDISPLAY=="title"){aTx[i]=' title="'+mI[i][5]+'" ';}
if(altDISPLAY=="status"){aTx[i]=' onmouseover="if(allready){return writeStatus(mI['+i+'][5])}" onmouseout="if(allready){return writeStatus(altNull)}" ';}
}
space[i]=' left:0px\;';
if(mI[i][3]=="left"){space[i]=' left:'+tINDENT+'px\;';}
if(mI[i][3]=="right"){space[i]=' left:-'+tINDENT+'px\;';}
if(mI[i][1]!=""){
if(mI[i][0]==""){
mI[i][0]="javascript:doNothing()";
cSt[i]='cursor:default';
cTd[i]='cursor:default';
} else {
cSt[i]='cursor:'+aCURSOR;
cTd[i]='cursor:default';
if(cellCLICK==true){cTd[i]='cursor:'+aCURSOR;}
}
if(free){T+=ttt + bSIZE+' width='+(mI[i][2]+(2*bSIZE))+' height='+thisAH[i]+' '+bks[1]+' style="z-index:'+(zORDER+4)+'\; position:absolute\; top:'+aP[i]+'px\; left:'+aPL[i]+'px\;"><tr>';}
var tmItem='href="'+mI[i][0]+'" target="'+mI[i][4]+'"';
if((cellCLICK||(cellCLICK==mu))&&mI[i][4]=="_blank"){
if(mac){tmItem='href="'+mI[i][0]+'" onclick="goToUrl(mI['+i+'][0],\'_blank\')\;return false" ';}
else {tmItem='href="'+mI[i][0]+'" onclick="return false" ';}
}
T+='<td onmouseover="if(allready){aCM()\; oR[0]['+i+'].style.visibility=\'visible\'\; oM('+i+')}" class=mTD style="height:'+thisNH[i]+'px\;" '+bks[0]+'>'+ttt+'0 width='+mI[i][2]+' style="z-index:'+(zORDER+4)+'\; height:'+thisNH[i]+'\;"><tr><td align="'+mI[i][3]+'" onclick="goToUrl(mI['+i+'][0],mI['+i+'][4])" style="'+cTd[i]+'" '+aTx[i]+'><a '+tmItem+' style="'+cSt[i]+'\; position:relative\; top:'+(vtOFFSET)+'\; '+space[i]+'" '+linkHover+'>'+mI[i][1]+'</a></td></tr></table></td>';
if(free){T+='</tr></table>';}
}
}
// close frame
if(!free){T+='</tr></table>';}
// rollover cells
var rollLeft=rL+bSIZE;
for (i=0;i<mI.length;i++){
if(free){rollLeft=mI[i][7]+bSIZE+aL; xp=i;}
if(mI[i][1]!=""){
var tmItem='href="'+mI[i][0]+'" target="'+mI[i][4]+'"';
if((cellCLICK||(cellCLICK==mu))&&mI[i][4]=="_blank"){
if(mac){tmItem='href="'+mI[i][0]+'" onclick="goToUrl(mI['+i+'][0],\'_blank\')\;return false" ';}
else {tmItem='href="'+mI[i][0]+'" onclick="return false" ';}
}
T+=ttt+'0 id="roll'+i+'" style="visibility:hidden\; z-index:'+(zORDER+5)+'\; height:'+thisNH[i]+'\; position:absolute\; top:'+(aP[xp]+bSIZE)+'px\; left:'+rollLeft+'px\;" onmouseover="if(allready){cM('+i+')\; oM('+i+')\; this.style.visibility=\'visible\'}" onmouseout="if(allready&&!keepLIT){miH(this)}"><tr><td class=mTD '+bks[2]+'>'+ttt+'0 width='+mI[i][2]+' style="height:'+thisNH[i]+'\;"><tr><td align="'+mI[i][3]+'" onclick="goToUrl(mI['+i+'][0],mI['+i+'][4])" style="'+cTd[i]+'" '+aTx[i]+'><a '+tmItem+' style="'+cSt[i]+'\; position:relative\; top:'+(vtOFFSET)+'\; '+space[i]+'\; color:'+aRoll+'\; " '+linkHover+'>'+mI[i][1]+'</a></td></tr></table></td></tr></table>';
}
rollLeft+=(mI[i][2]+bSIZE);
}
xp=0;
//alert("assemble submenus");
var M=''; var C='';
var SUBaL=0;
for (c=0;c<mI.length;c++){
sTx[c]=new Array;
cTx[c]=new Array;
// text alignment and indentation
var stAlign=sP[c][2];
var space=' left:0px\;';
if(stAlign=="left"){space=' left:'+stINDENT+'px\;';}
if(stAlign=="right"){space=' left:-'+stINDENT+'px\;';}
// find next submenu position
if(!free){
if(c==0){
SUBaL=rL+bSIZE;
}
else {SUBaL+=mI[(c-1)][2]+bSIZE;}
} else {
SUBaL=aPL[c];
xp=c;
}
// specify edge alignment
var acL=SUBaL+hOFFSET+sP[c][4];
if(sP[c][1]=="right"){
acL=SUBaL-(sP[c][0]-mI[c][2])-hOFFSET-sP[c][4];
}
// grid block layer for vertical offset
if((vOFFSET+sP[c][3])>0){M+='<span id="gridblocker'+c+'" style="width:'+sP[c][0]+'px\; height:'+(vOFFSET+sP[c][3])+'px\; visibility:hidden\; z-index:'+(zORDER+6)+'\;position:absolute\; top:'+(aP[xp]+thisAH[c])+'px\; left:'+acL+'px\;" onmouseover="rCount=0\;clearTimeout(rTimer)\;"></span>';}
// grid block layer for horizontal offset
var gblw=acL-mI[c][2]-SUBaL;
var gbposL=(SUBaL+mI[c][2]+(2*bSIZE));
if(sP[c][1]=="right"){
gblw=mI[c][7]+bSIZE+aL-sP[c][0]-acL;
gbposL=(mI[c][7]+bSIZE+aL-gblw);
}
if(gblw>0){M+='<span id="gridLblocker'+c+'" style="width:'+gblw+'px\; height:10px\; visibility:hidden\; z-index:'+(zORDER+6)+'\;position:absolute\; top:'+(aP[xp]+thisAH[c]+vOFFSET+sP[c][3])+'px\; left:'+gbposL+'px\;" onmouseover="rCount=0\;clearTimeout(rTimer)\;"></span>';}
// container cells
M+=ttt + sbSIZE+' id="subnav'+c+'" width="'+sP[c][0]+'" '+bks[4]+' style="visibility:hidden\; z-index:'+(zORDER+7)+'\; position:absolute\; top:'+(aP[xp]+thisAH[c]+vOFFSET+sP[c][3])+'px\; left:'+acL+'px\;">';
var SUBaT=aP[xp]+thisAH[c]+vOFFSET;
for (i=0;i<sI[c].length;i++){
if(sI[c][i][0]!=''&&sI[c][i][1]!=''){
// find wrapping links routine by brendan armstrong
var thisH=snH;
var thisT=sI[c][i][1];
var splitT=thisT.split('<br>');
var Trows=splitT.length;
if (Trows>1) { thisH=(snH*Trows); }
M+='<tr><td class=SUBmTD '+bks[3]+' align="'+stAlign+'" width="'+(sP[c][0]-(sbSIZE*2))+'" style="height:'+thisH+'px\;"><span style="width:1px\; height:'+thisH+'px\;"></span></td></tr>';
}
}
M+='</table>';
// links
var sublinkHover=' onmouseover="this.style.color=\''+saHOVER+'\'" onmouseout="this.style.color=\''+saLINK+'\'"';
if(saHOVER==''||srCOLOR!=''){sublinkHover='';}
M+=ttt + sbSIZE+' width="'+sP[c][0]+'" id="sublinks'+c+'" style="visibility:hidden\; z-index:'+(zORDER+8)+'\; position:absolute\; top:'+(aP[xp]+thisAH[c]+vOFFSET+sP[c][3])+'px\; left:'+acL+'px\;">';
var SUBaT=aP[xp]+aH+vOFFSET+sP[c][3];
var scSt=new Array;
var scTd=new Array;
for (i=0;i<sI[c].length;i++){
cTx[c][i]=new Array;
sTx[c][i]='';
if(sI[c][i][3]!="none"){
if(altDISPLAY=="title"){sTx[c][i]=' title="'+sI[c][i][3]+'" ';}
if(altDISPLAY=="status"){sTx[c][i]=' onmouseover="return writeStatus(sI['+c+']['+i+'][3])" onmouseout="return writeStatus(altNull)" ';}
}
if(sI[c][i][0]=="#"){
sI[c][i][0]="javascript:doNothing()";
scSt[i]='cursor:default';
scTd[i]='cursor:default';
} else {
scSt[i]='cursor:'+aCURSOR;
scTd[i]='cursor:default';
if(cellCLICK==true){scTd[i]='cursor:'+aCURSOR;}
}
var tmItem='href="'+sI[c][i][0]+'" target="'+sI[c][i][2]+'"';
if((cellCLICK||(cellCLICK==mu))&&sI[c][i][2]=="_blank"){
if(mac){tmItem='href="'+sI[c][i][0]+'" onclick="goToUrl(sI['+c+']['+i+'][0],\'_blank\')\;return false" ';}
else {tmItem='href="'+sI[c][i][0]+'" onclick="return false" ';}
}
// find wrapping links routine by brendan armstrong
var thisH=snH;
var thisT=sI[c][i][1];
var splitT=thisT.split('<br>');
var Trows=splitT.length;
if (Trows>1) { thisH=(snH*Trows); }
M+='<tr><td class=SUBmTD height='+snH+' onmouseover="rCount=0\;clearTimeout(rTimer)\; cCM('+c+','+i+')\; oCM('+c+','+i+')\; if(sI['+c+']['+i+'][4]){oR[5]['+c+']['+i+'].style.visibility=\'visible\'}" onmouseout="if(!keepSubLIT){oR[5]['+c+']['+i+'].style.visibility=\'hidden\'\;}">'+ttt+'0 id="sublink'+c +'-'+i+'" width='+(sP[c][0]-(sbSIZE*2))+' style="height:'+thisH+'"><tr><td align="'+stAlign+'" onclick="goToUrl(sI['+c+']['+i+'][0],sI['+c+']['+i+'][2])" style="'+scTd[i]+'" '+sTx[c][i]+'><a '+tmItem+' id="linktext'+c+'-'+i+'" onfocus="storeFocusId('+c+','+i+',-1,false)\; rCount=0\;clearTimeout(rTimer)\; cCM('+c+','+i+')\; oCM('+c+','+i+')\; if(sI['+c+']['+i+'][4]){oR[5]['+c+']['+i+'].style.visibility=\'visible\'}" onblur="if(!keepSubLIT){oR[5]['+c+']['+i+'].style.visibility=\'hidden\'\;}" style="'+scSt[i]+'\; position:relative\;top:'+(svtOFFSET)+'\; '+space+'" '+sublinkHover+'>'+ sI[c][i][1]+'</a></td></tr></table></td></tr>';
}
M+='</table>';
// subrollover cells
var subrollTop=aP[xp]+thisAH[c]+vOFFSET+sP[c][3]+sbSIZE;
var chTop=new Array;
for (i=0;i<sI[c].length;i++){
var tmItem='href="'+sI[c][i][0]+'" target="'+sI[c][i][2]+'"';
if((cellCLICK||(cellCLICK==mu))&&sI[c][i][2]=="_blank"){
if(mac){tmItem='href="'+sI[c][i][0]+'" onclick="goToUrl(sI['+c+']['+i+'][0],\'_blank\')\;return false" ';}
else {tmItem='href="'+sI[c][i][0]+'" onclick="return false" ';}
}
// find wrapping links routine by brendan armstrong
var thisH=snH;
var thisT=sI[c][i][1];
var splitT=thisT.split('<br>');
var Trows=splitT.length;
if (Trows>1) { thisH=(snH*Trows); }
T+='<table cellpadding=0 cellspacing=0 border=0 id="subroll'+c+'-'+i+'" width='+(sP[c][0]-(sbSIZE*2))+' '+bks[5]+' onmouseover="rCount=0\;clearTimeout(rTimer)\; this.style.visibility=\'visible\'" onmouseout="if(!keepSubLIT){miH(this)}" style="visibility:hidden\; z-index:'+(zORDER+9)+'\; height:'+thisH+'\; position:absolute\; top:'+subrollTop+'px\; left:'+(acL+sbSIZE)+'px\;"><tr><td align="'+stAlign+'" class=SUBmTD onclick="goToUrl(sI['+c+']['+i+'][0],sI['+c+']['+i+'][2])" style="'+scTd[i]+'" '+sTx[c][i]+'><a '+tmItem+' style="'+scSt[i]+'\; position:relative\; top:'+(svtOFFSET)+'\; '+space+'\; color:'+saRoll+'\;" '+sublinkHover+'>'+ sI[c][i][1]+'</a></td></tr></table>';
chTop[i]=subrollTop;
subrollTop+=thisH+sbSIZE;
}
//alert("drop shadow");
var shb=0;if(shy){shb=(2*shSIZE);}
if(shCOLOR!=""){M+=ttt+'0 '+bks[6]+' id="shadow'+c+'" style="visibility:hidden\; filter:alpha(opacity='+shOPACITY+')\; z-index:'+(zORDER+6)+'\; position:absolute\; top:'+(aP[xp]+thisAH[c]+vOFFSET+sP[c][3]+shSIZE-shb)+'px\; left:'+(acL+shSIZE-shb)+'px\; width:'+(sP[c][0]+shb)+'\; height:1\;"><tr><td>&nbsp;</td></tr></table>';}
//alert("assemble child menus");
for (sq=0;sq<sI[c].length;sq++){
if(cP[c][sq].length>0&&cI[c][sq].length>0){
// specify edge alignment
var chL;
if(cP[c][sq][1]=="right"){
chL=acL-cP[c][sq][0]-chhOFFSET-cP[c][sq][4];
cgL=chL+cP[c][sq][0];
} else {
chL=acL + sP[c][0]+chhOFFSET+cP[c][sq][4];
cgL=(chL-(chhOFFSET+cP[c][sq][4]));
}
// grid block layer for horizontal offset
if((chhOFFSET+cP[c][sq][4])>0){
C+='<span id="childgrid'+c+'-'+sq+'" style="width:'+(chhOFFSET+cP[c][sq][4])+'px\; height:10px\; visibility:hidden\; z-index:'+(zORDER+9)+'\;position:absolute\; top:'+((chTop[sq]-sbSIZE+chvOFFSET)+cP[c][sq][3])+'px\; left:'+cgL+'px\;" onmouseover="rCount=0\;clearTimeout(rTimer)\;"></span>';
}
// container cells
C+=ttt + sbSIZE+' id="childnav'+c+'-'+sq+'" '+bks[4]+' style="visibility:hidden\; z-index:'+(zORDER+10)+'\; position:absolute\; top:'+((chTop[sq]-sbSIZE+chvOFFSET)+cP[c][sq][3])+'px\; left:'+chL+'px\; width:'+cP[c][sq][0]+'px\; height:'+(((snH+sbSIZE)*cI[c][sq].length)+sbSIZE)+'px\;">';
for (cj=0;cj<cI[c][sq].length;cj++){
if(cI[c][sq].length>0){
// find wrapping links routine by brendan armstrong
var thisH=snH;
var thisT=cI[c][sq][cj][1];
var splitT=thisT.split('<br>');
var Trows=splitT.length;
if (Trows>1) { thisH=(snH*Trows); }
C+='<tr><td class=SUBmTD '+bks[3]+' align="'+stAlign+'" width="'+(cP[c][sq][0]-(sbSIZE*2))+'" style="height:'+thisH+'px\;"><span style="width:1px\; height:'+thisH+'px\;"></span></td></tr>';
}
}
C+='</table>';
}
// text alignment and indentation
var ctAlign=cP[c][sq][2];
var cspace=' left:0px\;';
if(ctAlign=="left"){cspace=' left:'+stINDENT+'px\;';}
if(ctAlign=="right"){cspace=' left:-'+stINDENT+'px\;';}
var ccTd='cursor:default';
if(cellCLICK==true){ccTd='cursor:'+aCURSOR;}
var ccAl='cursor:'+aCURSOR;
// links
C+=ttt + sbSIZE+' id="childlinks'+c+'-'+sq+'" width="'+cP[c][sq][0]+'" style="visibility:hidden\; z-index:'+(zORDER+11)+'\; position:absolute\; top:'+((chTop[sq]-sbSIZE+chvOFFSET)+cP[c][sq][3])+'px\; left:'+chL+'px\;">';
for (cj=0;cj<cI[c][sq].length;cj++){
cTx[c][sq][cj]='';
if(cI[c][sq][cj][3]!="none"){
if(altDISPLAY=="title"){cTx[c][sq][cj]=' title="'+cI[c][sq][cj][3]+'" ';}
if(altDISPLAY=="status"){cTx[c][sq][cj]=' onmouseover="return writeStatus(cI['+c+']['+sq+']['+cj+'][3])" onmouseout="return writeStatus(altNull)" ';}
}
if(cI[c][sq][cj][0]=="#"){cI[c][sq][cj][0]="javascript:doNothing()";}
var tmItem='href="'+cI[c][sq][cj][0]+'" target="'+cI[c][sq][cj][2]+'"';
if((cellCLICK||(cellCLICK==mu))&&cI[c][sq][cj][2]=="_blank"){
if(mac){tmItem='href="'+cI[c][sq][cj][0]+'" onclick="goToUrl(cI['+c+']['+sq+']['+cj+'][0],\'_blank\')\;return false" ';}
else {tmItem='href="' +cI[c][sq][cj][0]+'" onclick="return false" ';}
}
// find wrapping links routine by brendan armstrong
var thisH=snH;
var thisT=cI[c][sq][cj][1];
var splitT=thisT.split('<br>');
var Trows=splitT.length;
if (Trows>1) { thisH=(snH*Trows); }
var ccTd='cursor:default';
if(cellCLICK==true){ccTd='cursor:'+aCURSOR;}
var ccAl='cursor:'+aCURSOR;
if(!cI[c][sq][cj][4]){ccAl='cursor:default';}
if(!cI[c][sq][cj][4]){ccTd='cursor:default';}
C+='<tr><td class=SUBmTD height='+snH+' onmouseover="rCount=0\;clearTimeout(rTimer)\; if(cI['+c+']['+sq+']['+cj+'][4]){oR[11]['+c+']['+sq+']['+cj+'].style.visibility=\'visible\'}" onmouseout="oR[11]['+c+']['+sq+']['+cj+'].style.visibility=\'hidden\'">'+ttt+'0 id="childlink'+c+'-'+sq+'-'+cj+'" width='+(cP[c][sq][0]-(sbSIZE*2))+' style="height:'+thisH+'"><tr><td align="'+ctAlign+'" onclick="goToUrl(cI['+c+']['+sq+']['+cj+'][0],cI['+c+']['+sq+']['+cj+'][2])" style="'+ccTd+'" '+cTx[c][sq][cj]+'><a '+tmItem+' id="childlinktext'+c+'-'+sq+'-'+cj+'" onfocus="storeFocusId('+c+','+sq+','+cj+',true)\; rCount=0\;clearTimeout(rTimer)\; if(cI['+c+']['+sq+']['+cj+'][4]){oR[11]['+c+']['+sq+']['+cj+'].style.visibility=\'visible\'}" onblur="oR[11]['+c+']['+sq+']['+cj+'].style.visibility=\'hidden\'" style="'+ccAl+'\; position:relative\;top:'+(svtOFFSET)+'\; '+cspace+'" '+sublinkHover+'>'+ cI[c][sq][cj][1]+'</a></td></tr></table></td></tr>';
}
C+='</table>';
// child rollover cells
var childrollTop=chTop[sq]+chvOFFSET+cP[c][sq][3];
for (cj=0;cj<cI[c][sq].length;cj++){
var tmItem='href="' +cI[c][sq][cj][0]+'" target="' +cI[c][sq][cj][2]+'" ';
if((cellCLICK||(cellCLICK==mu))&&cI[c][sq][cj][2]=="_blank"){
if(mac){tmItem='href="'+cI[c][sq][cj][0]+'" onclick="goToUrl(cI['+c+']['+sq+']['+cj+'][0],\'_blank\')\;return false" ';}
else {tmItem='href="' +cI[c][sq][cj][0]+'" onclick="return false" ';}
}
// find wrapping links routine by brendan armstrong
var thisH=snH;
var thisT=cI[c][sq][cj][1];
var splitT=thisT.split('<br>');
var Trows=splitT.length;
if (Trows>1) { thisH=(snH*Trows); }
C+=ttt+'0 id="childroll'+c+'-'+sq+'-'+cj+'" onmouseover="rCount=0\;clearTimeout(rTimer)\; this.style.visibility=\'visible\'" onmouseout="miH(this)" '+bks[5]+' width='+(cP[c][sq][0]-(sbSIZE*2))+' style="visibility:hidden\; z-index:'+(zORDER+12)+'\; height:'+thisH+'\; position:absolute\; top:'+childrollTop+'px\; left:'+(chL+sbSIZE)+'px\;"><tr><td align="'+ctAlign+'" class=SUBmTD onclick="goToUrl(cI['+c+']['+sq+']['+cj+'][0],cI['+c+']['+sq+']['+cj+'][2])" style="'+ccTd+'" '+cTx[c][sq][cj]+'><a '+tmItem+' style="'+ccAl+'\; position:relative\; top:'+(svtOFFSET)+'\; '+cspace+'\; color:'+saRoll+'\;" '+sublinkHover+'>'+ cI[c][sq][cj][1]+'</a></td></tr></table>';
childrollTop+=thisH+sbSIZE;
}
//alert("child drop shadow");
if(shCOLOR!=""&&(cP[c][sq].length>0&&cI[c][sq].length>0)){C+=ttt+'0 '+bks[6]+' id="childshadow'+c+'-'+sq+'" style="visibility:hidden\; filter:alpha(opacity='+shOPACITY+')\; z-index:'+(zORDER+9)+'\; position:absolute\; top:'+((chTop[sq]-sbSIZE+chvOFFSET)+shSIZE+cP[c][sq][3]-shb)+'px\; left:'+(chL+shSIZE-shb)+'px\; width:'+(cP[c][sq][0]+shb)+'\; height:1\;"><tr><td>&nbsp;</td></tr></table>';}
}
}
// static positioning layer
if (win) { d.write('<div id="master" style="position:absolute\; top:0px\; left:0px\; z-index:'+zORDER+'">'); }
// draw stretched layer
if(!free){d.write(S);}
// draw main nav
d.write(T);
// draw submenus
d.write(M);
// draw child menus
d.write(C);
// close static positioning layer
if (win) { d.write('</div>'); }
// resize / reload trap
if(allowRESIZE==true){window.onresize=new Function("window.location.reload()");}
var sTimer;
function makeStatic(){
d.all["master"].style.pixelTop=d.body.scrollTop;
sTimer=setTimeout("makeStatic()",0);
}
// find shadow heights
var allready=false;
var shb=0;if(shy){shb=(2*shSIZE);}
function findHeights(){
for(h=0;h<mI.length;h++){
if(oR[4][h]){oR[4][h].style.height=oR[1][h].clientHeight+shb;}
if(oR[12][h]){oR[12][h].style.height=oR[1][h].clientHeight+shb+shSIZE;}
for (jh=0;jh<sI[h].length;jh++){
if(cP[h][jh].length>0&&cI[h][jh].length>0){
if(oR[7][h][jh]){oR[7][h][jh].style.height=oR[9][h][jh].clientHeight+shb;}
if(oR[8][h][jh]){oR[8][h][jh].style.height=oR[9][h][jh].clientHeight+shb+shSIZE;}
}
}
}
genericOnloadFunction();
if(staticMENU&&ie5){makeStatic();}
allready=true;
}
// store objects
window.onload=storeObjects;
// build key trigger recognition arrays from ANSI key codes
var kLets = new Array('*l','*u','*r','*d','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','<','>');
var kCodes = new Array;
var ii=0;
var kc=0;
var kcc=-1;
var allowKey=false;
for (i=37;i<41;i++) {
kCodes[ii] = i;
ii++;
}
for (i=97;i<123;i++) {
kCodes[ii] = i;
ii++;
}
// store id of currently focussed link
var NfcN=-1; var NfcS=-1; var NfcC=-1; var childStat=false;
function storeFocusId(fcN,fcS,fcC,chX) {
NfcN=fcN;NfcS=fcS;NfcC=fcC;
childStat=chX;
}
// key listening function
function keyListen(DnEvents) {
kcc=-1;
kc = event.keyCode;
var eka=event.altKey;
var eks=event.shiftKey;
var ekc=event.ctrlKey;
if(eka||eks||ekc){return false;}
// form discrimination code by BUU @ website abstraction help forum
var html=event.srcElement.outerHTML;
regexp1=/^<input/i;
regexp2=/^<textarea/i;
if(regexp1.test(html)||regexp2.test(html)) {return false;}
//sort upper case to lower case
if (kc>=65&&kc<=90) { kc+=32; }
// find which key is pressed
for (i=0;i<kLets.length;i++) {
if (kCodes[i]==kc) { kcc=kLets[i]; }
}
if (kcc!=-1) {
// find if a child menu is open
var cmsObj=false;
cmsObj = document.all["childnav"+cmsS+'-'+cmsC];
// if clear key is pressed clear menus
if (kcc=="c") {
gridClearMenus();
aCM(j);
if (cI[cmsS]&&cI[cmsS][cmsC]) {
for(ji=0;ji<cI[cmsS][cmsC].length;ji++) {
miH(oR[11][cmsS][cmsC][ji]);
}
}
cmsS=-1;cmsC=-1;sms=-1;NfcN=-1;NfcS=-1;NfcC=-1;childStat=false;
return false;
}
for (j=0;j<mI.length;j++) {
// if key corresponds to a defined trigger then open submenu
if (kcc==mI[j][8]) {
aCM(j);
oM(j);
var tlObj = document.all['linktext'+j+'-0'];
if (tlObj) { tlObj.focus(); }
return false;
}
}
// trap navigation arrows
if (kcc.indexOf("*")!=-1) {
// move down (down arrow disabled because of page scrolling)
if (kcc=="*d") {
//if (NfcN!=-1&&NfcC==-1) { var tlObj = document.all['linktext'+NfcN+'-'+(NfcS+1)]; if (tlObj) { tlObj.focus(); }}
//else if (NfcN!=-1) { var tlObj = document.all['childlinktext'+NfcN+'-'+NfcS+'-'+(NfcC+1)]; if (tlObj) { tlObj.focus(); }}
}
// move up (up arrow disabled because of page scrolling)
if (kcc=="*u") {
//if (NfcN!=-1&&NfcC==-1) { var tlObj = document.all['linktext'+NfcN+'-'+(NfcS-1)]; if (tlObj) { tlObj.focus(); }}
//else if (NfcN!=-1) { var tlObj = document.all['childlinktext'+NfcN+'-'+NfcS+'-'+(NfcC-1)]; if (tlObj) { tlObj.focus(); }}
}
// if a child menu is open
if (cmsObj&&cmsObj.style.visibility=="visible") {
// move to child menu
if (kcc=="*r") {
if (cP[cmsS][cmsC][1]=="left") { var tlObj = document.all['childlinktext'+cmsS+'-'+cmsC+'-0']; if (tlObj) { tlObj.focus(); }}
else { cCM(cmsS,cmsC); var tlObj = document.all['linktext'+cmsS+'-'+(cmsC+1)]; if (tlObj) { tlObj.focus(); }}
}
// move off child menu
if (kcc=="*l") {
if (cP[cmsS][cmsC][1]=="left") { cCM(cmsS,cmsC); var tlObj = document.all['linktext'+cmsS+'-'+(cmsC+1)]; if (tlObj) { tlObj.focus(); }}
else { var tlObj = document.all['childlinktext'+cmsS+'-'+cmsC+'-0']; if (tlObj) { tlObj.focus(); }}
}
}
}
}
}
// activate key listening
function checkReadiness() {
if(allready&&ie5) {
keyListen();
}
}
document.onkeydown = checkReadiness;

768
addons/menu_bar/menu_ns4.js Normal file
View File

@ -0,0 +1,768 @@
//UDMv3.1
// filter for undefined arrays
for (f=0;f<mI.length;f++){
if(!sP[f]){sP[f]=new Array(mI[f][2],mI[f][3],mI[f][3],0,0);}
if(!cP[f]){cP[f]=new Array;}
if(!sI[f]){sI[f]=new Array;}
if(!cI[f]){cI[f]=new Array;}
for (sf=0;sf<sI[f].length;sf++){
if(!cP[f][sf]){cP[f][sf]=new Array;}
if(!cI[f][sf]){cI[f][sf]=new Array;}
}
}
// appreviations
var bh=baseHREF;
var ttt='<table border=0 cellpadding=0 cellspacing=';
var aL=absLEFT; aT=absTOP;
if(aT<0){aT=0;}
if(aL<0){aL=0;}
// convert shadow type
var shy=false;
if ((typeof shSIZE)=="string") {
shy=true;
shSIZE=Number(shSIZE);
}
// find the inner width and height of the browser window
var bW=window.innerWidth;
var bHe=window.innerHeight;
// compensate for lack of scrollbar if applicable
var offsetCenter=true;
if(document.width>=innerWidth&&!mac){bW-=16; offsetCenter=false;}
// find the nav width and horizontal space
var eS=0;
var nS=0;
for (j=0;j<mI.length;j++){
mI[j][2]+=1;
if(mI[j][1]==""){mI[j][1]="&nbsp;";}
mI[j][2]-=1;
if(mI[j][1]!=""){
nS+=mI[j][2]+bSIZE;
}
}
eS=bW-nS-bSIZE;
if(menuALIGN!="free"&&(bW<nS)){menuALIGN="left"; aL=0; stretchMENU=false; showBORDERS=false;}
// find the nav height
var nH=fSIZE+4+vPADDING;
if (fSIZE<13) { nH+=(13-sfSIZE); }
var onH=nH;
// find wrapping links routine by brendan armstrong
var Mrows=new Array;var Nrows=new Array;
var thisNH=new Array;var thisAH=new Array;var thisCHtop=new Array;
for(i=0;i<mI.length;i++){
var thisT=mI[i][1];
var splitT=thisT.split('<br>');
Mrows[i]=splitT.length;
Nrows[i]=Mrows[i];
}
function cFun(a,b) { return b-a; }
Mrows.sort(cFun);
nH=nH*Mrows[0];
var aH=nH+(bSIZE*2);
if(bW<nS){nH-=2; aH-=2;}
for(i=0;i<mI.length;i++){
thisCHtop[i]=new Array;
thisNH[i]=nH;if(menuALIGN=="free"){thisNH[i]=onH*Nrows[i];}
thisAH[i]=nH+(bSIZE*2);if(menuALIGN=="free"){thisAH[i]=thisNH[i]+(2*bSIZE);}
if(bW<nS){thisNH[i]-=2; thisAH[i]-=2;}
}
// find the subnav item height
var snH=sfSIZE+4+svPADDING;
if (sfSIZE<13) { snH+=(13-sfSIZE); }
var asH=snH+(sbSIZE*2);
// set values for different alignments
var free=false;
var xp=0;
var aP=new Array;
var aPL=new Array;
if(menuALIGN=="free"){
free=true;
for (xc=0;xc<mI.length;xc++){
aP[xc]=mI[xc][6]+aT;
aPL[xc]=mI[xc][7]+aL;
//alert(aP[xc]);
}
} else {
aP[xp]=aT;
}
var stAdjust=0; var abR; var rL;
var ralign=false;
if(menuALIGN=="right"){
ralign=true;
abR=aL;
aL=eS-abR;
rL=aL;
if(rL<0){rL=0;}
aL=0;
}
var calign=false;
if(menuALIGN=="center"){
calign=true;
aL=parseInt(eS/2);
if(offsetCenter){aL-=8;}
rL=aL;
if(mac){
if(document.width==innerWidth){rL+=8;}
else if(document.width<innerWidth){rL+=1;}
}
if(rL<0){rL=0;}
aL=0;
}
var lalign=false;
if(menuALIGN=="left"){
lalign=true;
abR=aL;
rL=aL;
if(stretchMENU&&abR>0){stAdjust=abR+(2*bSIZE);}
if(rL<0){rL=0;}
if(stretchMENU){aL=0;}
}
var subLEFT=rL;
if(ralign){subLEFT-=abR;}
if(lalign){subLEFT+=abR;}
// how many main nav items
var ntl=0;
for (intl=0;intl<mI.length;intl++){if(mI[intl][1]!=""){ntl++;}}
var cStyle='cursor:hand';
// do nothing
function doNothing(){}
// find background colors or images
var back_defs=new Array(mCOLOR,bCOLOR,rCOLOR,smCOLOR,sbCOLOR,srCOLOR,shCOLOR);
var useIMG=new Array(false,false,false,false,false,false)
var bks=new Array;
var mainbacks=new Array;
for (b=0;b<7;b++){
bks[b]='bgcolor='+back_defs[b];
if((back_defs[b].indexOf('.gif') != -1) || (back_defs[b].indexOf('.jpg') != -1) || back_defs[b]==''){useIMG[b]=true;}
if(useIMG[b]){
bks[b]='background="'+bh+back_defs[b]+'"';
}
if(back_defs[b]==''){bks[b]='';}
}
// code saving visibility toggles
function miH(hr){if(hr){hr.visibility="hide";}}
function miV(hv){if(hv){hv.visibility="show";}}
// clear submenus
var pId=0;
var pCId=0;
var rTimer;var rCount=0;
function aCM(n){
rCount=0;clearTimeout(rTimer);
miH(document.layers["grid"]);
var shadid=document.layers["shadow"+pId];
miH(shadid);
miH(document.layers["subnav"+pId]);
miH(document.layers["roll"+pId]);
var grL=document.layers["gridL"];
var grR=document.layers["gridR"];
miH(grL);
miH(grR);
miH(document.layers["childgrid"+pId+"-"+pCId]);
miH(document.layers["childshadow"+pId+"-"+pCId]);
miH(document.layers["childnav"+pId+"-"+pCId]);
if(cI[pId][pCId]){
for (crc=0;crc<cI[pId][pCId].length;crc++){
miH(document.layers["childroll"+pId+"-"+pCId+"-"+crc]);
}
}
for (rc=0;rc<sI[pId].length;rc++){
miH(document.layers["subroll"+pId+"-"+rc]);
miH(document.layers["defaultSubLayer"+pId+"-"+rc]);
}
pId=0; pCId=0;
usegrid=false;
}
// start menu closing timer
function cM(n){
var nsNum=n;
if(pCId==0&&!usegrid){
aCM(nsNum);
pId=0;pCId=0;
} else {
if(rCount==0){
rCount++;
rTimer=setTimeout("cM(pId)",closeTIMER);
} else {
aCM(nsNum);
pId=0;pCId=0;
}
}
}
// special closing for grid
var usegrid=false;
function gridClearMenus(){
rCount=0;clearTimeout(rTimer);
usegrid=true;
cM();
}
// open selected submenu
var n;
var gridOkay=false;
function oM(n){
aCM();
miV(document.layers["grid"]);
miV(document.layers["roll"+n]);
for (l=0;l<sI[n].length;l++){
miH(document.layers["subroll"+ n+l]);
miV(document.layers["defaultSubLayer"+n+l]);
miV(document.layers["subnav"+n].document.layers[0].document.layers[l].document.layers[0].document.layers[0].document.layers[0]);
}
if(sI[n]!=''&&sI[n].length>0){miV(document.layers["shadow"+n]);}
miV(document.layers["subnav"+n]);
var grL=document.layers["gridL"];
var grR=document.layers["gridR"];
miV(grL);
miV(grR);
pId=n;
}
// clear child menus
function cCM(snum,cnum){
for(jc=0;jc<sI[snum].length;jc++){
miH(document.layers["subroll"+snum+"-"+jc]);
for(jcc=0;jcc<cI[snum][jc].length;jcc++){
miH(document.layers["childroll"+snum+"-"+jc+"-"+jcc]);
}
}
if(cP[snum][pCId].length>0&&cI[snum][pCId].length>0){
miH(document.layers["childgrid"+snum+"-"+pCId]);
miH(document.layers["childnav"+snum+"-"+pCId]);
miH(document.layers["childshadow"+snum+"-"+pCId]);
}
pCId=0;
}
// open selected child menu
var snum; var cnum;
function oCM(snum,cnum){
if(!keepLIT){miH(document.layers["roll"+snum]);}
if(sI[snum][cnum][4]){miV(document.layers["subroll"+snum+"-"+cnum]); }
if(cP[snum][cnum].length>0&&cI[snum][cnum].length>0){
miV(document.layers["childgrid"+snum+"-"+cnum]);miV(document.layers["childnav"+snum+"-"+cnum]);
if(cI[snum][cnum]!=''){miV(document.layers["childshadow"+snum+"-"+cnum]);}
for (cl=0;cl<cI[snum][cnum].length;cl++){
miV(document.layers["childnav"+snum+"-"+cnum].document.layers[0].document.layers[cl].document.layers[0].document.layers[0].document.layers[0]);
}
}
pCId=cnum;
}
// click handler for cellCLICK active _blank link anchors, to prevent two windows from opening
function activateClick(nsUrl){
var newwin=open(nsUrl);
}
//alert("assemble main nav");
var S='';
var T='';
var tFrame='<table cellpadding=0 cellspacing=0 border=0>';
// event capturing layer
var gSTR='<layer id="grid" top=0 left=0 width='+bW+' height='+bHe+' visibility=hide onmouseover="gridClearMenus()"></layer>';
// nav stretching
var nsColor=bCOLOR;
if(!showBORDERS){nsColor=mCOLOR;}
var nsMColor=mCOLOR;
if(stretchMENU){
if(showBORDERS){var sbB=1;} else {var sbB=0;}
S+='<layer id="stretchnav" '+bks[sbB]+' top='+aP[xp]+' left=0 width='+bW+' height='+aH+'>';
S+='<layer '+bks[0]+' top='+bSIZE+' left='+bSIZE+' width='+(bW-(2*bSIZE))+' height='+nH+'></layer>';
S+='</layer>';
} else if(showBORDERS){
S+='<layer id="stretchnav" '+bks[1]+' top='+aP[xp]+' left=0 width='+bW+' height='+aH+'>';
S+='</layer>';
}
// background layer
S+='<layer id="undernav" '+bks[1]+' top='+aP[xp]+' left='+rL+' width='+(nS+bSIZE)+' height='+aH+'></layer>';
// open frame
if(!free){T+='<layer id="mainnav" top='+aP[xp]+' left='+rL+'><table cellpadding=0 cellspacing='+bSIZE+' border=0><tr>';}
// find width of link layer to calculate text indentation
var lc=0;
function findWidths(lyo,lyW,lyH){
if(mI[lc][3]=="left"){lyo.left=tINDENT;}
if(mI[lc][3]=="center"){lyo.left=0;}
if(mI[lc][3]=="right"){lyo.left=(mI[lc][2]-lyW-tINDENT);}
if((lyH<thisNH[lc])){lyo.top=parseInt((thisNH[lc]-lyH)/2)+vtOFFSET;}
lc++;
if(lc==mI.length){lc=0;}
}
// links
for (i=0;i<mI.length;i++){
if(free){T+='<layer id="free'+i+'" top='+aP[i]+' left='+aPL[i]+' '+bks[1]+'><table cellpadding=0 cellspacing='+bSIZE+' border=0><tr>';}
T+='<td '+bks[1]+' class=mTD height='+(thisNH[i]-(2*bSIZE))+'><ilayer id="ilayer'+i+'"><layer onmouseover="oM('+i+')" width="'+(mI[i][2])+'" height="'+(thisNH[i])+'" '+bks[0]+' id="container'+i+'"><layer width="100%" height="100%" visibility=show><layer left=0 onload="findWidths(this,this.clip.right,this.clip.bottom)" visibility=show><div width="100%" height="100%" align='+mI[i][3]+'><a href="'+mI[i][0]+'" target="'+mI[i][4]+'">'+mI[i][1]+'</a></div></layer></layer></layer></ilayer></td>';
if(free){T+='</tr></table></layer>';}
}
// close frame
if(!free){T+='</tr></table></layer>';}
// link color behaviour
if(aHOVER==""){aHOVER=aLINK;}
var aRoll=aHOVER;
// alt text arrays
var aTxt=new Array;
var sTxt=new Array;
var cTxt=new Array;
var altNull='';
// write alt text to status bar
function writeStatus(sTxt){window.status=sTxt; return true;}
// rollover layers
var subDefLeft=rL+bSIZE;
for (i=0;i<mI.length;i++){
aTxt[i]='';
if(mI[i][5]!="none"){
if(altDISPLAY=="status"){aTxt[i]=' onmouseover="return writeStatus(mI['+i+'][5])" onmouseout="return writeStatus(altNull)" ';}
}
if(free){subDefLeft=mI[i][7]+bSIZE+aL; xp=i;}
T+='<layer '+bks[2]+' id="roll'+i+'" visibility=hide top='+(aP[xp]+bSIZE)+' left='+subDefLeft +' width='+mI[i][2]+' height='+(thisNH[i])+' onmouseout="if(!keepLIT){miH(this)}">';
T+='<layer width="100%" height="100%" '+aTxt[i]+'><table cellpadding=0 cellspacing=0 border=0 width="100%" height="100%"><tr><td align=center class=mTD><layer left=0 onload="findWidths(this,this.clip.right,this.clip.bottom)"><div width="100%" height="100%" align='+mI[i][3]+'>';
var tcItem='<a href="'+mI[i][0]+'" target="'+mI[i][4]+'" '+aTxt[i]+'>';
if((cellCLICK||(cellCLICK==mu))&&mI[i][4]=="_blank"){tcItem='<a href="'+mI[i][0]+'" onclick="activateClick(mI['+i+'][0])\;return false" '+aTxt[i]+'>';}
T+=tcItem+'<font color="'+aRoll+'">'+mI[i][1]+'</font></a>';
T+='</div></layer></td></tr></table></layer>';
T+='</layer>';
if(!free){subDefLeft+=(mI[i][2]+bSIZE);}
}
// default cursor layers for non links
var subDefLeft=rL+bSIZE;
for (i=0;i<mI.length;i++){
if(free){subDefLeft=mI[i][7]+bSIZE+aL; xp=i;}
if(mI[i][0]==""){T+='<layer id="defaultLayer'+i+'" top='+(aP[xp]+bSIZE)+' left='+subDefLeft +' width='+mI[i][2]+' height='+(thisNH[i])+' onmouseover="oM('+i+')"><layer width="100%" height="100%" '+aTxt[i]+'></layer></layer>';}
if(!free){subDefLeft+=(mI[i][2]+bSIZE);}
}
// event gapturing grid
var gdL='<layer id="gridR" visibility=hide';
var gdR='<layer id="gridL" visibility=hide';
var ogcm=' onmouseover="gridClearMenus()" height='+nH;
if(((bW>(nS+bSIZE))||(stAdjust>0))&&(stretchMENU||showBORDERS)&&(!free)){
if(ralign){T+=gdL+' top='+aP[xp]+' left='+aL+' '+ogcm+' width='+(eS-(bSIZE*2)-abR)+'></layer>';}
if(ralign&&abR>0){T+=gdR+' top='+aP[xp]+' left='+(eS-abR+nS)+' '+ogcm+' width='+(abR-(bSIZE*2))+'></layer>';}
if(lalign&&abR>0){T+=gdL+' top='+aP[xp]+' left='+aL+' '+ogcm+' width='+abR+'></layer>';}
if(lalign){T+=gdR+' top='+aP[xp]+' left='+(abR+nS)+' '+ogcm+' width='+(eS-abR)+'></layer>';}
if(calign){
T+=gdL+' top='+aP[xp]+' left=0 '+ogcm+' width='+(eS/2)+'></layer>';
T+=gdR+' top='+aP[xp]+' left='+(nS+(eS/2))+' '+ogcm+' width='+(eS/2)+'></layer>';
}
}
// assemble submenus
var M='';
var C='';
var SUBaL=0;
// find width of link layer to calculate text indentation
var slc=0;
function findSubWidths(lct,slyo,slyW,slyH,thisLH){
if(sP[lct][2]=="left"){slyo.left=stINDENT;}
if(sP[lct][2]=="center"){slyo.left=0;}
if(sP[lct][2]=="right"){slyo.left=((sP[lct][0]-(2*sbSIZE))-slyW-stINDENT);}
if(slyH<thisLH){slyo.top=(thisLH-slyH)/2+svtOFFSET;}
slc++;
if(slc==sP.length){slc=0;}
}
// find width of child link layer to calculate text indentation
var clc=0;
function findChildWidths(lct,cht,slyo,slyW,slyH,thisLH){
if(cP[lct][cht][2]=="left"){slyo.left=stINDENT;}
if(cP[lct][cht][2]=="center"){slyo.left=0;}
if(cP[lct][cht][2]=="right"){slyo.left=((cP[lct][cht][0]-(2*sbSIZE))-slyW-stINDENT);}
if(slyH<thisLH){slyo.top=(thisLH-slyH)/2+svtOFFSET;}
clc++;
if(clc==cI[lct].length){clc=0;}
}
// find height of menu layers to calculate drop shadow size
var shb=0;if(shy){shb=(2*shSIZE);}
function findLayerHeight(sn,sh){
if(shCOLOR!=""){document.layers["shadow"+sn].clip.bottom=sh+shb;}}
function findChildHeight(cnn,cqn,cch){
if(shCOLOR!=""){document.layers["childshadow"+cnn+"-"+cqn].clip.bottom=cch+shb;}
if((chhOFFSET+cP[cnn][cqn][4])>0){document.layers["childgrid"+cnn+"-"+cqn].clip.bottom=cch+shb+shSIZE;}
}
// cell rollout backup function
function subRollClear(mi){
for (rc=0;rc<sI[mi].length;rc++){
miH(document.layers["subroll"+mi+"-"+rc]);
}
}
// cell rollover function for default cursor layers
function subRollOpen(omic,omis){
if(sI[omic][omis][4]){miV(document.layers["subroll"+omic+"-"+omis]);}
}
// child cell rollout backup function
function childRollClear(cn,cmi){
for (rc=0;rc<cI[cn][cmi].length;rc++){
miH(document.layers["childroll"+cn+"-"+cmi+"-"+rc]);
}
}
// child cell rollover function
function childRollOpen(ocn,ocmi,ocoj){
var childrollopen="childroll"+ocn+"-"+ocmi+"-"+ocoj;
miV(document.layers["childroll"+ocn+"-"+ocmi+"-"+ocoj]);
}
// sublink color behaviour
if(saHOVER==""){saHOVER=saLINK;}
var saRoll=saHOVER;
var chTop=new Array;
for (c=0;c<mI.length;c++){
chTop[c]=new Array;
if(free){xp=c;}
sTxt[c]=new Array;
cTxt[c]=new Array;
// find next submenu position
if(!free){
if(c==0){
SUBaL=rL+bSIZE;
}
else SUBaL+=mI[(c-1)][2]+bSIZE;
} else {
SUBaL=aPL[c];
}
// specify edge alignment
var acL=SUBaL+hOFFSET+sP[c][4];
if(sP[c][1]=="right"){
acL=SUBaL-(sP[c][0]-mI[c][2])-hOFFSET-sP[c][4];
}
// top adjust
var tj=0;
if (menuALIGN=="free") { tj=0; }
// drop shadow
var shb=0;if(shy){shb=(2*shSIZE);}
if(shCOLOR!=""){M+='<layer id="shadow'+c+'" '+bks[6]+' visibility=hide top='+(aP[xp]+thisAH[c]+vOFFSET+sP[c][3]+shSIZE+tj-shb)+' left='+(acL+shSIZE-shb)+' width='+(sP[c][0]+shb)+' height=10>&nbsp;</layer>';}
var gbWidth=sP[c][0];
var gbLeft=acL;
var algbLeft=0;
if(sP[c][1]=="right"){
var gblw=mI[c][7]+bSIZE+aL-sP[c][0]-acL;
if(gblw>0){gbWidth=sP[c][0]+gblw;}
} else {
var gblw=acL-mI[c][2]-SUBaL;
if(gblw>0){
gbWidth=sP[c][0]+gblw;
gbLeft-=gblw;
algbLeft=gblw;
}
}
chTop[c][0]=aP[xp]+thisAH[c]+vOFFSET+sP[c][3];
// compile cells
if(sI[c]!=''){
M+='<layer visibility=hide id="subnav'+c+'" top='+(aP[xp]+thisAH[c]+tj)+' left='+gbLeft+' width='+gbWidth+' onmouseover="rCount=0\;clearTimeout(rTimer)\;">';
M+='<layer top='+(vOFFSET+sP[c][3])+' left='+algbLeft+' '+bks[4]+' onload="findLayerHeight('+c+',this.clip.bottom)"><table cellpadding=0 cellspacing='+sbSIZE+' border=0>';
for (i=0;i<sI[c].length;i++){
// find wrapping links routine by brendan armstrong
var thisH=snH;
var thisT=sI[c][i][1];
var splitT=thisT.split('<br>');
var Trows=splitT.length;
if (Trows>1) { thisH=(snH*Trows); }
chTop[c][i+1]=chTop[c][i]+thisH+sbSIZE;
M+='<tr><td><table cellpadding=0 cellspacing=0 border=0><tr><td class=SUBmTD height='+thisH+'><ilayer id="subilayer'+c+'-'+i+'" width="'+(sP[c][0]-(sbSIZE*2))+'"><layer onmouseover="rCount=0\; clearTimeout(rTimer)\; cCM('+c+','+i+')\; oCM('+c+','+i+')\; subRollOpen('+c+','+i+')\; this.document.layers[0].visibility=\'show\'" width="'+(sP[c][0]-(2*sbSIZE))+'" height="'+thisH+'" '+bks[3]+' id="subcontainer'+c+'-'+i+'"><layer width="100%" height="100%" visibility=hide><layer id="sublink'+[c]+'-'+[i]+'" left=0 onload="findSubWidths('+c+',this,this.clip.right,this.clip.bottom,'+thisH+')"><div width="100%" height="100%" align='+sP[c][2]+'><a href="'+sI[c][i][0]+'" target="'+sI[c][i][2]+'">'+ sI[c][i][1]+'</a></div></layer></layer></layer></ilayer></td></tr></table></td></tr>';
}
M+='</table></layer></layer>';
} else {
M+='<layer visibility=hide id="subnav'+c+'"></layer>';
}
for (sq=0;sq<sI[c].length;sq++){
thisCHtop[c][sq]=new Array;
// find wrapping links routine by brendan armstrong
var thisH=snH;
var thisT=sI[c][sq][1];
var splitT=thisT.split('<br>');
var Trows=splitT.length;
if (Trows>1) { thisH=(snH*Trows); }
cTxt[c][sq]=new Array;
sTxt[sq]='';
if(sI[c][sq][3]!="none"){
if(altDISPLAY=="status"){sTxt[sq]=' onmouseover="return writeStatus(sI['+c+']['+sq+'][3])" onmouseout="return writeStatus(altNull)" ';}
}
// sub rollover layers
M+='<layer visibility=hide '+bks[5]+' id="subroll'+c+'-'+sq+'" top='+(chTop[c][sq]+sbSIZE+tj)+' left='+(acL+sbSIZE) +' width='+(sP[c][0]-(sbSIZE*2))+' height='+thisH+' onmouseover="rCount=0\; clearTimeout(rTimer)\; oCM('+c+','+sq+')\; subRollOpen('+c+','+sq+')" onmouseout="if(!keepSubLIT){subRollClear('+c+')\;miH(this)}">';
M+='<layer width="100%" height="100%" '+sTxt[sq]+'><table cellpadding=0 cellspacing=0 border=0 width="100%" height="100%"><tr><td>';
M+='<layer top=0 left=0 onload="findSubWidths('+c+',this,this.clip.right,this.clip.bottom,'+thisH+')"><div width="100%" height="100%" align='+sP[c][2]+'>';
var tcItem='<a href="'+sI[c][sq][0]+'" target="'+sI[c][sq][2]+'" '+sTxt[sq]+'>';
if((cellCLICK||(cellCLICK==mu))&&sI[c][sq][2]=="_blank"){tcItem='<a href="'+sI[c][sq][0]+'" onclick="activateClick(sI['+c+']['+sq+'][0])\;return false" '+sTxt[sq]+'>';}
M+='<span class=SUBmTD>'+tcItem+'<font color="'+saRoll+'">'+ sI[c][sq][1]+'</font></a></span></div>';
M+='</layer></td></tr></table></layer></layer>';
// default cursor layer for non-link submenu items
if(sI[c][sq][0]=="#"){
M+='<layer visibility=hide id="defaultSubLayer'+c+'-'+sq+'" top='+(chTop[c][sq]+sbSIZE+tj)+' left='+(acL+sbSIZE) +' width='+(sP[c][0]-(sbSIZE*2))+' height='+thisH+' onmouseover="cCM('+c+','+sq+')\; oCM('+c+','+sq+')\; subRollOpen('+c+','+sq+')" onmouseout="if(!keepSubLIT){subRollClear('+c+')}"><layer width="100%" height="100%" '+sTxt[sq]+'></layer></layer>';
}
//alert("assemble child menus");
if(cP[c][sq].length>0&&cI[c][sq].length>0){
// specify edge alignment
var chL;
if(cP[c][sq][1]=="right"){
chL=acL-cP[c][sq][0]-chhOFFSET-cP[c][sq][4];
cgL=chL+cP[c][sq][0];
} else {
chL=acL+sP[c][0]+chhOFFSET+cP[c][sq][4];
cgL=(chL-(chhOFFSET+cP[c][sq][4]));
}
// grid block layer for horizontal offset
if((chhOFFSET+cP[c][sq][4])>0){
C+='<layer id="childgrid'+c+'-'+sq+'" visibility=hide top='+((chTop[c][sq]+chvOFFSET)+cP[c][sq][3]+tj)+' left='+cgL+' width='+(chhOFFSET+cP[c][sq][4])+' height='+(((snH+sbSIZE)*cI[c][sq].length)+sbSIZE)+' onmouseover="rCount=0\;clearTimeout(rTimer)\;"></layer>';
}
// child dropshadow
if(shCOLOR!=""){C+='<layer id="childshadow'+c+'-'+sq+'" '+bks[6]+' visibility=hide top='+((chTop[c][sq]+shSIZE+chvOFFSET)+cP[c][sq][3]+tj-shb)+' left='+(chL+shSIZE-shb)+' width='+(cP[c][sq][0]+shb)+' height=10>&nbsp;</layer>';}
// compile cells
C+='<layer visibility=hide id="childnav'+c+'-'+sq+'" top='+((chTop[c][sq]+chvOFFSET)+cP[c][sq][3]+tj)+' left='+chL+'>';
C+='<layer top=0 left=0 '+bks[4]+' onload="findChildHeight('+c+','+sq+',this.clip.bottom)"><table cellpadding=0 cellspacing='+sbSIZE+' border=0>';
for (cj=0;cj<cI[c][sq].length;cj++){
// find wrapping links routine by brendan armstrong
var thisH=snH;
var thisT=cI[c][sq][cj][1];
var splitT=thisT.split('<br>');
var Trows=splitT.length;
if (Trows>1) { thisH=(snH*Trows); }
if(cI[c][sq][cj][0]=="#"){cI[c][sq][cj][0]="javascript:doNothing()";}
if(cI[c][sq].length>0){
C+='<tr><td><table cellpadding=0 cellspacing=0 border=0><tr><td class=SUBmTD height='+thisH+'><ilayer id="childilayer'+c+'-'+sq+'-'+cj+'" width="'+(cP[c][sq][0]-(sbSIZE*2))+'"><layer onmouseover="rCount=0\; clearTimeout(rTimer)\; childRollClear('+c+','+sq+')\; if(cI['+c+']['+sq+']['+cj+'][4]){childRollOpen('+c+','+sq+','+cj+')\;}" width="'+(cP[c][sq][0]-(2*sbSIZE))+'" height="'+thisH+'" '+bks[3]+' id="childcontainer'+c+'-'+sq+'-'+cj+'"><layer width="100%" height="100%"><layer left=0 top='+((svPADDING/2)+svtOFFSET)+' onload="findChildWidths('+c+','+sq+',this,this.clip.right,this.clip.bottom,'+thisH+')"><div width="100%" height="100%" align='+cP[c][sq][2]+'><a href="'+cI[c][sq][cj][0]+'" target="'+cI[c][sq][cj][2]+'">'+ cI[c][sq][cj][1]+'</a></div></layer></layer></layer></ilayer></td></tr></table></td></tr>';
}
}
C+='</table></layer></layer>';
// child rollover layers
thisCHtop[c][sq][0] = chTop[c][sq]+chvOFFSET+cP[c][sq][3]+sbSIZE+tj;
for (cj=0;cj<cI[c][sq].length;cj++){
cTxt[c][sq][cj]='';
if(cI[c][sq][cj][3]!="none"){
if(altDISPLAY=="status"){cTxt[c][sq][cj]=' onmouseover="return writeStatus(cI['+c+']['+sq+']['+cj+'][3])" onmouseout="return writeStatus(altNull)" ';}
}
if(cI[c][sq].length>0){
// find wrapping links routine by brendan armstrong
var thisH=snH;
var thisT=cI[c][sq][cj][1];
var splitT=thisT.split('<br>');
var Trows=splitT.length;
if (Trows>1) { thisH=(snH*Trows); }
C+='<layer visibility=hide '+bks[5]+' id="childroll'+c+'-'+sq+'-'+cj+'" top='+thisCHtop[c][sq][cj]+' left='+(chL+sbSIZE) +' width='+(cP[c][sq][0]-(2*sbSIZE))+' height='+thisH+' onmouseover="rCount=0\; clearTimeout(rTimer)\;" onmouseout="miH(this)">';
C+='<layer width="100%" height="100%" '+cTxt[c][sq][cj]+'><layer left=0 top='+((svPADDING/2)+svtOFFSET)+' onload="findChildWidths('+c+','+sq+',this,this.clip.right,this.clip.bottom,'+thisH+')"><div width="100%" height="100%" align='+cP[c][sq][2]+'>';
var tcItem='<a href="'+cI[c][sq][cj][0]+'" target="'+cI[c][sq][cj][2]+'" '+cTxt[c][sq][cj]+'>';
if((cellCLICK||(cellCLICK==mu))&&cI[c][sq][cj][2]=="_blank"){tcItem='<a href="'+cI[c][sq][cj][0]+'" onclick="activateClick(cI['+c+']['+sq+']['+cj+'][0])\;return false" '+cTxt[c][sq][cj]+'>';}
C+='<span class=SUBmTD>'+tcItem+'<font color="'+saRoll+'">'+ cI[c][sq][cj][1]+'</font></a></span></div>';
C+='</layer></layer></layer>';
}
thisCHtop[c][sq][cj+1]=thisCHtop[c][sq][cj]+thisH+sbSIZE;
}
}
}
}
// draw grid layer
d.write(gSTR);
// draw stretch layer
if(!free){d.write(S);}
// draw main nav
d.write(T);
// draw submenus
d.write(M);
// draw child menus
d.write(C);
document.close();
// static positining
function moveObject(mobj,tmob) {if (mobj) {mobj.top=eval(window.pageYOffset)+tmob;}}
// static positioning code
var sTimer;
var stCount=0;
var tj=0;if(free){tj=0;}
var shb=0;if(shy){shb=(2*shSIZE);}
function makeStatic(){
if(!free){
moveObject(d.layers["stretchnav"],aP[0]);
moveObject(d.layers["mainnav"],aP[0]);
moveObject(d.layers["undernav"],aP[0]);
moveObject(d.layers["gridL"],aP[0]);
moveObject(d.layers["gridR"],aP[0]);
}
moveObject(d.layers["grid"],0);
for(i=0;i<mI.length;i++){
xp=0;if(free){xp=i};
if(free){ moveObject(d.layers["free"+i],aP[xp]); }
moveObject(d.layers["defaultLayer"+i],(aP[xp]+bSIZE));
moveObject(d.layers["roll"+i],(aP[xp]+bSIZE));
moveObject(d.layers["subnav"+i],(aP[xp]+thisAH[i]+tj));
moveObject(d.layers["shadow"+i],(aP[xp]+thisAH[i]+vOFFSET+sP[i][3]+shSIZE+tj-shb));
if(sI[i]){
for(sq=0;sq<sI[i].length;sq++){
moveObject(d.layers["subroll"+i+"-"+sq],(chTop[i][sq]+sbSIZE+tj));
moveObject(d.layers["defaultSubLayer"+i+"-"+sq],(chTop[i][sq]+sbSIZE+tj));
moveObject(d.layers["childnav"+i+"-"+sq],((chTop[i][sq]+chvOFFSET)+cP[i][sq][3]+tj));
moveObject(d.layers["childgrid"+i+"-"+sq],((chTop[i][sq]+chvOFFSET)+cP[i][sq][3]+tj));
moveObject(d.layers["childshadow"+i+"-"+sq],((chTop[i][sq]+shSIZE+chvOFFSET)+cP[i][sq][3]+tj-shb));
if(cI[i][sq]){
for(cj=0;cj<cI[i][sq].length;cj++){
moveObject(d.layers["childroll"+i+"-"+sq+"-"+cj],thisCHtop[i][sq][cj]);
}}}}}
sTimer=setTimeout("makeStatic()",10);
}
// resize / reload trap
function nsinit(){
if(allowRESIZE==true||allowRESIZE==mu){
if (win) { setTimeout("window.onresize=redo", 1000); }
else { window.onresize=redo; }}
// initialise static positioning
if(staticMENU){makeStatic();}}
function redo(){window.location.reload();}
window.onload=genericOnloadFunction;
// go to url
function goToUrl(cUrl,cTarg){
if(cellCLICK||(cellCLICK==mu)){
if(cTarg=="_self"){self.document.location=cUrl;}
else if(cTarg=="_top"){top.document.location=cUrl;}
else if(cTarg=="_parent"){parent.document.location=cUrl;}
else if(cTarg=="_blank"){var newwin=open(cUrl);}
else {if(top.frames[cTarg]){top.frames[cTarg].document.location=cUrl} else {document.location=cUrl;}}
document.close();}}
// set up and handle menu clearing event
var grL=document.layers["gridL"];
var grR=document.layers["gridR"];
var gr=document.layers["grid"];
gr.onmousedown=new Function("layerDownHandler()");
gr.captureEvents(Event.MOUSEDOWN);
if(document.layers["gridL"]){
grL.onmousedown=new Function("layerDownHandler()");
grL.captureEvents(Event.MOUSEDOWN);}
if(document.layers["gridR"]){
grR .onmousedown=new Function("layerDownHandler()");
grR .captureEvents(Event.MOUSEDOWN);}
function layerDownHandler(){aCM();document.close();}
// set up and handle cell click events
if(cellCLICK||(cellCLICK==mu)){
for (me=0;me<mI.length;me++){
document.layers["roll"+me].onclick=new Function("findMainUrl("+me+")")
document.layers["roll"+me].captureEvents(Event.CLICK);
for (se=0;se<sI[me].length;se++){
var serollid="subroll"+me+"-"+se;
document.layers["subroll"+me+"-"+se].onclick=new Function("findSubUrl("+me+","+se+")")
document.layers["subroll"+me+"-"+se].captureEvents(Event.CLICK);
for(ce=0;ce<cI[me][se].length;ce++){
document.layers["childroll"+me+"-"+se+"-"+ce].onclick=new Function("findChildUrl("+me+","+se+","+ce+")")
document.layers["childroll"+me+"-"+se+"-"+ce].captureEvents(Event.CLICK);}}}}
// find info from mouse clicks
function findMainUrl(mId){
var mU=mI[mId][0];
var mT=mI[mId][4];
goToUrl(mU,mT);}
function findSubUrl(mId,sId){
var sU=sI[mId][sId][0];
var sT=sI[mId][sId][2];
goToUrl(sU,sT);}
function findChildUrl(mId,sId,cId){
var cU=cI[mId][sId][cId][0];
var cT=cI[mId][sId][cId][2];
goToUrl(cU,cT);}

768
addons/menu_bar/menu_ns6.js Normal file
View File

@ -0,0 +1,768 @@
//UDMv3.1
// filter for undefined arrays
for (f=0;f<mI.length;f++){
if(!sP[f]){sP[f]=new Array(mI[f][2],mI[f][3],mI[f][3],0,0);}
if(!cP[f]){cP[f]=new Array;}
if(!sI[f]){sI[f]=new Array;}
if(!cI[f]){cI[f]=new Array;}
for (sf=0;sf<sI[f].length;sf++){
if(!cP[f][sf]){cP[f][sf]=new Array;}
if(!cI[f][sf]){cI[f][sf]=new Array;}
}
}
// differentiate between ns6.1 and earlier versions and between mz0.6 and later versions
var ns61=true;
if (ns6&&(agt.indexOf("6.0")!=-1)) { ns61=false; };
var mz6=false;
if (mz7&&(agt.indexOf("0.6")!=-1)) { mz6=true; }
//djochange
//compensates for unconstrained nav stretching
if (konqi == true) {
mz6 = true;
ns61 = false;
}
//end djochange
// appreviations
var bh=baseHREF;
var ttt='<table border=0 cellpadding=0 cellspacing=';
var aL=absLEFT; aT=absTOP;
if(aT<0){aT=0;}
if(aL<0){aL=0;}
// convert shadow type
var shy=false;
if ((typeof shSIZE)=="string") {
shy=true;
shSIZE=Number(shSIZE);
}
// find the inner width and height of the browser window
var bW=window.innerWidth;
var bHe=window.innerHeight;
// compensate for lack of scrollbar if applicable
//djochange added the if loop checking for Konqi. Konqi doesn't need to be adjusted
if (!konqi) {
if(mz7){
if(document.width < (innerWidth-17)){bW-=17;}
if(menuALIGN=="free"){bW-=17;}
} else if(ns6){
if(document.width <= (innerWidth-30)){bW-=14;}
if(menuALIGN=="free"){bW-=14;}
}
}
//end djochange
// find the nav width and horizontal space
var eS=0;
var nS=0;
for (j=0;j<mI.length;j++){
if(mI[j][2]==""){mI[j][2]=10;}
if(mI[j][1]==""){mI[j][1]='&nbsp;';
}
nS+=mI[j][2]+bSIZE;
}
eS=bW-nS-bSIZE;
if(menuALIGN!="free"&&(bW<nS)){menuALIGN="left"; aL=0; stretchMENU=false; showBORDERS=false;}
// find the nav height
var nH=fSIZE+5+vPADDING;
if (fSIZE<13) { nH+=(13-sfSIZE); }
var onH=nH;
// find wrapping links routine by brendan armstrong
var Mrows=new Array;var Nrows=new Array;
var thisNH=new Array;var thisAH=new Array;
for(i=0;i<mI.length;i++){
var thisT=mI[i][1];
var splitT=thisT.split('<br>');
Mrows[i]=splitT.length;
Nrows[i]=Mrows[i];
}
function cFun(a,b) { return b-a; }
Mrows.sort(cFun);
nH=nH*Mrows[0];
var aH=nH+(bSIZE*2);
// find the subnav item height
var snH=sfSIZE+5+svPADDING;
if (sfSIZE<13) { snH+=(13-sfSIZE); }
var asH=snH+(sbSIZE*2);
for(i=0;i<mI.length;i++){
thisNH[i]=nH;if(menuALIGN=="free"){thisNH[i]=onH*Nrows[i];}
thisAH[i]=nH+(bSIZE*2);if(menuALIGN=="free"){thisAH[i]=thisNH[i]+(2*bSIZE);}
}
// set values for different alignments
var free=false;
var xp=0;
var aP=new Array;
var aPL=new Array;
if(menuALIGN=="free"){
free=true;
for (xc=0;xc<mI.length;xc++){
aP[xc]=mI[xc][6]+aT;
aPL[xc]=mI[xc][7]+aL;
//alert(aP[xc]);
}
} else {
aP[xp]=aT;
}
var stAdjust=0; var abR; var rL;
var ralign=false;
if(menuALIGN=="right"){
ralign=true;
abR=aL;
aL=eS-abR;
rL=aL;
if(rL<0){rL=0;}
aL=0;
}
var calign=false;
if(menuALIGN=="center"){
calign=true;
aL=parseInt(eS/2);
rL=aL;
if(rL<0){rL=0;}
aL=0;
}
var lalign=false;
if(menuALIGN=="left"){
lalign=true;
abR=aL;
rL=aL;
if((op5||stretchMENU)&&abR>0){stAdjust=abR+(2*bSIZE);}
if(rL<0){rL=0;}
if(stretchMENU){aL=0;}
}
var subLEFT=rL;
if(ralign){subLEFT-=abR;}
if(lalign){subLEFT+=abR;}
// how many main nav items
var ntl=0;
for (intl=0;intl<mI.length;intl++){if(mI[intl][1]!=""){ntl++;}}
var cStyle='cursor:hand';
// do nothing
function doNothing(){}
// find background colors or images
var back_defs=new Array(mCOLOR,bCOLOR,rCOLOR,smCOLOR,sbCOLOR,srCOLOR);
var useIMG=new Array(false,false,false,false,false,false)
var bks=new Array;
for (b=0;b<6;b++){
bks[b]='bgcolor='+back_defs[b];
if((back_defs[b].indexOf('.gif') != -1) || (back_defs[b].indexOf('.jpg') != -1) || back_defs[b]==''){useIMG[b]=true;}
if(useIMG[b]){
bks[b]='background="'+bh + back_defs[b]+'"';
}
if(back_defs[b]==''){bks[b]='';}
}
// convert shadow opacity
var mzOpac=100;
if (ns61) { mzOpac=Math.round(shOPACITY/10) / 10; }
// store some object references
var oR=new Array;
for (obr=0;obr<13;obr++){oR[obr]=new Array;}
function storeObjects(){
obGrid=document.getElementById("grid");
for (sob=0;sob<mI.length;sob++){
oR[0][sob]=d.getElementById('roll'+sob);
oR[1][sob]=d.getElementById('subnav'+sob);
oR[2][sob]=d.getElementById('sublinks'+sob);
if((vOFFSET+sP[sob][3])>0){oR[3][sob]=d.getElementById('gridblocker'+sob);}
if(d.getElementById('gridLblocker'+sob)){oR[12][sob]=d.getElementById('gridLblocker'+sob);}
if(shCOLOR!=""){oR[4][sob]=d.getElementById('shadow'+sob);}
for (sobr=5;sobr<12;sobr++){oR[sobr][sob]=new Array;}
for (soj=0;soj<sI[sob].length;soj++){
oR[5][sob][soj]=d.getElementById('subroll'+sob+'-'+soj);
if(cP[sob][soj]){
if(cP[sob][soj].length>0){
oR[6][sob][soj]=d.getElementById('subroll'+sob+'-'+soj);
if(shCOLOR!=""){oR[7][sob][soj]=d.getElementById('childshadow'+sob+'-'+soj);}
if((chhOFFSET+cP[sob][soj][4])>0){oR[8][sob][soj]=d.getElementById('childgrid'+sob+'-'+soj);}
oR[9][sob][soj]=d.getElementById('childnav'+sob+'-'+soj);
oR[10][sob][soj]=d.getElementById('childlinks'+sob+'-'+soj);
oR[11][sob][soj]=new Array;
for (scj=0;scj<cI[sob][soj].length;scj++){
oR[11][sob][soj][scj]=d.getElementById('childroll'+sob+'-'+soj+'-'+scj);
}
}
}
}
}
genericOnloadFunction();
}
// code saving visibility toggles
function miH(hr){if(hr){hr.style.visibility="hidden";}}
function miV(hv){if(hv){hv.style.visibility="visible";}}
// clear submenus
var pId=-1;
var pCId=-1;
var rTimer=0;var rCount=0;
function aCM(n){
if(pId>-1){
if(rTimer!=0){clearTimeout(rTimer); rTimer=0; rCount=0;}
miH(oR[0][pId]);
miH(oR[3][pId]);
miH(oR[12][pId]);
miH(oR[1][pId]);
miH(oR[2][pId]);
miH(oR[4][pId]);
if(pCId>-1){
miH(oR[5][pId][pCId]);
if(cP[pId][pCId]){
if(cP[pId][pCId].length>0){
for (cjc=0;cjc<cI[pId][pCId].length;cjc++){
miH(oR[11][pId][pCId][cj]);
}
miH(oR[9][pId][pCId]);
miH(oR[10][pId][pCId]);
miH(oR[7][pId][pCId]);
miH(oR[8][pId][pCId]);
}
}
}
miH(obGrid);
}
pId=-1; pCId=-1;
usegrid=false;
}
// start menu closing timer
function cM(n){
var nsNum=n;
if(pCId==-1&&!usegrid){
aCM(nsNum);
} else {
if(rCount==0){
rCount++;
rTimer=setTimeout("cM(pId)",closeTIMER);
} else {
aCM(nsNum);
pId=-1;pCId=-1;
}
}
}
// special closing for grid
var usegrid=false;
function gridClearMenus(){
usegrid=true;
cM();
}
// rollover and find menu
var n;
var gridOkay=false;
function oM(n){
miV(oR[0][n]);
if(sI[n]!=""){
if(sI[n]!=''){
miV(oR[4][n]);
}
miV(oR[1][n]);
miV(oR[2][n]);
miV(oR[3][n]);
miV(oR[12][n]);
if(pCId>-1){
miH(oR[5][n][pCId]);
}
}
miV(obGrid);
pId=n;
}
// clear child menus
function cCM(snum,cnum){
if(pCId>-1){
miH(oR[5][snum][pCId]);
if(cP[snum][pCId].length>0&&cI[snum][pCId].length>0){
miH(oR[9][snum][pCId]);
miH(oR[10][snum][pCId]);
miH(oR[7][snum][pCId]);
miH(oR[8][snum][pCId]);
}
pCId=-1;
}
}
// actually open menu
function actuallyOpenChild(snum,cnum){
miV(oR[7][snum][cnum]);
miV(oR[9][snum][cnum]);
miV(oR[10][snum][cnum]);
if((chhOFFSET+cP[snum][cnum][4])>0){
miV(oR[8][snum][cnum]);
}
}
// rollover and find child menu
var snum; var cnum;
function oCM(snum,cnum){
var ntS=snum; var ntC=cnum;
if(sI[snum][cnum][4]){miV(oR[5][snum][cnum]);}
if(cP[snum][cnum].length>0&&cI[snum][cnum].length>0){
actuallyOpenChild(ntS,ntC);
}
pCId=cnum;
}
// td click handlers
function goToUrl(cUrl,cTarg){
if(cellCLICK||(cellCLICK==mu)){
if(cTarg=="_self"){self.document.location=cUrl;}
else if(cTarg=="_top"){top.document.location=cUrl;}
else if(cTarg=="_parent"){parent.document.location=cUrl;}
else if(cTarg=="_blank"){var newwin=open(cUrl)}
else {if(top[cTarg]){top[cTarg].document.location=cUrl} else {document.location=cUrl;}}
}
}
//alert("assemble main nav");
var T='';
var S='';
var spbk='';
if(bCOLOR!=""){
spbk=' background:'+bCOLOR+'\; '
if(useIMG[1]){spbk=' background-image:url('+ bh + bCOLOR+')\; ';}
}
// nav stretching and event capturing layer
var stbSize=bSIZE;
if(stretchMENU||showBORDERS){
S+='<span id="stretchnav" ';
var spbb='';
if(showBORDERS){spbb=spbk;} else {stbSize=0;}
S+='style="'+spbb+' z-index:'+(zORDER+1)+'\; position:absolute\; top:'+aP[xp]+'\; left:0\;">';
var stretchLayer='';
if(stretchMENU){stretchLayer=bks[0];}
//djochange2
// add konqi compensation for cell/stretch layer discrepancy here
if (konqi == true) {
aH += (2*bSIZE);
}
//end djochange2
S+='<table cellpadding=0 cellspacing='+stbSize+' border=0 width='+bW+' height='+aH+'><tr><td '+stretchLayer+' onmouseover="gridClearMenus()" onmousedown="aCM()">&nbsp;</td></tr></table>';
S+='</span>';
}
// event capturing layer
T+='<span id="grid" style="visibility:hidden\; position:absolute\; top:0\; left:0\; width:'+bW+'\; height:'+bHe+'\; z-index:'+zORDER+'" onmousedown="aCM()" onmouseover="gridClearMenus()"></span>';
// open frame
if(!free){
T+='<span id="mainnav" style="'+spbk+' z-index:'+(zORDER+2)+'\; position:absolute\; top:'+aP[xp]+'px\; left:'+rL+'px\;"><table cellpadding=0 cellspacing='+bSIZE+' border=0><tr>';
}
// link color behaviour
if(aHOVER==""){aHOVER=aLINK;}
var cSt=new Array;
var cTd=new Array;
var space=new Array;;
// alt text arrays
var aTxt=new Array;
var sTxt=new Array;
var cTxt=new Array;
var altNull='';
// write alt text to status bar
function writeStatus(sTxt){window.status=sTxt; return true;}
// links
var cSt=new Array;
var linkHover='';
for (i=0;i<mI.length;i++){
aTxt[i]='';
if(mI[i][5]!="none"){
if(altDISPLAY=="title"){aTxt[i]=' title="'+mI[i][5]+'" ';}
if(altDISPLAY=="status"){aTxt[i]=' onmouseover="return writeStatus(mI['+i+'][5])" onmouseout="return writeStatus(altNull)" ';}
}
space[i]=' left:0px\;';
if(mI[i][3]=="left"){space[i]=' left:'+tINDENT+'px\;';}
if(mI[i][3]=="right"){space[i]=' left:-'+tINDENT+'px\;';}
if(mI[i][1]!=""){
if(mI[i][0]==""){
mI[i][0]="javascript:doNothing()";
cSt[i]='cursor:default';
cTd[i]='cursor:default';
} else {
cSt[i]='cursor:'+aCURSOR;
cTd[i]='cursor:default';
if(cellCLICK==true){cTd[i]='cursor:'+aCURSOR;}
}
if(free){
T+='<span style="'+cSt[i]+'\; '+spbk+' z-index:'+(zORDER+2)+'\; position:absolute\; top:'+aP[i]+'px\; left:'+aPL[i]+'px\;"><table cellpadding=0 cellspacing='+bSIZE+' border=0><tr>';
}
T+='<td onmouseover="aCM()\; oM('+i+')" class=mTD height='+thisNH[i]+' '+bks[0]+' width="'+(mI[i][2])+'"><table cellpadding=0 cellspacing=0 border=0 width="'+(mI[i][2])+'" height="100%" style="'+cTd[i]+'\;"><tr><td align="'+mI[i][3]+'" onclick="goToUrl(mI['+i+'][0],mI['+i+'][4])" '+aTxt[i]+'><a href="'+mI[i][0]+'" target="'+mI[i][4]+'" onclick="if(cellCLICK||(cellCLICK==mu)){return false}" style="'+cSt[i]+'\; position:relative\; top:'+vtOFFSET+'\; '+space[i]+'">'+mI[i][1]+'</a></td></tr></table></td>';
if(free){T+='</tr></table></span>';}
}
}
// close frame
if(!free){T+='</tr></table></span>';}
// rollovers
var layLeft=rL+bSIZE;
for (i=0;i<mI.length;i++){
if(free){layLeft=mI[i][7]+bSIZE+aL; xp=i;}
T+='<span id="roll'+i+'" style="'+cTd[i]+'\; position:absolute\; top:'+(aP[xp]+bSIZE)+'\; left:'+layLeft+'\; z-index:'+(zORDER+3)+'\; visibility:hidden\;" onmouseout="if(!keepLIT){miH(this)}"><table cellpadding=0 cellspacing=0 border=0 '+bks[2]+' onmouseover="oM('+i+')"><tr><td style="width:'+(mI[i][2])+'\; height:'+thisNH[i]+'\;" align="'+mI[i][3]+'" class=mTD onclick="goToUrl(mI['+i+'][0],mI['+i+'][4])" '+aTxt[i]+'><a href="'+mI[i][0]+'" target="'+mI[i][4]+'" onclick="if(cellCLICK||(cellCLICK==mu)){return false}" style="'+cSt[i]+'\; position:relative\; top:'+vtOFFSET+'\; '+space[i]+'"><font color="'+aHOVER+'">'+mI[i][1]+'</font></a></td></tr></table></span>';
if(!free){layLeft+=(mI[i][2]+bSIZE);}
}
// assemble submenus
var M='';
var C='';
var SUBaL=0;
var chTop=new Array;
var Xrows=new Array;
var XCrows=new Array;
for (c=0;c<mI.length;c++){
Xrows[c]=0;
XCrows[c]=new Array;
sTxt[c]=new Array;
cTxt[c]=new Array;
// specify top position
if(free){xp=c;}
var mzSubAbsTop=sbSIZE;
chTop[c]=new Array;
chTop[c][0]=aP[xp]+thisAH[c]+vOFFSET+sP[c][3];
// text alignment and indentation
var space=' left:0px\;';
if(sP[c][2]=="left"){space=' left:'+stINDENT+'px\;';}
if(sP[c][2]=="right"){space=' left:-'+stINDENT+'px\;';}
// find next submenu position
if(!free){
if(c==0){
SUBaL=rL+bSIZE;
}
else {SUBaL+=mI[(c-1)][2]+bSIZE;}
} else {
SUBaL=aPL[c];
}
// specify edge alignment
var acL=SUBaL+hOFFSET+sP[c][4];
if(sP[c][1]=="right"){
acL=SUBaL-(sP[c][0]-mI[c][2])-hOFFSET-sP[c][4];
}
// grid block layer for vertical offset
if((vOFFSET+sP[c][3])>0){M+='<div id="gridblocker'+c+'" style="width:'+sP[c][0]+'px\; height:'+(vOFFSET+sP[c][3])+'\; visibility:hidden\; z-index:'+(zORDER+1)+'\;position:absolute\; top:'+(aP[xp]+thisAH[c])+'px\; left:'+acL+'px\;" onmouseover="if(rTimer!=0){clearTimeout(rTimer)\;rCount=0\;}"></div>';}
// grid block layer for horizontal offset
var gblw=acL-mI[c][2]-SUBaL;
var gbposL=(SUBaL+mI[c][2]+(2*bSIZE));
if(sP[c][1]=="right"){
gblw=mI[c][7]+bSIZE+aL-sP[c][0]-acL;
gbposL=(mI[c][7]+bSIZE+aL-gblw);
}
for (i=0;i<sI[c].length;i++){
if(sI[c][i][0]!=''&&sI[c][i][1]!=''){
// find wrapping links routine by brendan armstrong
var thisH=snH;
var thisT=sI[c][i][1];
var splitT=thisT.split('<br>');
var Trows=splitT.length;
if (Trows>1) { Xrows[c]+=(Trows-1); }
}}
// grid blocker for offset
var shb=0;if(shy){shb=(2*shSIZE);}
if(gblw>0){M+='<div id="gridLblocker'+c+'" style="width:'+gblw+'px\; height:'+(((snH+sbSIZE)*sI[c].length)+((snH)*Xrows[c])+sbSIZE+shb+shSIZE)+'px\; visibility:hidden\; z-index:'+(zORDER+1)+'\;position:absolute\; top:'+(aP[xp]+thisAH[c]+vOFFSET+sP[c][3])+'px\; left:'+gbposL+'px\;" onmouseover="if(rTimer!=0){clearTimeout(rTimer)\;rCount=0\;}"></div>';}
// container cells
M+='<span id="subnav'+c+'" style="visibility:hidden\; z-index:'+(zORDER+4)+'\; position:absolute\; top:'+(aP[xp]+thisAH[c]+vOFFSET+sP[c][3])+'px\; left:'+acL+'px\;"><table cellpadding=0 cellspacing=0 width="'+sP[c][0]+'" border=0 '+bks[4]+'>';
for (i=0;i<sI[c].length;i++){
if(sI[c][i][0]!=''&&sI[c][i][1]!=''){
var subParent='subnav'+c;
// find wrapping links routine by brendan armstrong
var thisH=snH;
var thisT=sI[c][i][1];
var splitT=thisT.split('<br>');
var Trows=splitT.length;
if (Trows>1) { thisH=(snH*Trows); }
//djochange2
//added kAdjust for item height
var kAdjust=0;
if (konqi) { kAdjust=sbSIZE; }
//end djochange2
//this adds height to submenu container cells
M+='<tr><td><table cellpadding=0 cellspacing=0 '+bks[3]+' border=0 style="position:relative\; margin-top:'+sbSIZE+'\; margin-left:'+sbSIZE+'\; margin-right:'+sbSIZE+'\; height:'+(thisH+kAdjust)+'\;" width="'+(sP[c][0]-(sbSIZE*2))+'"><tr><td class=SUBmTD align="'+sP[c][2]+'"><table cellpadding=0 cellspacing=0 border=0 width="'+(sP[c][0]-(sbSIZE*2))+'" height='+(thisH+kAdjust)+'><tr><td align="'+sP[c][2]+'">&nbsp;</td></tr></table></td></tr></table></td></tr>';
}
}
M+='<tr><td><div style="width:2px\; height:'+sbSIZE+'px\;"></div></td></tr>';
M+='</table></span>';
// link color behaviour
if(saHOVER==""){saHOVER=saLINK;}
// links
M+='<span id="sublinks'+c+'" style="visibility:hidden\; z-index:'+(zORDER+5)+'\; position:absolute\; top:'+(aP[xp]+thisAH[c]+vOFFSET+sP[c][3])+'px\; left:'+acL+'px\;"><table cellpadding=0 cellspacing=0 width="'+sP[c][0]+'" border=0>';
var scSt=new Array;
var scTd=new Array;
for (i=0;i<sI[c].length;i++){
cTxt[c][i]=new Array;
sTxt[c][i]='';
if(sI[c][i][3]!="none"){
if(altDISPLAY=="title"){sTxt[c][i]=' title="'+sI[c][i][3]+'" ';}
if(altDISPLAY=="status"){sTxt[c][i]=' onmouseover="return writeStatus(sI['+c+']['+i+'][3])" onmouseout="return writeStatus(altNull)" ';}
}
if(sI[c][i][0]=="#"){
sI[c][i][0]="javascript:doNothing()";
scSt[i]='cursor:default';
scTd[i]='cursor:default';
} else {
scSt[i]='cursor:'+aCURSOR;
scTd[i]='cursor:default';
if(cellCLICK==true){scTd[i]='cursor:'+aCURSOR;}
}
var subParent='subnav'+c;
// find wrapping links routine by brendan armstrong
var thisH=snH;
var thisT=sI[c][i][1];
var splitT=thisT.split('<br>');
var Trows=splitT.length;
if (Trows>1) { thisH=(snH*Trows); }
chTop[c][i+1]=chTop[c][i]+thisH+sbSIZE;
//djochange2
//added kAdjust for item height
var kAdjust=0;
if (konqi) { kAdjust=sbSIZE; }
//end djochange2
//this adds height to submenu link layers
M+='<tr><td><table border=0 cellpadding=0 cellspacing=0 style="position:relative\; top:'+mzSubAbsTop+'\; margin-top:0\; margin-left:'+sbSIZE+'\; margin-right:'+sbSIZE+'\; " onmouseover="if(rTimer!=0){clearTimeout(rTimer)\;rCount=0\;}cCM('+c+','+i+')\; oCM('+c+','+i+')\;"><tr><td class=SUBmTD align="'+sP[c][2]+'" width="'+(sP[c][0]-(sbSIZE*2))+'" height='+(thisH+kAdjust)+' onclick="goToUrl(sI['+c+']['+i+'][0],sI['+c+']['+i+'][2])" '+sTxt[c][i]+'><a href="'+sI[c][i][0]+'" id="sublink'+c+'-'+i+'" target="'+sI[c][i][2]+'" onclick="if(cellCLICK||(cellCLICK==mu)){return false}" style="'+scSt[i]+'\; position:relative\; top:'+(svtOFFSET)+'\; '+space+'">'+ sI[c][i][1]+'</a></td></tr></table></td></tr>';
// correct for positioning discrepancy
// added Konqi to this line
if(mz7||ns61||konqi){mzSubAbsTop += sbSIZE;}
}
M+='<tr><td><div style="width:2px\; height:'+sbSIZE+'px\;"></div></td></tr>';
M+='</table></span>';
// rollovers
for (i=0;i<sI[c].length;i++){
// find wrapping links routine by brendan armstrong
var thisH=snH;
var thisT=sI[c][i][1];
var splitT=thisT.split('<br>');
var Trows=splitT.length;
if (Trows>1) { thisH=(snH*Trows); }
M+='<span id="subroll'+c+'-'+i+'" style="'+scTd[i]+'\; z-index:'+(zORDER+5)+'\; position:absolute; top:'+(chTop[c][i]+sbSIZE)+'\; left:'+(acL+sbSIZE)+'\; visibility:hidden\;" onmouseover="if(rTimer!=0){clearTimeout(rTimer)\;rCount=0\;}" onmouseout="if(!keepSubLIT){miH(this)}"><table cellpadding=0 cellspacing=0 border=0 '+bks[5]+' onmouseover="cCM('+c+','+i+')\; oCM('+c+','+i+')\;"><tr><td class=SUBmTD align="'+sP[c][2]+'" width="'+(sP[c][0]-(sbSIZE*2))+'" height='+thisH+' onclick="goToUrl(sI['+c+']['+i+'][0],sI['+c+']['+i+'][2])" '+sTxt[c][i]+'><a href="'+sI[c][i][0]+'" id="sublink'+c+'-'+i+'" target="'+sI[c][i][2]+'" onclick="if(cellCLICK||(cellCLICK==mu)){return false}" style="'+scSt[i]+'\; position:relative\; top:'+(svtOFFSET)+'\; '+space+'"><font color="'+saHOVER+'">'+ sI[c][i][1]+'</font></a></td></tr></table></span>';
}
// drop shadow
var shb=0;if(shy){shb=(2*shSIZE);}
if(shCOLOR!=""){M+='<span id="shadow'+c+'" style="visibility:hidden\; -moz-opacity:'+mzOpac+'\; background-image:url('+bh + shCOLOR+')\; background-color:'+shCOLOR+'\; z-index:'+(zORDER+3)+'\; position:absolute\; top:'+(aP[xp]+thisAH[c]+vOFFSET+sP[c][3]+shSIZE-shb)+'px\; left:'+(acL+shSIZE-shb)+'px\; width:'+(sP[c][0]+shb)+'\; height:' + (((snH+sbSIZE)*sI[c].length)+((snH)*Xrows[c])+sbSIZE+shb) + 'px\;"></span>';}
//alert("assemble child menus");
for (sq=0;sq<sI[c].length;sq++){
if(cP[c][sq].length>0&&cI[c][sq].length>0){
XCrows[c][sq]=0;
// specify edge alignment
var chL;
if(cP[c][sq][1]=="right"){
chL=acL-cP[c][sq][0]-chhOFFSET-cP[c][sq][4];
cgL=chL+cP[c][sq][0];
} else {
chL=acL + sP[c][0]+chhOFFSET+cP[c][sq][4];
cgL=(chL-(chhOFFSET+cP[c][sq][4]));
}
for (cj=0;cj<cI[c][sq].length;cj++){
// find wrapping links routine by brendan armstrong
var thisH=snH;
var thisT=cI[c][sq][cj][1];
var splitT=thisT.split('<br>');
var Trows=splitT.length;
if (Trows>1) { XCrows[c][sq]+=(Trows-1); }
}
// grid block layer for offset
if((chhOFFSET+cP[c][sq][4])>0){
C+='<span id="childgrid'+c+'-'+sq+'" style="visibility:hidden\; z-index:'+(zORDER+1)+'\; position:absolute\; top:'+((chTop[c][sq]+chvOFFSET)+cP[c][sq][3])+'px\; left:'+cgL+'px\; width:'+(chhOFFSET+cP[c][sq][4])+'px\; height:'+(((snH+sbSIZE)*cI[c][sq].length)+((snH)*XCrows[c][sq])+sbSIZE+shb+shSIZE)+'px\;" onmouseover="if(rTimer!=0){clearTimeout(rTimer)\;rCount=0\;}"></span>';
}
// container cells
C+='<span id="childnav'+c+'-'+sq+'" style="visibility:hidden\; z-index:'+(zORDER+6)+'\; position:absolute\; top:'+ (chTop[c][sq]+chvOFFSET+cP[c][sq][3])+'px\; left:'+chL+'px\;"><table cellpadding=0 cellspacing=0 width="'+cP[c][sq][0]+'" border=0 '+bks[4]+'>';
for (cj=0;cj<cI[c][sq].length;cj++){
// find wrapping links routine by brendan armstrong
var thisH=snH;
var thisT=cI[c][sq][cj][1];
var splitT=thisT.split('<br>');
var Trows=splitT.length;
if (Trows>1) { thisH=(snH*Trows); }
//djochange2
//added kAdjust for item height
var kAdjust=0;
if (konqi) { kAdjust=sbSIZE; }
//end djochange
//this adds height to child menu container cells
C+='<tr><td><table cellpadding=0 cellspacing=0 '+bks[3]+' border=0 style="position:relative\; margin-top:'+sbSIZE+'\; margin-left:'+sbSIZE+'\; margin-right:'+sbSIZE+'\; height:'+(thisH+kAdjust)+'\;" width="'+(cP[c][sq][0]-(sbSIZE*2))+'"><tr><td class=SUBmTD align="'+cP[c][sq][2]+'"><table cellpadding=0 cellspacing=0 border=0 width="'+(cP[c][sq][0]-(sbSIZE*2))+'" height='+(thisH+kAdjust)+'><tr><td align="'+cP[c][sq][2]+'">&nbsp;</td></tr></table></td></tr></table></td></tr>';
}
C+='<tr><td><div style="width:2px\; height:'+sbSIZE+'px\;"></div></td></tr>';
C+='</table></span>';
// text alignment and indentation
var cspace=' left:0px\;';
if(cP[c][sq][2]=="left"){cspace=' left:'+stINDENT+'px\;';}
if(cP[c][sq][2]=="right"){cspace=' left:-'+stINDENT+'px\;';}
// links
C+='<span id="childlinks'+c+'-'+sq+'" style="visibility:hidden\; z-index:'+(zORDER+7)+'\; position:absolute\; top:'+(chTop[c][sq]+chvOFFSET+cP[c][sq][3])+'px\; left:'+chL+'px\;"><table cellpadding=0 cellspacing=0 width="'+cP[c][sq][0]+'" border=0>';
// added Konqi to this line
if(mz7||ns61||konqi){mzSubAbsTop=sbSIZE;}
for (cj=0;cj<cI[c][sq].length;cj++){
cTxt[c][sq][cj]='';
if(cI[c][sq][cj][3]!="none"){
if(altDISPLAY=="title"){cTxt[c][sq][cj]=' title="'+cI[c][sq][cj][3]+'" ';}
if(altDISPLAY=="status"){cTxt[c][sq][cj]=' onmouseover="return writeStatus(cI['+c+']['+sq+']['+cj+'][3])" onmouseout="return writeStatus(altNull)" ';}
}
// find wrapping links routine by brendan armstrong
var thisH=snH;
var thisT=cI[c][sq][cj][1];
var splitT=thisT.split('<br>');
var Trows=splitT.length;
if (Trows>1) { thisH=(snH*Trows); }
//djochange2
//added kAdjust for item height
var kAdjust=0;
if (konqi) { kAdjust=sbSIZE; }
//end djochange2
//this adds height to child menu link layers
var ccAl='cursor:'+aCURSOR;
var ccTd='cursor:default';if(cellCLICK==true){ccTd='cursor:'+aCURSOR;}
if(!cI[c][sq][cj][4]){ccAl='cursor:default';ccTd='cursor:default';}
if(cI[c][sq][cj][0]=="#"){cI[c][sq][cj][0]="javascript:doNothing()";}
C+='<tr><td><table cellpadding=0 cellspacing=0 border=0 style="position:relative\; top:'+mzSubAbsTop+'\; margin-top:0\; margin-left:'+sbSIZE+'\; margin-right:'+sbSIZE+'\; " onmouseover="if(rTimer!=0){clearTimeout(rTimer)\;rCount=0\;}if(cI['+c+']['+sq+']['+cj+'][4]){oR[11]['+c+']['+sq+']['+cj+'].style.visibility=\'visible\'\;}" onmouseout="oR[11]['+c+']['+sq+']['+cj+'].style.visibility=\'hidden\'\;"><tr><td class=SUBmTD align="'+cP[c][sq][2]+'" width="'+(cP[c][sq][0]-(sbSIZE*2))+'" height='+(thisH+kAdjust)+' onclick="goToUrl(cI['+c+']['+sq+']['+cj+'][0],cI['+c+']['+sq+']['+cj+'][2])" '+cTxt[c][sq][cj]+'><a href="'+cI[c][sq][cj][0]+'" id="childlink'+c+'-'+sq+'-'+cj+'" target="'+cI[c][sq][cj][2]+'" onclick="if(cellCLICK||(cellCLICK==mu)){return false}" style="' +ccAl+'\; position:relative\; top:'+(svtOFFSET)+'\; '+cspace+'">'+ cI[c][sq][cj][1]+'</a></td></tr></table></td></tr>';
// correct for positioning discrepancy
// added Konqi to this line
if(mz7||ns61||konqi){mzSubAbsTop += sbSIZE;}
}
C+='<tr><td><div style="width:2px\; height:'+sbSIZE+'px\;"></div></td></tr>';
C+='</table></span>';
}
var thisCHT = chTop[c][sq]+chvOFFSET+cP[c][sq][3]+sbSIZE;
// rollovers
for (cj=0;cj<cI[c][sq].length;cj++){
// find wrapping links routine by brendan armstrong
var thisH=snH;
var thisT=cI[c][sq][cj][1];
var splitT=thisT.split('<br>');
var Trows=splitT.length;
if (Trows>1) { thisH=(snH*Trows); }
var ccAl='cursor:'+aCURSOR;
var ccTd='cursor:default';if(cellCLICK==true){ccTd='cursor:'+aCURSOR;}
if(!cI[c][sq][cj][4]){ccAl='cursor:default';ccTd='cursor:default';}
C+='<span id="childroll'+c+'-'+sq+'-'+cj+'" style="'+ccTd+'\; visibility:hidden\; z-index:'+(zORDER+8)+'\; position:absolute\; top:'+thisCHT+'px\; left:'+(chL+sbSIZE)+'px\;" onmouseover="if(rTimer!=0){clearTimeout(rTimer)\;rCount=0\;}this.style.visibility=\'visible\'" onmouseout="miH(this)"><table cellpadding=0 cellspacing=0 border=0 '+bks[5]+' onmouseout="this.parentNode.style.visibility=\'hidden\'\;"><tr><td class=SUBmTD align="'+cP[c][sq][2]+'" width="'+(cP[c][sq][0]-(sbSIZE*2))+'" height='+thisH+' onclick="goToUrl(cI['+c+']['+sq+']['+cj+'][0],cI['+c+']['+sq+']['+cj+'][2])" '+cTxt[c][sq][cj]+'><a href="'+cI[c][sq][cj][0]+'" target="'+cI[c][sq][cj][2]+'" onclick="if(cellCLICK||(cellCLICK==mu)){return false}" style="'+ccAl+'\; position:relative\; top:'+(svtOFFSET)+'\; '+cspace+'"><font color="'+saHOVER+'">'+ cI[c][sq][cj][1]+'</font></a></td></tr></table></span>';
thisCHT+=(thisH+sbSIZE);
}
// drop shadow
if(shCOLOR!=""){C+='<span id="childshadow'+c+'-'+sq+'" style="visibility:hidden\; -moz-opacity:'+mzOpac+'\; background-image:url('+bh + shCOLOR+')\; background-color:'+shCOLOR+'\; z-index:'+(zORDER+5)+'\; position:absolute\; top:'+((chTop[c][sq]+chvOFFSET)+shSIZE+cP[c][sq][3]-shb)+'px\; left:'+(chL+shSIZE-shb)+'px\; width:'+(cP[c][sq][0]+shb)+'\; height:' + (((snH+sbSIZE)*cI[c][sq].length)+((snH)*XCrows[c][sq])+sbSIZE+shb) + 'px\;"></span>';}
}
}
// resize / reload trap
function nsinit(){if(allowRESIZE==true){setTimeout("window.onresize=redo", 1000);}}
function redo(){window.location.reload();}
if(mz7){window.onload=nsinit;}
else {if(allowRESIZE==true){window.onresize=new Function("window.location.reload()");}}
// draw stretch layer
if(!free){d.write(S);}
// draw main nav
d.write(T);
// draw submenus
d.write(M);
// draw child menus
d.write(C);
window.onload=storeObjects;

684
addons/menu_bar/menu_op5.js Normal file
View File

@ -0,0 +1,684 @@
//UDMv3.1
// filter for undefined arrays
for (f=0;f<mI.length;f++){
if(menuALIGN=="free"){mI[f][2]-=1;}
if(!sP[f]){sP[f]=new Array(mI[f][2],mI[f][3],mI[f][3],0,0);}
if(!cP[f]){cP[f]=new Array;}
if(!sI[f]){sI[f]=new Array;}
if(!cI[f]){cI[f]=new Array;}
for (sf=0;sf<sI[f].length;sf++){
if(!cP[f][sf]){cP[f][sf]=new Array;}
if(!cI[f][sf]){cI[f][sf]=new Array;}
}
}
// appreviations
var bh=baseHREF;
var ttt='<table border=0 cellpadding=0 cellspacing=';
var aL=absLEFT; aT=absTOP;
if(aT<0){aT=0;}
if(aL<0){aL=0;}
// convert shadow type
var shy=false;
if ((typeof shSIZE)=="string") {
shy=true;
shSIZE=Number(shSIZE);
}
// find the inner width and height of the browser window
var bW=window.innerWidth;
var bHe=window.innerHeight;
// find the nav width and horizontal space
var endSpace=0;
var nS=0;
for (j=0;j<mI.length;j++){
if(mI[j][2]==""){mI[j][2]=10;}
if(mI[j][1]==""){mI[j][1]='&nbsp;';
}
nS+=mI[j][2]+bSIZE;
}
endSpace=bW-nS-bSIZE;
if(menuALIGN!="free"&&(bW<nS)){menuALIGN="left"; aL=0; stretchMENU=false; showBORDERS=false;}
// find the nav height
var nH=fSIZE+5+vPADDING;
if (fSIZE<13) { nH+=(13-sfSIZE); }
var onH=nH;
// find wrapping links routine by brendan armstrong
var Mrows=new Array;var nlH=new Array;
var thisNH=new Array;var thisAH=new Array;
for(i=0;i<mI.length;i++){
var thisT=mI[i][1];
var splitT=thisT.split('<br>');
Mrows[i]=splitT.length;
if(Mrows[i]==0){Mrows[i]=1;}
nlH[i]=Mrows[i];
}
function cFun(a,b) { return b-a; }
Mrows.sort(cFun);
nH=nH*Mrows[0];
var aH=nH+(bSIZE*2)+1;
for(i=0;i<mI.length;i++){
thisNH[i]=nH;if(menuALIGN=="free"){thisNH[i]=onH*nlH[i];}
thisAH[i]=nH+(bSIZE*2);if(menuALIGN=="free"){thisAH[i]=thisNH[i]+(2*bSIZE);}
}
// find the subnav item height
var snH=sfSIZE+4+svPADDING;
if (sfSIZE<13) { snH+=(13-sfSIZE); }
var asH=snH+(sbSIZE*2);
// set values for different alignments
var free=false;
var xp=0;
var aP=new Array;
var aPL=new Array;
if(menuALIGN=="free"){
free=true;
for (xc=0;xc<mI.length;xc++){
aP[xc]=mI[xc][6]+aT;
aPL[xc]=mI[xc][7]+aL;
}
} else {
aP[xp]=aT;
}
var stAdjust=0; var abR; var rL;
var ralign=false;
if(menuALIGN=="right"){
ralign=true;
abR=aL;
aL=endSpace-abR;
rL=aL;
if(rL<0){rL=0;}
if(bW<nS){aL=0;}
}
var calign=false;
if(menuALIGN=="center"){
calign=true;
aL=endSpace / 2;
rL=aL;
if(rL<0){rL=0;}
if(bW<nS){aL=0;}
}
var lalign=false;
if(menuALIGN=="left"){
//aL+=bSIZE;
lalign=true;
abR=aL;
rL=aL;
if(stretchMENU&&abR>0){stAdjust=abR+(2*bSIZE);}
if(rL<0){rL=0;}
}
var subLEFT=rL;
if(ralign){subLEFT-=abR;}
if(lalign){subLEFT+=abR;}
// how many main nav items
var ntl=0;
for (intl=0;intl<mI.length;intl++){if(mI[intl][1]!=""){ntl++;}}
var cStyle='cursor:hand';
// do nothing
function doNothing(){}
// find background colors or images
var back_defs=new Array(mCOLOR,bCOLOR,rCOLOR,smCOLOR,sbCOLOR,srCOLOR,shCOLOR);
var useIMG=new Array(false,false,false,false,false,false)
var bks=new Array;
for (b=0;b<7;b++){
bks[b]='bgcolor='+back_defs[b];
if((back_defs[b].indexOf('.gif') != -1) || (back_defs[b].indexOf('.jpg') != -1) || back_defs[b]==''){useIMG[b]=true;}
if(useIMG[b]){
bks[b]='background="'+bh + back_defs[b]+'"';
}
if(back_defs[b]==''){bks[b]='';}
}
var n;
var gridOkay=false;
var pId=0;
var pSId=0;
var pCId=0;
var rTimer;var rCount=0;
// code saving visibility toggles
function miH(hr){if(hr){hr.style.visibility="hidden";}}
function miV(hv){if(hv){hv.style.visibility="visible";}}
// clear submenus
function aCM(n){
clearTimeout(rTimer);rCount=0;
miH(d.getElementById("grid"));
miH(d.getElementById('cgrid'+pId));
miH(d.getElementById('gridblocker'+pId));
miH(d.getElementById('gridLblocker'+pId));
miH(d.getElementById('shadow'+pId));
miH(d.getElementById('subnav'+pId));
miH(d.getElementById('roll'+pId));
for (l=0;l<sI[pId].length;l++){
miH(d.getElementById('sublink'+pId+'-'+l));
}
if(sI[pId][pSId]!=undefined){
miH(d.getElementById('subroll'+pId+'-'+pSId));
if(cP[pId][pSId]){
if(cP[pId][pSId].length>0){
miH(d.getElementById('childgrid'+pId+'-'+pSId));
miH(d.getElementById('childnav'+pId+'-'+pSId));
miH(d.getElementById('childshadow'+pId+'-'+pSId));
for (cl=0;cl<cI[pId][pSId].length;cl++){
miH(d.getElementById('childlink'+pId+'-'+pSId+'-'+cl));
miH(d.getElementById('childroll'+pId+'-'+pSId+'-'+cl));
}
}
}
}
pId=0; pSId=0;
}
// start menu closing timer
function cM(n){
var opNum=n;
if(rCount==0){
rCount++;
rTimer=setTimeout("cM(pId)",closeTIMER);
} else {
aCM(opNum);
pId=0;pCId=0;
}
}
// open selected submenu
function oM(n){
miV(d.getElementById("grid"));
miV(d.getElementById('roll'+n));
if(sI[n]!=""){
for (ohm=0;ohm<sI[n].length;ohm++){
miH(d.getElementById('subroll'+n+'-'+ohm));
}
miV(d.getElementById('gridblocker'+n));
miV(d.getElementById('gridLblocker'+n));
miV(d.getElementById('subnav'+n));
if(sI[n]!=''){miV(d.getElementById('shadow'+n));}
for (l=0;l<sI[n].length;l++){
miV(d.getElementById('sublink'+n+'-'+l));
}
}
pId=n;
}
// clear child menus
function cCM(snum,cnum){
if(cP[snum][pCId]&&cI[snum][pCId]){
if(cP[snum][pCId].length>0&&cI[snum][pCId].length>0){
miH(d.getElementById('childgrid'+snum+'-'+pCId));
miH(d.getElementById('childnav'+snum+'-'+pCId));
miH(d.getElementById('childshadow'+snum+'-'+pCId));
for (cl=0;cl<cI[snum][pCId].length;cl++){
miH(d.getElementById('childlink'+snum+'-'+pCId+'-'+cl));
miH(d.getElementById('childroll'+snum+'-'+pCId+'-'+cl));
}
}
}
pCId=0;
}
// open selected child menu
var snum; var cnum;
function oCM(snum,cnum){
if(cP[snum][cnum].length>0&&cI[snum][cnum].length>0){
miV(d.getElementById('childgrid'+snum+'-'+cnum));
miV(d.getElementById('childnav'+snum+'-'+cnum));
if(cI[snum][cnum]!=''){miV(d.getElementById('childshadow'+snum+'-'+cnum));}
for (cl=0;cl<cI[snum][cnum].length;cl++){
miV(d.getElementById('childlink'+snum+'-'+cnum+'-'+cl));
}
}
pCId=cnum;
}
// td click handlers
function goToUrl(cUrl,cTarg){
if(cellCLICK||(cellCLICK==mu)){
if(cTarg=="_self"){self.document.location=cUrl;}
else if(cTarg=="_top"){top.document.location=cUrl;}
else if(cTarg=="_parent"){parent.document.location=cUrl;}
else if(cTarg=="_blank"){var newwin=open(cUrl,"","status=yes,scrollbars=yes,toolbar=yes,menubar=yes,location=yes");}
else {
if(top.frames[cTarg]){top.frames[cTarg].document.location=cUrl} else {document.location=cUrl;}
}
}
}
//alert("assemble main nav");
var T='';
// menu stretching and event capturing
var opColor=0; if(showBORDERS){opColor=1;}
if(!free){
if(stretchMENU){
T+='<span id="stretchnav" onmouseover="cM()" style="position:absolute\; top:'+aP[xp]+'\; left:0px\; width:'+bW+'\; height:'+aH+'\;"><table cellpadding=0 cellspacing=0 border=0 '+bks[opColor]+' style="width:'+bW+'\; height:'+(aH-1)+'\;"><tr><td></td></tr></table></span>';
if(showBORDERS){T+='<span id="stretchnav" onmouseover="cM()" style="position:absolute; top:'+(aP[xp]+bSIZE)+'\; left:'+bSIZE+'px\; width:'+(bW-(2*bSIZE))+'\;"><table cellpadding=0 cellspacing=0 border=0 '+bks[0]+' style="width:'+(bW-(2*bSIZE))+'\; height:'+(nH)+'\;"><tr><td></td></tr></table></span>';}
} else if(showBORDERS){
T+='<span id="stretchnav" onmouseover="cM()" style="position:absolute\; top:'+aP[xp]+'\; left:0px\; width:'+bW+'\;"><table cellpadding=0 cellspacing=0 border=0 '+bks[opColor]+' style="width:'+bW+'\; height:'+(aH-1)+'\;"><tr><td></td></tr></table></span>';
}
}
// event capturing layer
T+='<span id="grid" style="visibility:hidden\; position:absolute\; top:0\; left:0\; width:'+bW+'\; height:'+bHe+'\; z-index:'+zORDER+'" onmousedown="aCM()" onmouseover="cM()"></span>';
// open frame
//if(ralign&&showBORDERS){rL-=(bSIZE-1);}
if(!free){
T+='<span id="mainnav" style="z-index:'+(zORDER+3)+'\; position:absolute\; top:'+aP[xp]+'px\; left:'+rL+'px\; width:'+(nS+bSIZE)+'px\; height:'+(nH+bSIZE)+'px\;">';
T+='<table cellspacing='+bSIZE+' cellpadding=0 border=0 '+bks[1]+' width='+(nS+bSIZE)+' style="height:'+(nH+bSIZE)+'px\;">';
T+='<tr>';
}
// freeform width adjusters
var opbs=0;
if(free){opbs=1;}
// container cells
for (i=0;i<mI.length;i++){
if(mI[i][1]!=""){
if(free){
T+='<span style="z-index:'+(zORDER+3)+'\; position:absolute\; top:'+aP[i]+'px\; left:'+aPL[i]+'px\; width:'+(mI[i][2]+(2*bSIZE)+opbs)+'\;">';
T+='<table cellspacing='+bSIZE+' cellpadding=0 border=0 '+bks[1]+' width='+(mI[i][2]+(2*bSIZE)+opbs)+' style="height:'+(thisNH[i]+bSIZE)+'px\;">';
T+='<tr>';
}
T+='<td class=mTD width="'+(mI[i][2])+'"></td>';
if(free){T+='</tr></table></span>';}
}
}
// close frame
if(!free){T+='</tr></table></span>';}
// link color behaviour
if(aHOVER==""){aHOVER=aLINK;}
var aRoll=aLINK;
if(rCOLOR==""){aRoll=aHOVER;}
var lHTML='';
if(rCOLOR!=""){lHTML=' color="'+aHOVER+'"';}
var colr=' onmouseover="this.style.color=\''+aRoll+'\'\;" onmouseout="this.style.color=\''+aLINK+'\'\;" ';
// links
var SUBaL=aL+bSIZE;
var space='';
// alt text arrays
var aTxt=new Array;
var sTxt=new Array;
var cTxt=new Array;
var altNull='';
// write alt text to status bar
function writeStatus(sTxt){window.status=sTxt; return true;}
for (i=0;i<mI.length;i++){
if(free){xp=i; SUBaL=aPL[i]+bSIZE;}
aTxt[i]='';
if(mI[i][5]!="none"){
if(altDISPLAY=="title"){aTxt[i]=' title="'+mI[i][5]+'" ';}
if(altDISPLAY=="status"){aTxt[i]=' onmouseover="return writeStatus(mI['+i+'][5])" onmouseout="return writeStatus(altNull)" ';}
}
// text indentation
var space=' left:0px\;';
if(mI[i][3]=="left"){space=' left:'+tINDENT+'px\;';}
if(mI[i][3]=="right"){space=' left:-'+tINDENT+'px\;';}
// link layers
T+='<div onmouseover="aCM()\; oM('+i+')" style="z-index:'+(zORDER+5)+'\; position:absolute\; top:'+(aP[xp]+bSIZE)+'px\; left:'+SUBaL+'px\; width:'+mI[i][2]+'px\; height:'+thisNH[i]+'px\;" onclick="goToUrl(mI['+i+'][0],mI['+i+'][4])">';
T+='<table cellpadding=0 cellspacing=0 border=0 '+bks[0]+' width='+(mI[i][2]+opbs)+' height='+thisNH[i]+'><tr><td valign=top align='+mI[i][3]+' '+aTxt[i]+'>';
if(mI[i][0]==""){
mI[i][0]="javascript:doNothing()";
T+='<a '+colr;
} else {
T+='<a '+colr+' href="'+mI[i][0]+'" target="'+ mI[i][4]+'"';
}
T+=' style="position:relative\; top:'+((thisNH[i]/2)-((fSIZE*nlH[i])/2)+vtOFFSET)+'px; '+space+' color:'+aLINK+'\; font-weight:'+fWEIGHT+'\; font-size:'+fSIZE+'px\; font-family:'+fFONT+'\; text-decoration:'+aDEC+';">'+mI[i][1]+'</a>';
T+='</td></tr></table></div>';
// rollover layers
T+='<div onmouseover="aCM()\; oM('+i+')" onmouseout="if(!keepLIT){miH(this)}" id="roll'+i+'" style="visibility:hidden\; z-index:'+(zORDER+5)+'\; position:absolute\; top:'+(aP[xp]+bSIZE)+'px\; left:'+SUBaL+'px\; width:'+mI[i][2]+'px\; height:'+thisNH[i]+'px\;" onclick="goToUrl(mI['+i+'][0],mI['+i+'][4])">';
T+='<table cellpadding=0 cellspacing=0 border=0 '+bks[2]+' width='+(mI[i][2]+opbs)+' height='+thisNH[i]+'><tr><td valign=top align='+mI[i][3]+' '+aTxt[i]+'>';
if(mI[i][0]==""){
mI[i][0]="javascript:doNothing()";
T+='<a '+colr;
} else {
var tmItem='href="'+mI[i][0]+'" target="'+mI[i][4]+'"';
if((cellCLICK||(cellCLICK==mu))&&mI[i][4]=="_blank"){tmItem='href="'+mI[i][0]+'" onclick="goToUrl(mI['+i+'][0],\'_blank\')\;return false" ';}
T+='<a '+colr + tmItem;
}
T+=' style="position:relative\; top:'+((thisNH[i]/2)-((fSIZE*nlH[i])/2)+vtOFFSET)+'px; '+space+' color:'+aLINK+'\; font-weight:'+fWEIGHT+'\; font-size:'+fSIZE+'px\; font-family:'+fFONT+'\; text-decoration:'+aDEC+'\;"><font'+lHTML+'>'+mI[i][1]+'</font></a>';
T+='</td></tr></table></div>';
// increase left to next item
if(!free){SUBaL+=(mI[i][2]+bSIZE);}
}
// assemble submenus
var M=''; var C='';
var SUBaL=0;
// sub rollover clearing function
function clearSubRoll(subc,subi){
if(pSId!=subi){
miH(d.getElementById('subroll'+subc+'-'+pSId));
}
pSId=subi;
}
// child rollover clearing function
function clearChildRoll(cuc,cus,cuj){
if(pCId!=cuj){
miH(d.getElementById('childroll'+cuc+'-'+cus+'-'+pCId));
}
pCId=cuj;
}
var chTop=new Array;
// link color behaviour
var saRoll=saLINK;
if(srCOLOR==""){saRoll=saHOVER;}
var slHTML='';
if(srCOLOR!=""){slHTML=' color="'+saHOVER+'"';}
var solr=' onmouseover="this.style.color=\''+saRoll+'\'\;" onmouseout="this.style.color=\''+saLINK+'\'\;" ';
// assemble submenus
var Xrows=new Array;
var XCrows=new Array;
for (c=0;c<mI.length;c++){
Xrows[c]=0;
XCrows[c]=new Array;
chTop[c]=new Array;
sTxt[c]=new Array;
cTxt[c]=new Array;
// text alignment and indentation
var space=' left:0px\;';
if(sP[c][2]=="left"){space=' left:'+stINDENT+'px\;';}
if(sP[c][2]=="right"){space=' left:-'+stINDENT+'px\;';}
// find next submenu position
if(!free){
if(c==0){SUBaL=rL+bSIZE;}
else SUBaL+=mI[(c-1)][2]+bSIZE;
} else {
SUBaL=SUBaL=aPL[c];
xp=c;
}
// specify edge alignment
var acL=SUBaL+hOFFSET+sP[c][4];
if(sP[c][1]=="right"){
acL=SUBaL-(sP[c][0]-mI[c][2])-hOFFSET-sP[c][4];
}
// grid block layer for vertical offset
if((vOFFSET+sP[c][3])>0){M+='<div id="gridblocker'+c+'" style="width:'+sP[c][0]+'px\; height:'+(vOFFSET+sP[c][3]+1)+'\; visibility:hidden\; z-index:'+(zORDER+1)+'\;position:absolute\; top:'+(aP[xp]+thisAH[c]-1)+'px\; left:'+acL+'px\;" onmouseover="clearTimeout(rTimer)\; rCount=0\;"></div>';}
// grid block layer for horizontal offset
var gblw=acL-mI[c][2]-SUBaL;
var gbposL=(SUBaL+mI[c][2]+(2*bSIZE)+1);
if(sP[c][1]=="right"){
gblw=mI[c][7]+bSIZE+aL-sP[c][0]-acL;
gbposL=(mI[c][7]+bSIZE+aL-gblw);
}
for (i=0;i<sI[c].length;i++){
if(sI[c][i][0]!=''&&sI[c][i][1]!=''){
// find wrapping links routine by brendan armstrong
var thisH=snH;
var thisT=sI[c][i][1];
var splitT=thisT.split('<br>');
var Trows=splitT.length;
if (Trows>1) { Xrows[c]+=(Trows-1); }
}}
//grid blocker for offset
var shb=0;if(shy){shb=(2*shSIZE);}
if(gblw>0){M+='<span id="gridLblocker'+c+'" style="width:'+gblw+'px\; height:'+(((snH+bSIZE)*sI[c].length)+((snH+1)*Xrows[c])+shb+shSIZE)+'px\; visibility:hidden\; z-index:'+(zORDER+6)+'\;position:absolute\; top:'+(aP[xp]+thisAH[c]+vOFFSET+sP[c][3])+'px\; left:'+gbposL+'px\;" onmouseover="clearTimeout(rTimer)\; rCount=0\;"></span>';}
// compile cells
M+='<span id="subnav'+c+'" style="visibility:hidden\; z-index:'+(zORDER+7)+'\; position:absolute\; top:'+(aP[xp]+thisAH[c]+vOFFSET+sP[c][3])+'px\; left:'+acL+'px\; width:'+(sP[c][0]-(sbSIZE*2))+'\;">';
M+='<table cellpadding=0 cellspacing='+sbSIZE+' border=0 '+bks[4]+'>';
for (i=0;i<sI[c].length;i++){
if(sI[c][i][0]!=''&&sI[c][i][1]!=''){
// find wrapping links routine by brendan armstrong
var thisH=snH;
var thisT=sI[c][i][1];
var splitT=thisT.split('<br>');
var Trows=splitT.length;
if (Trows>1) { thisH=(snH*Trows); }
M+='<tr><td class=SUBmTD '+bks[3]+' align="'+sP[c][2]+'" style="width:'+(sP[c][0]-(2*sbSIZE))+'px\; height:'+(thisH+1)+'\;"></td></tr>';
}
}
M+='</table></span>';
// compile layers
var SUBaT=aP[xp]+thisAH[c]+vOFFSET+sP[c][3]+sbSIZE+svPADDING+svtOFFSET+2;
var subspace=' left:0px\;';
if(sP[c][2]=="left"){subspace=' left:'+stINDENT+'px\;';}
if(sP[c][2]=="right"){subspace=' left:-'+stINDENT+'px\;';}
for (i=0;i<sI[c].length;i++){
chTop[c][i]=SUBaT;
// find wrapping links routine by brendan armstrong
var thisH=snH;
var thisT=sI[c][i][1];
var splitT=thisT.split('<br>');
var Trows=splitT.length;
if (Trows>1) { thisH=(snH*Trows); }
cTxt[c][i]=new Array;
sTxt[c][i]='';
if(sI[c][i][3]!="none"){
if(altDISPLAY=="title"){sTxt[c][i]=' title="'+sI[c][i][3]+'" ';}
if(altDISPLAY=="status"){sTxt[c][i]=' onmouseover="return writeStatus(sI['+c+']['+i+'][3])" onmouseout="return writeStatus(altNull)" ';}
}
// links
var oppm=2; if(mac){oppm=1;}
var sval="top";if(!sI[c][i][4]){sval="middle";}
M+='<div id="sublink'+c+'-'+i+'" style="visibility:hidden\; z-index:'+(zORDER+8)+'\; width:'+(sP[c][0]-(sbSIZE*2))+'\; position:absolute\; top:'+(SUBaT-2-svPADDING-svtOFFSET)+'px\; left:'+(acL+sbSIZE)+'px\; height:'+(thisH+1)+'px\'" onmouseover="clearTimeout(rTimer)\; rCount=0\; cCM('+c+','+i+')\; oCM('+c+','+i+')\; clearSubRoll('+c+','+i+')\; if(!keepLIT){d.getElementById(\'roll'+c+'\').style.visibility=\'hidden\'\;} if(sI['+c+']['+i+'][4]){d.getElementById(\'subroll'+c+'-'+i+'\').style.visibility=\'visible\'\;}" onclick="goToUrl(sI['+c+']['+i+'][0],sI['+c+']['+i+'][2])">';
M+='<table cellpadding=0 cellspacing=0 border=0 width="100%" height="100%" id="sublink'+c+'-'+i+'"><tr><td valign='+sval+' align='+sP[c][2]+' class=SUBmTD '+sTxt[c][i]+'>';
if(sI[c][i][0]=="#"){
sI[c][i][0]="javascript:doNothing()";
M+='<a '+solr;
} else {
M+='<a '+solr+' href="'+sI[c][i][0]+'" target="'+sI[c][i][2]+'" ';
}
M+='style="position:relative\; top:'+(svtOFFSET+(parseInt(svPADDING/2))+(3*Trows))+'\; '+subspace+'"><span style="color:'+saLINK+'\; font-weight:'+sfWEIGHT+'\; font-size:'+sfSIZE+'px\; font-family:'+sfFONT+'\; text-decoration:'+saDEC+'\;" onmouseover="this.style.color=\''+saHOVER+'\'" onmouseout="this.style.color=\''+saLINK+'\'">'+sI[c][i][1]+'</span></a>';
M+='</td></tr></table></div>';
// rollovers
M+='<div id="subroll'+c+'-'+i+'" style="visibility:hidden\; z-index:'+(zORDER+9)+'\; width:'+(sP[c][0]-(sbSIZE*2))+'\; position:absolute\; top:'+(SUBaT-2-svPADDING-svtOFFSET)+'px\; left:'+(acL+sbSIZE)+'px\; height:'+(thisH+oppm)+'px\'" onmouseover="clearTimeout(rTimer)\; rCount=0\; cCM('+c+','+i+')\; oCM('+c+','+i+')\;" onclick="goToUrl(sI['+c+']['+i+'][0],sI['+c+']['+i+'][2])">';
M+='<table cellpadding=0 cellspacing=0 border=0 '+bks[5]+' width="100%" height="100%" id="sublink'+c+'-'+i+'"><tr><td valign='+sval+' align='+sP[c][2]+' class=SUBmTD '+sTxt[c][i]+'>';
if(sI[c][i][0]=="#"){
sI[c][i][0]="javascript:doNothing()";
M+='<a '+solr;
} else {
var tsItem='href="'+sI[c][i][0]+'" target="'+sI[c][i][2]+'"';
if((cellCLICK||(cellCLICK==mu))&&sI[c][i][2]=="_blank"){tsItem='href="'+sI[c][i][0]+'" onclick="goToUrl(sI['+c+']['+i+'][0],\'_blank\')\;return false" ';}
M+='<a '+solr + tsItem;
}
M+='style="position:relative\; top:'+(svtOFFSET+(parseInt(svPADDING/2))+(3*Trows))+'\; '+subspace+'"><span style="color:'+saLINK+'\; font-weight:'+sfWEIGHT+'\; font-size:'+sfSIZE+'px\; font-family:'+sfFONT+'\; text-decoration:'+saDEC+'\;" onmouseover="this.style.color=\''+saHOVER+'\'" onmouseout="this.style.color=\''+saLINK+'\'"><font'+slHTML+'>'+sI[c][i][1]+'</font></span></a>';
M+='</td></tr></table></div>';
// increase top to next item
SUBaT+=thisH+sbSIZE+1;
}
//alert("drop shadow");
var shb=0;if(shy){shb=(2*shSIZE);}
if(shCOLOR!=""){M+='<table cellpadding=0 cellspacing=0 border=0 '+bks[6]+' id="shadow'+c+'" style="visibility:hidden\; position:absolute; z-index:'+(zORDER+6)+'\; top:'+(aP[xp]+thisAH[c]+vOFFSET+sP[c][3]+shSIZE-shb)+'px\; left:'+(acL+shSIZE-shb)+'px\; height:'+(SUBaT-(aP[xp]+thisAH[c]+vOFFSET+sP[c][3])-svPADDING-2+shb)+'\; width:'+(sP[c][0]+shb)+'\;"><tr><td>&nbsp;</td></tr></table>';}
//alert("assemble child menus");
for (sq=0;sq<sI[c].length;sq++){
if(cP[c][sq].length>0&&cI[c][sq].length>0){
XCrows[c][sq]=0;
// specify edge alignment
var chL;
if(cP[c][sq][1]=="right"){
chL=acL-cP[c][sq][0]-chhOFFSET-cP[c][sq][4];
cgL=chL+cP[c][sq][0];
} else {
chL=acL + sP[c][0]+chhOFFSET+cP[c][sq][4];
cgL=(chL-(chhOFFSET+cP[c][sq][4]));
}
for (cj=0;cj<cI[c][sq].length;cj++){
// find wrapping links routine by brendan armstrong
var thisH=snH;
var thisT=cI[c][sq][cj][1];
var splitT=thisT.split('<br>');
var Trows=splitT.length;
if (Trows>1) { XCrows[c][sq]+=(Trows-1); }
}
// grid block layer for horizontal offset
if((chhOFFSET+cP[c][sq][4])>0){
C+='<table id="childgrid'+c+'-'+sq+'" style="visibility:hidden\; position:absolute; z-index:'+(zORDER+10)+'\; top:'+(((chTop[c][sq]-sbSIZE-svPADDING-2)-svtOFFSET)+chvOFFSET+cP[c][sq][3])+'px\; left:'+cgL+'px\; height:'+(((snH+sbSIZE+1)*cI[c][sq].length)+((snH)*XCrows[c][sq])+sbSIZE+shb+shSIZE)+'\; width:'+(chhOFFSET+cP[c][sq][4])+'\;" cellpadding=0 cellspacing=0 border=0 onmouseover="clearTimeout(rTimer)\; rCount=0\;"><tr><td></td></tr></table>';
}
// compile cells
C+='<span id="childnav'+c+'-'+sq+'" style="visibility:hidden\; z-index:'+(zORDER+11)+'\; position:absolute\; top:'+((chTop[c][sq]-sbSIZE-svPADDING-2)-svtOFFSET+chvOFFSET+cP[c][sq][3])+'px\; left:'+chL+'px\; width:'+(cP[c][sq][0]-(2*sbSIZE))+'px\; height:'+(((snH+(2*sbSIZE))*cI[c][sq].length)+1)+'px\;">';
C+='<table cellpadding=0 cellspacing='+sbSIZE+' border=0 '+bks[4]+'>';
for (cj=0;cj<cI[c][sq].length;cj++){
// find wrapping links routine by brendan armstrong
var thisH=snH;
var thisT=cI[c][sq][cj][1];
var splitT=thisT.split('<br>');
var Trows=splitT.length;
if (Trows>1) { thisH=(snH*Trows); }
C+='<tr><td class=SUBmTD '+bks[3]+' align="'+cP[c][sq][2]+'" style="width:'+(cP[c][sq][0]-(2*sbSIZE))+'px\; height:'+(thisH+1)+'\;"></td></tr>';
}
C+='</table></span>';
// compile layers
var csubspace=' left:0px\;';
if(cP[c][sq][2]=="left"){csubspace=' left:'+stINDENT+'px\;';}
if(cP[c][sq][2]=="right"){csubspace=' left:-'+stINDENT+'px\;';}
var subT = ((chTop[c][sq]-(svPADDING))-svtOFFSET+chvOFFSET+cP[c][sq][3]-1);
for (cj=0;cj<cI[c][sq].length;cj++){
// find wrapping links routine by brendan armstrong
var thisH=snH;
var thisT=cI[c][sq][cj][1];
var splitT=thisT.split('<br>');
var Trows=splitT.length;
if (Trows>1) { thisH=(snH*Trows); }
cTxt[c][sq][cj]='';
if(cI[c][sq][cj][3]!="none"){
if(altDISPLAY=="title"){cTxt[c][sq][cj]=' title="'+cI[c][sq][cj][3]+'" ';}
if(altDISPLAY=="status"){cTxt[c][sq][cj]=' onmouseover="return writeStatus(cI['+c+']['+sq+']['+cj+'][3])" onmouseout="return writeStatus(altNull)" ';}
}
var sval="top";if(!cI[c][sq][cj][4]){sval="middle";}
if(cI[c][sq][cj][0]=="#"){cI[c][sq][cj][0]="javascript:doNothing()";}
// links
C+='<div id="childlink'+c+'-'+sq+'-'+cj+'" style="visibility:hidden\; z-index:'+(zORDER+12)+'\; width:'+(cP[c][sq][0]-(sbSIZE*2))+'\; position:absolute\; top:'+subT+'px\; left:'+(chL+sbSIZE)+'px\; height:'+(thisH+1)+'px\'" onmouseover="clearTimeout(rTimer)\; rCount=0\; if(!keepSubLIT){d.getElementById(\'subroll'+c+'-'+sq+'\').style.visibility=\'hidden\'\;}clearChildRoll('+c+','+sq+','+cj+')\; if(cI['+c+']['+sq+']['+cj+'][4]){d.getElementById(\'childroll'+c+'-'+sq+'-'+cj+'\').style.visibility=\'visible\'\;} d.getElementById(\'cgrid'+c+'\').style.visibility=\'visible\'" onclick="goToUrl(cI['+c+']['+sq+']['+cj+'][0],cI['+c+']['+sq+']['+cj+'][2])">';
C+='<table cellpadding=0 cellspacing=0 border=0 width="100%" height="100%" id="childlink'+c+'-'+sq+'-'+cj+'"><tr><td valign='+sval+' align='+cP[c][sq][2]+' class=SUBmTD '+cTxt[c][sq][cj]+'>';
C+='<a href="'+cI[c][sq][cj][0]+'" target="'+cI[c][sq][cj][2]+'" style="position:relative\; top:'+(svtOFFSET+(parseInt(svPADDING/2))+(3*Trows))+'\; '+csubspace+'"><span style="color:'+saLINK+'\; font-weight:'+sfWEIGHT+'\; font-size:'+sfSIZE+'px\; font-family:'+sfFONT+'\; text-decoration:'+saDEC+'\;" '+solr+'>'+cI[c][sq][cj][1]+'</span></a>';
C+='</td></tr></table></div>';
// rollovers
C+='<div id="childroll'+c+'-'+sq+'-'+cj+'" style="visibility:hidden\; z-index:'+(zORDER+13)+'\; width:'+(cP[c][sq][0]-(sbSIZE*2))+'\; position:absolute\; top:'+(subT-1)+'px\; left:'+(chL+sbSIZE)+'px\; height:'+(thisH+oppm)+'px\'" onmouseover="clearTimeout(rTimer)\; rCount=0\;" onmouseout="miH(this)" onclick="goToUrl(cI['+c+']['+sq+']['+cj+'][0],cI['+c+']['+sq+']['+cj+'][2])">';
C+='<table cellpadding=0 cellspacing=0 border=0 '+bks[5]+' width="100%" height="100%" id="childlink'+c+'-'+sq+'-'+cj+'"><tr><td valign='+sval+' align='+cP[c][sq][2]+' class=SUBmTD '+cTxt[c][sq][cj]+'>';
var tcItem='href="'+cI[c][sq][cj][0]+'" target="'+cI[c][sq][cj][2]+'"';
if((cellCLICK||(cellCLICK==mu))&&cI[c][sq][cj][2]=="_blank"){tcItem='href="'+cI[c][sq][cj][0]+'" onclick="goToUrl(cI['+c+']['+sq+']['+cj+'][0],\'_blank\')\;return false"';}
C+='<a '+tcItem+' style="position:relative\; top:'+(svtOFFSET+(parseInt(svPADDING/2))+(3*Trows)+1)+'\; '+csubspace+'"><span style="color:'+saLINK+'\; font-weight:'+sfWEIGHT+'\; font-size:'+sfSIZE+'px\; font-family:'+sfFONT+'\; text-decoration:'+saDEC+'\;" '+solr+'><font'+slHTML+'>'+cI[c][sq][cj][1]+'</span></a>';
C+='</td></tr></table></div>';
subT+=thisH+sbSIZE+1;
}
//alert("drop shadow");
if(shCOLOR!=""){C+='<table cellpadding=0 cellspacing=0 border=0 '+bks[6]+' id="childshadow'+c+'-'+sq+'" style="visibility:hidden\; position:absolute; z-index:'+(zORDER+10)+'\; top:'+(((chTop[c][sq]-sbSIZE-svPADDING-2)-svtOFFSET)+shSIZE+chvOFFSET+cP[c][sq][3]-shb)+'px\; left:'+(chL+shSIZE-shb)+'px\; height:'+(((snH+sbSIZE+1)*cI[c][sq].length)+((snH)*XCrows[c][sq])+sbSIZE+shb)+'\; width:'+(cP[c][sq][0]+shb)+'\;"><tr><td>&nbsp;</td></tr></table>';}
}
}
// childmenu event capturing layers
C+='<span id="cgrid'+c+'" style="visibility:hidden\; position:absolute\; top:'+(aP[xp]+aH+vOFFSET+sP[c][3])+'\; left:'+acL+'\; width:'+sP[c][0]+'\; height:'+(SUBaT-(aP[xp]+aH+vOFFSET+sP[c][3])-svPADDING-2)+'\; z-index:'+(zORDER+9)+'" onmouseover="miH(this)\; aCM()\; oM('+c+')\;"></span>';
}
// draw child menus
d.write(C);
// draw submenus
d.write(M);
// draw main nav
d.write(T);
// resize/reload routine
// based on a function by Michael Wallner - http://www.wallner-software.com/
var oldBW=window.innerWidth;
var oldBH=window.innerHeight;
var fws;
function findWindowSize() {
var newBW=window.innerWidth;
var newBH=window.innerHeight;
if (newBW==oldBW&&newBH==oldBH){
fws = setTimeout("findWindowSize()",100);
}
else { clearTimeout(fws); window.location.reload(); }
}
function windowStart() {
genericOnloadFunction();
if(allowRESIZE==true){findWindowSize();}
}
window.onload=windowStart;

105
addons/menu_bar/sniffer.js Normal file
View File

@ -0,0 +1,105 @@
//UDMv3.1
var exclude=true; var agt=navigator.userAgent.toLowerCase();
//djochange -- added var konqi=false
var ie=false; var ie4=false; var ie5=false; var op5=false; var konqi=false;
//end djochange
if (document.all&&(agt.indexOf('msie')!=-1)) {
ie=true; ie4=true; exclude=false;
if (agt.indexOf('msie 4')==-1) { ie5=true; ie4=false; }
if (agt.indexOf('opera')!=-1) { ie=false; ie4=false; ie5=false; op5=true; }
}
var ns6=false; var mz7=false;
if (document.getElementById&&!ie) {
ns6=true; exclude=false;
if (agt.indexOf('netscape6')==-1) {
ns6=false; mz7=true;
}
if (window.opera) { mz7=false; op5=true;}
else if (agt.indexOf('gecko')==-1) { mz7=false; exclude=true; }
}
if (agt.indexOf('opera 4')!=-1) { op5=false; mz7=false; exclude=true; }
var ns4=false;
if ((agt.indexOf('mozilla')!=-1)&&(parseInt(navigator.appVersion)>=4)&&!ie&&!op5&&!ns6&&!mz7) {
ns4=true; exclude=false;
}
if (agt.indexOf('webtv')!=-1) { ie=false; ie4=false; exclude=true; }
var win=true; var mac=false;
if (agt.indexOf('mac')!=-1) { win=false; mac=true; }
//djochange - added the following code to find Konqueror
if (navigator.vendor){
if (navigator.vendor =="KDE") {
ie=false;
ie4=false;
ie5=false;
konqi = true;
ns6=true;
ns4 = false;
exclude = false;
}
}
//end djochange
// array building functions for custom.js
var mu="mu";var m=0;var sm=0;var cm=0;var sp=0;
var mI=new Array;
var sP=new Array;
var sI=new Array;
var cP=new Array;
var cI=new Array;
function addMainItem(ma,mb,mc,md,me,mf,mg,mh,mi){
sm=0;
if(!mb||mb==""){mb="&nbsp;";}
while(mb.indexOf('<BR>')!=-1){mb=mb.replace('<BR>','<br>');}
if (!md||md==""){md="_self";}
if (!mf||mf==""||altDISPLAY==""){mf="none";}
if(!mg){mg=0;}if(!mh){mh=0;}
if(!mi||mi==""||mi=="c"||mi=="C"){mi="-";}
if(mi!="-"){mi=mi.toLowerCase();}
mI[m]=new Array(ma,mb,mc,md,me,mf,mg,mh,mi);
m++;
}
function defineSubmenuProperties(spa,spb,spc,spd,spe){
if(!spd){spd=0;}
if(!spe){spe=0;}
sP[(m-1)]=new Array(spa,spb,spc,spd,spe);
if (sm==0){
sI[(m-1)]=new Array; cP[(m-1)]=new Array; cI[(m-1)]=new Array;
}
}
function addSubmenuItem(sma,smb,smc,smd){
cm=0;var sme=true;
if(sme&&sma=="~"){sme=false;sma="";}
if (!sma||sma==""){sma="#";}
if (!smb||smb==""){smb="&nbsp;";}
while(smb.indexOf('<BR>')!=-1){smb=smb.replace('<BR>','<br>');}
if (!smc||smc==""){smc="_self";}
if (!smd||smd==""||altDISPLAY==""){smd="none";}
sI[(m-1)][sm]=new Array(sma,smb,smc,smd,sme);
sm++;
}
function defineChildmenuProperties(cpa,cpb,cpc,cpd,cpe){
if(!cpd){cpd=0;}
if(!cpe){cpe=0;}
cP[(m-1)][(sm-1)]=new Array(cpa,cpb,cpc,cpd,cpe);
cI[(m-1)][(sm-1)]=new Array;
}
function addChildmenuItem(cma,cmb,cmc,cmd){
var cme=true;
if(cma&&cma=="~"){cme=false;cma="";}
if (!cma||cma==""){cma="#";}
if (!cmb||cmb==""){cmb="&nbsp;";}
while(cmb.indexOf('<BR>')!=-1){cmb=cmb.replace('<BR>','<br>');}
if (!cmc||cmc==""){cmc="_self";}
if (!cmd||cmd==""||altDISPLAY==""){cmd="none";}
cI[(m-1)][(sm-1)][cm]=new Array(cma,cmb,cmc,cmd,cme);
cm++;
}
// custom upgrade backup definitions
var keepSubLIT=true;var chvOFFSET=0;var chhOFFSET=-5;var closeTIMER=330;var cellCLICK=true;var aCURSOR="hand";
var altDISPLAY="";var allowRESIZE=true;

30
addons/menu_bar/style.js Normal file
View File

@ -0,0 +1,30 @@
//UDMv3.1
//**DO NOT EDIT THIS ******************************************
//*************************************************************
if(!exclude){
// document object variable
var d=document;
// adjust for font size discrepancy
if((!mac&&ns4)||(mac&&op5)){fSIZE+=1;sfSIZE+=1;}
// filter for bad definitions
if(bSIZE<0)bSIZE=0;if(fSIZE<5)fSIZE=5;if(tINDENT<0)tINDENT=0;if(vPADDING<0)vPADDING=0;if(sbSIZE<0)sbSIZE=0;if(sfSIZE<5) sfSIZE=5;if(stINDENT<0)stINDENT=0;if(svPADDING<0)svPADDING=0;if(fWEIGHT=="")fWEIGHT="normal";if(sfWEIGHT=="")sfWEIGHT="normal";
// link style definitions
var stySTR='';stySTR+='<style><!--';stySTR+='.mTD A \{color:'+aLINK+'\;font-weight:'+fWEIGHT+'\;\}';stySTR+='.mTD A:Link \{color:'+aLINK+'\}';stySTR+='.mTD A:Visited \{color:'+aLINK+'\}';stySTR+='.mTD A:Active,.mTD A:Link,.mTD A:Visited,.mTD A:Hover\{font-weight:'+fWEIGHT+'\;font-size:'+fSIZE+'px\;font-family:'+fFONT+'\;text-decoration:'+aDEC+'\;position:relative\;\}';stySTR+='.SUBmTD A \{ color:'+saLINK+'\;font-weight:'+sfWEIGHT+'\;\}';stySTR+='.SUBmTD A:Link \{color:'+saLINK+'\}';stySTR+='.SUBmTD A:Visited \{color:'+saLINK+' \}';stySTR+='.SUBmTD A:Active,.SUBmTD A:Link,.SUBmTD A:Visited,.SUBmTD A:Hover\{font-weight:'+sfWEIGHT+'\;font-size:'+sfSIZE+'px\;font-family:'+sfFONT+'\;text-decoration:'+saDEC+'\;\}';if(ie5){stySTR+='.u\{text-decoration:underline\;\}';}
//*************************************************************
//****##### USE THIS SPACE FOR NEW STYLE DEFINITIONS #####*****
var cl='#0000cc'; var fs=14;
if((win&&ns4)||(mac&&op5)){fs=15;if(ns4){cl='#009600';}}
stySTR+='.roman \{font-size:'+fs+'px\; color:'+cl+'\; background-color:white\; font-family:times new roman\; \}';
//** DO NOT EDIT THIS ****************************************
stySTR+='//--></style>';d.write(stySTR);}
function genericOnloadFunction() {
//*************************************************************
//****##### USE THIS SPACE TO DEFINE ONLOAD FUNCTIONS #####****
//** DO NOT EDIT THIS *****************************************
//*************************************************************
if(ns4){nsinit();}}
//*************************************************************