[ PHPXref.com ] [ Generated: Sun Jul 20 20:12:55 2008 ] [ Scout Tracker 0.13 ]
[ Index ]     [ Variables ]     [ Functions ]     [ Classes ]     [ Constants ]     [ Statistics ]

title

Body

[close]

/javascript/ -> menu_op6.js (source)

   1  //UDMv3.4.1.1b

   2  
   3  

   4  
   5  // filter for undefined arrays 

   6  for (var f=0;f<mI.length;f++){
   7  if(typeof sP[f]=="undefined"){sP[f]=new Array(mI[f][2],mI[f][3],mI[f][3],0,0);}
   8  if(typeof cP[f]=="undefined"){cP[f]=new Array;}
   9  if(typeof sI[f]=="undefined"){sI[f]=new Array;}
  10  if(typeof cI[f]=="undefined"){cI[f]=new Array;}
  11  for (var sf=0;sf<sI[f].length;sf++){
  12  if(typeof cP[f][sf]=="undefined"){cP[f][sf]=new Array;}
  13  if(typeof cI[f][sf]=="undefined"){cI[f][sf]=new Array;}
  14  }}
  15  
  16  // appreviations

  17  var bh=baseHREF;
  18  var ttt='<table border=0 cellpadding=0 cellspacing=';
  19  var aL=absLEFT; var aT=absTOP;
  20  
  21  if(aT<0){aT=0;}
  22  if(aL<0){aL=0;}
  23  
  24  
  25  // convert shadow type

  26  var shy=false;
  27  if ((typeof shSIZE)=="string") { 
  28  shy=true;
  29  shSIZE=Number(shSIZE); 
  30  }
  31  
  32  
  33  
  34  // find the inner width and height of the browser window

  35  var bW=window.innerWidth; 
  36  var bHe=window.innerHeight; 
  37  
  38  
  39  //override width if defined

  40  if(documentWIDTH>0){bW=documentWIDTH;}
  41  
  42  // find the nav width and horizontal space

  43  
  44  var eS=0;
  45  var nS=0;
  46  for (var j=0;j<mI.length;j++){
  47  if(mI[j][2]==""){mI[j][2]=10;}
  48  if(mI[j][1]==""){mI[j][1]='&nbsp;'; 
  49  }
  50  nS+=mI[j][2]+bSIZE; 
  51  }
  52  eS=bW-nS-bSIZE;
  53  
  54  //if(menuALIGN!="free"&&(bW<nS)){menuALIGN="left"; aL=0; stretchMENU=false; showBORDERS=false;}

  55  
  56  
  57  // find the nav height

  58  
  59  var nH=fSIZE+5+vPADDING;
  60  if (fSIZE<13) { nH+=(13-fSIZE); }
  61  var onH=nH;
  62  
  63  var thisT,splitT,thisH,Trows;
  64  
  65  // find wrapping links routine by brendan armstrong

  66  var Mrows=new Array;var Nrows=new Array;
  67  var thisNH=new Array;var thisAH=new Array;
  68  for(var i=0;i<mI.length;i++){
  69  thisT=mI[i][1];
  70  splitT=thisT.split('<br>');
  71  Mrows[i]=splitT.length;
  72  Nrows[i]=Mrows[i];
  73  }
  74  
  75  function cFun(a,b) { return b-a; }
  76  Mrows.sort(cFun);
  77  nH=nH*Mrows[0];
  78  
  79  var aH=nH+(bSIZE*2); 
  80  
  81  
  82  // find the subnav item height

  83  
  84  var snH=sfSIZE+5+svPADDING;
  85  if (sfSIZE<13) { snH+=(13-sfSIZE); }
  86  var asH=snH+(sbSIZE*2); 
  87  
  88  
  89  for(i=0;i<mI.length;i++){
  90  thisNH[i]=nH;if(menuALIGN=="free"){thisNH[i]=onH*Nrows[i];}
  91  thisAH[i]=nH+(bSIZE*2);if(menuALIGN=="free"){thisAH[i]=thisNH[i]+(2*bSIZE);}
  92  }
  93  
  94  
  95  
  96  // set values for different alignments

  97  var free=false;
  98  var xp=0;
  99  var aP=new Array;
 100  var aPL=new Array;
 101  
 102  if(menuALIGN=="free"){
 103  free=true;
 104  for (var xc=0;xc<mI.length;xc++){
 105  aP[xc]=mI[xc][6]+aT;
 106  aPL[xc]=mI[xc][7]+aL;
 107  }
 108  } else {
 109  aP[xp]=aT;
 110  }
 111  
 112  
 113  var stAdjust=0; var abR; var rL; 
 114  
 115  var ralign=false;
 116  if(menuALIGN=="right"){
 117  ralign=true;
 118  abR=aL; 
 119  aL=eS-abR;
 120  rL=aL;
 121  if(rL<0){rL=0;}
 122  aL=0;
 123  }
 124  
 125  var calign=false;
 126  if(menuALIGN=="center"){
 127  calign=true;
 128  aL=parseInt(eS/2);
 129  rL=aL;
 130  if(rL<0){rL=0;}
 131  aL=0;
 132  }
 133  
 134  var lalign=false;
 135  if(menuALIGN=="left"){
 136  lalign=true;
 137  abR=aL;
 138  rL=aL; 
 139  if((op5||stretchMENU)&&abR>0){stAdjust=abR+(2*bSIZE);}
 140  if(rL<0){rL=0;}
 141  if(stretchMENU){aL=0;}
 142  }
 143  
 144  var subLEFT=rL;
 145  if(ralign){subLEFT-=abR;}
 146  if(lalign){subLEFT+=abR;}
 147  
 148  // how many main nav items

 149  var ntl=0;
 150  for (var intl=0;intl<mI.length;intl++){if(mI[intl][1]!=""){ntl++;}}
 151  
 152  
 153  // do nothing

 154  function doNothing(){}
 155  
 156  
 157  // find background colors or images

 158  
 159  var back_defs=new Array(mCOLOR,bCOLOR,rCOLOR,smCOLOR,sbCOLOR,srCOLOR);
 160  var useIMG=new Array(false,false,false,false,false,false)
 161  var bks=new Array;
 162  
 163  for (var b=0;b<6;b++){
 164  bks[b]='bgcolor='+back_defs[b];
 165  if((back_defs[b].indexOf('.gif') != -1) || (back_defs[b].indexOf('.jpg') != -1) || back_defs[b]==''){useIMG[b]=true;}
 166  if(useIMG[b]){
 167  bks[b]='background="'+bh + back_defs[b]+'"'; 
 168  }
 169  if(back_defs[b]==''){bks[b]='';} 
 170  }
 171  
 172  
 173  
 174  // store some object references

 175  var oR=new Array;
 176  var ltPos,rtPos;
 177  var obGrid=new Object();
 178  for (var obr=0;obr<17;obr++){oR[obr]=new Array;}
 179  
 180  function storeObjects(){
 181  obGrid=document.getElementById("grid"); 
 182  for (var sob=0;sob<mI.length;sob++){
 183  oR[0][sob]=d.getElementById('roll'+sob);
 184  oR[1][sob]=d.getElementById('subnav'+sob);
 185  oR[2][sob]=d.getElementById('sublinks'+sob);
 186  if((vOFFSET+sP[sob][3])>0){oR[3][sob]=d.getElementById('gridblocker'+sob);}
 187  if(d.getElementById('gridLblocker'+sob)){oR[12][sob]=d.getElementById('gridLblocker'+sob);}
 188  if(shCOLOR!=""){oR[4][sob]=d.getElementById('shadow'+sob);}
 189  for (var sobr=5;sobr<17;sobr++){oR[sobr][sob]=new Array;}
 190  for (var soj=0;soj<sI[sob].length;soj++){
 191  oR[5][sob][soj]=d.getElementById('subroll'+sob+'-'+soj);
 192  
 193  oR[13][sob][soj]=d.getElementById('sublink'+sob+'-'+soj);
 194  oR[14][sob][soj]=d.getElementById('srolllink'+sob+'-'+soj);
 195  ltPos=oR[13][sob][soj].offsetTop;
 196  rtPos=oR[14][sob][soj].offsetTop;
 197  oR[14][sob][soj].style.top=0-(rtPos-ltPos);
 198  
 199  if(cP[sob][soj]){
 200  if(cP[sob][soj].length>0){
 201  oR[6][sob][soj]=d.getElementById('subroll'+sob+'-'+soj);
 202  if(shCOLOR!=""){oR[7][sob][soj]=d.getElementById('childshadow'+sob+'-'+soj);}
 203  if((chhOFFSET+cP[sob][soj][4])>0){oR[8][sob][soj]=d.getElementById('childgrid'+sob+'-'+soj);}
 204  oR[9][sob][soj]=d.getElementById('childnav'+sob+'-'+soj);
 205  oR[10][sob][soj]=d.getElementById('childlinks'+sob+'-'+soj);
 206  oR[11][sob][soj]=new Array;
 207  oR[15][sob][soj]=new Array;
 208  oR[16][sob][soj]=new Array;
 209  for (var scj=0;scj<cI[sob][soj].length;scj++){
 210  oR[11][sob][soj][scj]=d.getElementById('childroll'+sob+'-'+soj+'-'+scj);
 211  
 212  oR[15][sob][soj][scj]=d.getElementById('childlink'+sob+'-'+soj+'-'+scj);
 213  oR[16][sob][soj][scj]=d.getElementById('crolllink'+sob+'-'+soj+'-'+scj);
 214  ltPos=oR[15][sob][soj][scj].offsetTop;
 215  rtPos=oR[16][sob][soj][scj].offsetTop;
 216  oR[16][sob][soj][scj].style.top=0-(rtPos-ltPos);
 217  
 218  }
 219  }
 220  }
 221  }
 222  }
 223  genericOnloadFunction();
 224  }
 225  
 226  
 227  
 228  // code saving visibility toggles

 229  function miH(hr){if(hr&&hr.style){hr.style.visibility="hidden";}}
 230  function miV(hv){if(hv&&hv.style){hv.style.visibility="visible";}}
 231  
 232  
 233  
 234  // clear submenus

 235  var pId=-1;
 236  var pCId=-1;
 237  var rTimer=0;var rCount=0;
 238  var cjc;
 239  function aCM(n){
 240  if(pId>-1){
 241  if(rTimer!=0){clearTimeout(rTimer); rTimer=0; rCount=0;}
 242  if(typeof oR[0][pId] !="undefined"){miH(oR[0][pId]);}
 243  if(typeof oR[3][pId] !="undefined"){miH(oR[3][pId]);}
 244  if(typeof oR[12][pId] !="undefined"){miH(oR[12][pId]);}
 245  if(typeof oR[1][pId] !="undefined"){miH(oR[1][pId]);}
 246  if(typeof oR[2][pId] !="undefined"){miH(oR[2][pId]);}
 247  if(typeof oR[4][pId] !="undefined"){miH(oR[4][pId]);}
 248  if(pCId>-1){
 249  if(typeof oR[5][pId][pCId]!="undefined"){miH(oR[5][pId][pCId]);}
 250  if(cP[pId][pCId]){
 251  if(cP[pId][pCId].length>0){
 252  for (cjc=0;cjc<cI[pId][pCId].length;cjc++){
 253  if(typeof oR[11][pId][pCId][cj]!="undefined"){miH(oR[11][pId][pCId][cj]);}
 254  if(typeof oR[15][pId][pCId][cj]!="undefined"){miH(oR[15][pId][pCId][cj]);}
 255  if(typeof oR[16][pId][pCId][cj]!="undefined"){miH(oR[16][pId][pCId][cj]);}
 256  }
 257  if(typeof oR[10][pId][pCId]!="undefined"){miH(oR[10][pId][pCId]);}
 258  if(typeof oR[9][pId][pCId]!="undefined"){miH(oR[9][pId][pCId]);}
 259  if(typeof oR[8][pId][pCId]!="undefined"){miH(oR[8][pId][pCId]);}
 260  if(typeof oR[7][pId][pCId]!="undefined"){miH(oR[7][pId][pCId]);} 
 261  }
 262  }
 263  }
 264  if(typeof obGrid!="undefined"){miH(obGrid);}
 265  }
 266  pId=-1; pCId=-1;
 267  usegrid=false;
 268  }
 269  
 270  
 271  
 272  
 273  
 274  
 275  // start menu closing timer

 276  function cM(n){
 277  var nsNum=n;
 278  if(pCId==-1&&!usegrid){
 279  aCM(nsNum); 
 280  } else {
 281  if(rCount==0){
 282  rCount++;
 283  rTimer=setTimeout("cM(pId)",closeTIMER);
 284  } else {
 285  aCM(nsNum); 
 286  pId=-1;pCId=-1;
 287  }
 288  }
 289  }
 290  
 291  
 292  
 293  // special closing for grid

 294  var usegrid=false;
 295  function gridClearMenus(){
 296  usegrid=true;
 297  cM();
 298  }
 299  
 300  
 301  
 302  
 303  // rollover and find menu

 304  var n;
 305  var gridOkay=false;
 306  function oM(n,gridTrue){
 307  if(typeof mI[n]=="undefined") { return false; }
 308  if(typeof oR[0][n]!="undefined"){miV(oR[0][n]);}
 309  if(sI[n]!=""){
 310  if(sI[n]!=''){
 311  if(typeof oR[4][n]!="undefined"&&sI[n].length>0){miV(oR[4][n]);}
 312  }
 313  if(typeof oR[1][n]!="undefined"){miV(oR[1][n]);}
 314  if(typeof oR[2][n]!="undefined"){miV(oR[2][n]);}
 315  if(typeof oR[3][n]!="undefined"){miV(oR[3][n]);}
 316  if(typeof oR[12][n]!="undefined"){miV(oR[12][n]);}
 317  if(pCId>-1){
 318  miH(oR[5][n][pCId]); 
 319  }
 320  }
 321  if(typeof obGrid!="undefined"){if(typeof gridTrue=="undefined") {miV(obGrid);}else{aCM(n);}}
 322  pId=n;
 323  }
 324  
 325  
 326  // clear child menus

 327  function cCM(snum,cnum){
 328  if(pCId>-1){
 329  if(typeof oR[5][snum][pCId]!="undefined"){miH(oR[5][snum][pCId]);}
 330  if(cP[snum][pCId].length>0&&cI[snum][pCId].length>0){
 331  if(typeof oR[9][snum][pCId]!="undefined"){miH(oR[9][snum][pCId]);}
 332  if(typeof oR[10][snum][pCId]!="undefined"){miH(oR[10][snum][pCId]);}
 333  if(typeof oR[7][snum][pCId]!="undefined"){miH(oR[7][snum][pCId]);}
 334  if(typeof oR[8][snum][pCId]!="undefined"){miH(oR[8][snum][pCId]);}
 335  }
 336  
 337  pCId=-1;
 338  }
 339  }
 340  
 341  
 342  
 343  // actually open menu

 344  function actuallyOpenChild(snum,cnum){
 345  miV(oR[7][snum][cnum]); 
 346  miV(oR[9][snum][cnum]);
 347  miV(oR[10][snum][cnum]);
 348  if((chhOFFSET+cP[snum][cnum][4])>0){
 349  miV(oR[8][snum][cnum]);
 350  }
 351  }
 352  
 353  
 354  
 355  // rollover and find child menu

 356  var snum; var cnum;
 357  function oCM(snum,cnum){
 358  var ntS=snum; var ntC=cnum;
 359  if(sI[snum][cnum][4]){miV(oR[5][snum][cnum]);}
 360  if(cP[snum][cnum].length>0&&cI[snum][cnum].length>0){
 361  actuallyOpenChild(ntS,ntC);
 362  }
 363  pCId=cnum;
 364  }
 365  
 366  
 367  
 368  
 369  
 370  
 371  
 372  // td click handlers

 373  var linkClicked=false;
 374  function goToUrl(cUrl,cTarg){
 375  if(cellCLICK||(cellCLICK==mu)){
 376  if(linkClicked==true){return false;}
 377  if(cTarg=="_self"){self.document.location=cUrl; return true;}
 378  else if(cTarg=="_top"){top.document.location=cUrl; return true;}
 379  else if(cTarg=="_parent"){parent.document.location=cUrl; return true;}
 380  else if(cTarg=="_blank"){var newwin=open(cUrl); return true;}
 381  else {if(top[cTarg]){top[cTarg].document.location=cUrl;} else {document.location=cUrl;} return true;}
 382  }
 383  else { return false; }
 384  }
 385  
 386  
 387  
 388  
 389  
 390  //alert("assemble main nav");

 391  
 392  var mnDisplay='';
 393  if(remoteTRIGGERING) { mnDisplay='display:none'; }
 394  
 395  
 396  var T='';
 397  var S='';
 398  var spbk='';
 399  if(bCOLOR!=""){
 400  spbk=' background:'+bCOLOR+'\; '
 401  if(useIMG[1]){spbk=' background-image:url('+ bh + bCOLOR+')\; ';}
 402  }
 403  
 404  // nav stretching and event capturing layer

 405  var stbSize=bSIZE;
 406  if(stretchMENU||showBORDERS){
 407  S+='<span id="stretchnav" ';
 408  var spbb='';
 409  if(showBORDERS){spbb=spbk;} else {stbSize=0;}
 410  S+='style="'+mnDisplay+'\;'+spbb+' z-index:'+(zORDER+1)+'\; position:absolute\; top:'+aP[xp]+'\; left:0\;">'; 
 411  var stretchLayer='';
 412  
 413  if(stretchMENU){stretchLayer=bks[0];}
 414  
 415  //compensation for cell/stretch layer discrepancy here

 416  aH-=bSIZE;
 417  
 418  S+='<table cellpadding=0 cellspacing='+stbSize+' border=0 width='+bW+'  height='+aH+'><tr><td '+stretchLayer+' onmouseover="gridClearMenus()" onmousedown="aCM()">&nbsp;</td></tr></table>';
 419  S+='</span>';
 420  }
 421  
 422  // event capturing layer

 423  var GRw=bW;if(gridWIDTH>0){GRw=gridWIDTH;}
 424  var GRh=bHe;if(gridHEIGHT>0){GRh=gridHEIGHT;}
 425  var GRbc="";if(redGRID){GRbc="background-color:red";}
 426  T+='<span id="grid" style="'+GRbc+'\;visibility:hidden\; position:absolute\; top:0\; left:0\; width:'+GRw+'\; height:'+GRh+'\; z-index:'+zORDER+'" onmousedown="aCM()" onmouseover="gridClearMenus()"></span>';
 427  
 428  
 429  // open frame

 430  if(!free){
 431  T+='<span id="mainnav" style="'+mnDisplay+'\;'+spbk+' z-index:'+(zORDER+2)+'\; position:absolute\; top:'+aP[xp]+'px\; left:'+rL+'px\;"><table cellpadding=0 cellspacing='+bSIZE+' border=0><tr>';  
 432  }
 433  
 434  // link color behaviour

 435  if(aHOVER==""){aHOVER=aLINK;}
 436  
 437  var cSt=new Array;
 438  var cTd=new Array;
 439  
 440  var space=new Array;
 441  
 442  // alt text arrays

 443  var aTxt=new Array;
 444  var sTxt=new Array;
 445  var cTxt=new Array;
 446  var altNull='';
 447  
 448  // write alt text to status bar 

 449  function writeStatus(sTxt){window.status=sTxt; return true;}
 450  
 451  
 452  // links

 453  cSt=new Array;
 454  var linkHover='';
 455  for (i=0;i<mI.length;i++){
 456  
 457  aTxt[i]='';
 458  if(mI[i][5]!="none"){
 459  if(altDISPLAY=="title"){aTxt[i]=' title="'+mI[i][5]+'" ';}
 460  if(altDISPLAY=="status"){aTxt[i]=' onmouseover="return writeStatus(mI['+i+'][5])" onmouseout="return writeStatus(altNull)" ';}
 461  }
 462  
 463  space[i]=' left:0px\;';
 464  if(mI[i][3]=="left"){space[i]=' left:'+tINDENT+'px\;';}
 465  if(mI[i][3]=="right"){space[i]=' left:-'+tINDENT+'px\;';}
 466  if(mI[i][1]!=""){
 467  if(mI[i][0]==""){ 
 468  mI[i][0]="javascript:doNothing()"; 
 469  cSt[i]='cursor:default'; 
 470  cTd[i]='cursor:default'; 
 471  } else {
 472  cSt[i]='cursor:'+aCURSOR;
 473  cTd[i]='cursor:default';
 474  if(cellCLICK==true){cTd[i]='cursor:'+aCURSOR;}
 475  }
 476  if(free){
 477  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>';
 478  }
 479  var op6a=1;
 480  var op6b=-1;
 481  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="'+thisNH[i]+'" 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]+'" onmouseover="if(op6){linkClicked=true;}" onmouseout="if(op6){linkClicked=false;}" onclick="if((cellCLICK||(cellCLICK==mu))&&!op6){return false}else{return true}" style="'+cSt[i]+'\; background-color:transparent\;position:relative\; top:'+(vtOFFSET+op6b)+'\; '+space[i]+'"><font color="'+aLINK+'">'+mI[i][1]+'</font></a></td></tr></table></td>'; 
 482  if(free){T+='</tr></table></span>';}
 483  }
 484  }
 485  
 486  // close frame

 487  if(!free){T+='</tr></table></span>';}
 488  
 489  
 490  // rollovers

 491  var layLeft=rL+bSIZE;
 492  for (i=0;i<mI.length;i++){
 493  if(free){layLeft=mI[i][7]+bSIZE+aL; xp=i;}
 494  T+='<span id="roll'+i+'" style="'+mnDisplay+'\;'+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]+'" onmouseover="if(op6){linkClicked=true;}" onmouseout="if(op6){linkClicked=false;}" onclick="if((cellCLICK||(cellCLICK==mu))&&!op6){return false}else{return true}" style="'+cSt[i]+'\; background-color:transparent\;position:relative\; top:'+(vtOFFSET+op6b)+'\; '+space[i]+'"><font color="'+aHOVER+'">'+mI[i][1]+'</font></a></td></tr></table></span>';
 495  if(!free){layLeft+=(mI[i][2]+bSIZE);}
 496  }
 497  
 498  
 499  
 500  // assemble submenus

 501  
 502  var M='';
 503  var C='';
 504  
 505  var SUBaL=0;
 506  
 507  var chTop=new Array;
 508  var Xrows=new Array;
 509  var XCrows=new Array;
 510  
 511  for (var c=0;c<mI.length;c++){
 512  
 513  Xrows[c]=0;
 514  XCrows[c]=new Array;
 515  sTxt[c]=new Array;
 516  cTxt[c]=new Array;
 517  
 518  // specify top position

 519  if(free){xp=c;}
 520  
 521  var mzSubAbsTop=sbSIZE;
 522  chTop[c]=new Array;
 523  chTop[c][0]=aP[xp]+thisAH[c]+vOFFSET+sP[c][3];
 524  
 525  // text alignment and indentation

 526  space=' left:0px\;';
 527  if(sP[c][2]=="left"){space=' left:'+stINDENT+'px\;';}
 528  if(sP[c][2]=="right"){space=' left:-'+stINDENT+'px\;';}
 529  
 530  // find next submenu position

 531  if(!free){
 532  if(c==0){
 533  SUBaL=rL+bSIZE;
 534  }
 535  else {SUBaL+=mI[(c-1)][2]+bSIZE;}
 536  } else {
 537  SUBaL=aPL[c];
 538  }
 539  
 540  // specify edge alignment

 541  var acL=SUBaL+hOFFSET+sP[c][4];
 542  if(sP[c][1]=="right"){
 543  acL=SUBaL-(sP[c][0]-mI[c][2])-hOFFSET-sP[c][4];
 544  }
 545  
 546  // grid block layer for vertical offset

 547  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>';}
 548  
 549  // grid block layer for horizontal offset

 550  var gblw=acL-mI[c][2]-SUBaL;
 551  var gbposL=(SUBaL+mI[c][2]+(2*bSIZE));
 552  if(sP[c][1]=="right"){
 553  gblw=mI[c][7]+bSIZE+aL-sP[c][0]-acL; 
 554  gbposL=(mI[c][7]+bSIZE+aL-gblw);
 555  }
 556  
 557  for (i=0;i<sI[c].length;i++){
 558  if(sI[c][i][0]!=''&&sI[c][i][1]!=''){
 559  // find wrapping links routine by brendan armstrong

 560  thisH=snH;
 561  thisT=sI[c][i][1];
 562  splitT=thisT.split('<br>');
 563  Trows=splitT.length;
 564  if (Trows>1) { Xrows[c]+=(Trows-1); }
 565  }}
 566  
 567  // grid blocker for offset

 568  var shb=0;if(shy){shb=(2*shSIZE);}
 569  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>';}
 570  
 571  
 572  var subParent;
 573  // container cells

 574  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]+'>';
 575  for (i=0;i<sI[c].length;i++){
 576  if(sI[c][i][0]!=''&&sI[c][i][1]!=''){
 577  subParent='subnav'+c;
 578  
 579  // find wrapping links routine by brendan armstrong

 580  thisH=snH;
 581  thisT=sI[c][i][1];
 582  splitT=thisT.split('<br>');
 583  Trows=splitT.length;
 584  if (Trows>1) { thisH=(snH*Trows); }
 585  
 586  M+='<tr><td class=SUBmTD><table cellpadding=0 cellspacing=0 border=0 '+bks[3]+' style="position:relative\; margin-top:'+sbSIZE+'\; margin-left:'+sbSIZE+'\; margin-right:'+sbSIZE+'\; height:'+(thisH)+'\;" 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)+'><tr><td class=SUBmTD align="'+sP[c][2]+'">&nbsp;</td></tr></table></td></tr></table></td></tr>';
 587  }
 588  }
 589  M+='<tr><td><div style="width:2px\; height:'+sbSIZE+'px\;"></div></td></tr>';
 590  M+='</table></span>';
 591  
 592  // link color behaviour

 593  if(saHOVER==""){saHOVER=saLINK;}
 594  
 595  // links

 596  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>'; 
 597  
 598  var scSt=new Array;
 599  var scTd=new Array;
 600  for (i=0;i<sI[c].length;i++){
 601  
 602  cTxt[c][i]=new Array;
 603  sTxt[c][i]='';
 604  if(sI[c][i][3]!="none"){
 605  if(altDISPLAY=="title"){sTxt[c][i]=' title="'+sI[c][i][3]+'" ';}
 606  if(altDISPLAY=="status"){sTxt[c][i]=' onmouseover="return writeStatus(sI['+c+']['+i+'][3])" onmouseout="return writeStatus(altNull)" ';}
 607  }
 608  
 609  if(sI[c][i][0]=="#"){
 610  sI[c][i][0]="javascript:doNothing()"; 
 611  scSt[i]='cursor:default'; 
 612  scTd[i]='cursor:default';
 613  } else {
 614  scSt[i]='cursor:'+aCURSOR;
 615  scTd[i]='cursor:default';
 616  if(cellCLICK==true){scTd[i]='cursor:'+aCURSOR;}
 617  }
 618  subParent='subnav'+c;
 619  
 620  // find wrapping links routine by brendan armstrong

 621  thisH=snH;
 622  thisT=sI[c][i][1];
 623  splitT=thisT.split('<br>');
 624  Trows=splitT.length;
 625  if (Trows>1) { thisH=(snH*Trows); }
 626  
 627  chTop[c][i+1]=chTop[c][i]+thisH+sbSIZE;
 628  
 629  
 630  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)+' 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]+'" onmouseover="if(op6){linkClicked=true;}" onmouseout="if(op6){linkClicked=false;}" onclick="if((cellCLICK||(cellCLICK==mu))&&!op6){return false}else{return true}" style="'+scSt[i]+'\; background-color:transparent\;position:relative\; top:'+(svtOFFSET)+'\; '+space+'">'+ sI[c][i][1]+'</a></td></tr></table></td></tr>';
 631  // correct for positioning discrepancy 

 632  mzSubAbsTop += sbSIZE;
 633  
 634  }
 635  M+='<tr><td><div style="width:2px\; height:'+sbSIZE+'px\;"></div></td></tr>';
 636  M+='</table></span>';
 637  
 638  
 639  // rollovers

 640  for (i=0;i<sI[c].length;i++){
 641  
 642  // find wrapping links routine by brendan armstrong

 643  thisH=snH;
 644  thisT=sI[c][i][1];
 645  splitT=thisT.split('<br>');
 646  Trows=splitT.length;
 647  if (Trows>1) { thisH=(snH*Trows); }
 648  
 649  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)}">';
 650  M+='<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="srolllink'+c+'-'+i+'" target="'+sI[c][i][2]+'" onmouseover="if(op6){linkClicked=true;}" onmouseout="if(op6){linkClicked=false;}" onclick="if((cellCLICK||(cellCLICK==mu))&&!op6){return false}else{return true}" style="'+scSt[i]+'\;background-color:transparent\;position:relative\; '+space+'"><font color="'+saHOVER+'">'+ sI[c][i][1]+'</font></a></td></tr></table>';
 651  M+='</span>';
 652  }
 653  
 654  
 655  // drop shadow 

 656  shb=0;if(shy){shb=(2*shSIZE);}
 657  if(shCOLOR!=""){M+='<span id="shadow'+c+'" style="visibility:hidden\;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>';}
 658  
 659  
 660  //clear child rollovers backup

 661  var cupObj;
 662  function clearChildRoll(bucM,bucS,bucObj){
 663      
 664      for(cj=0;cj<cI[bucM][bucS].length;cj++){
 665          cupObj=document.getElementById('childroll'+bucM+'-'+bucS+'-'+cj);
 666          if(cupObj!=bucObj) { miH(cupObj); }
 667          }
 668      
 669      }
 670  
 671  //alert("assemble child menus");

 672  
 673  for (var sq=0;sq<sI[c].length;sq++){
 674  
 675  if(cP[c][sq].length>0&&cI[c][sq].length>0){
 676  
 677  XCrows[c][sq]=0;
 678  
 679  // specify edge alignment

 680  var chL,cgL;
 681  if(cP[c][sq][1]=="right"){
 682  chL=acL-cP[c][sq][0]-chhOFFSET-cP[c][sq][4];
 683  cgL=chL+cP[c][sq][0];
 684  } else {
 685  chL=acL + sP[c][0]+chhOFFSET+cP[c][sq][4];
 686  cgL=(chL-(chhOFFSET+cP[c][sq][4]));
 687  }
 688  
 689  for (var cj=0;cj<cI[c][sq].length;cj++){
 690  // find wrapping links routine by brendan armstrong

 691  thisH=snH;
 692  thisT=cI[c][sq][cj][1];
 693  splitT=thisT.split('<br>');
 694  Trows=splitT.length;
 695  if (Trows>1) { XCrows[c][sq]+=(Trows-1); }
 696  }
 697  
 698  // grid block layer for offset

 699  if((chhOFFSET+cP[c][sq][4])>0){
 700  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>';
 701  }
 702  
 703  // container cells

 704  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]+'>'; 
 705  for (cj=0;cj<cI[c][sq].length;cj++){
 706  
 707  // find wrapping links routine by brendan armstrong

 708  thisH=snH;
 709  thisT=cI[c][sq][cj][1];
 710  splitT=thisT.split('<br>');
 711  Trows=splitT.length;
 712  if (Trows>1) { thisH=(snH*Trows); }
 713  
 714  
 715  
 716  C+='<tr><td class=SUBmTD><table cellpadding=0 cellspacing=0 '+bks[3]+' border=0 style="position:relative\; margin-top:'+sbSIZE+'\; margin-left:'+sbSIZE+'\; margin-right:'+sbSIZE+'\; height:'+(thisH)+'\;" 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)+'><tr><td class=SUBmTD align="'+cP[c][sq][2]+'">&nbsp;</td></tr></table></td></tr></table></td></tr>';
 717  }
 718  C+='<tr><td><div style="width:2px\; height:'+sbSIZE+'px\;"></div></td></tr>';
 719  C+='</table></span>';
 720  
 721  // text alignment and indentation

 722  var cspace=' left:0px\;';
 723  if(cP[c][sq][2]=="left"){cspace=' left:'+stINDENT+'px\;';}
 724  if(cP[c][sq][2]=="right"){cspace=' left:-'+stINDENT+'px\;';}
 725  
 726  // links

 727  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>'; 
 728  
 729  mzSubAbsTop=sbSIZE;
 730  
 731  for (cj=0;cj<cI[c][sq].length;cj++){
 732  
 733  cTxt[c][sq][cj]='';
 734  if(cI[c][sq][cj][3]!="none"){
 735  if(altDISPLAY=="title"){cTxt[c][sq][cj]=' title="'+cI[c][sq][cj][3]+'" ';}
 736  if(altDISPLAY=="status"){cTxt[c][sq][cj]=' onmouseover="return writeStatus(cI['+c+']['+sq+']['+cj+'][3])" onmouseout="return writeStatus(altNull)" ';}
 737  }
 738  
 739  // find wrapping links routine by brendan armstrong

 740  thisH=snH;
 741  thisT=cI[c][sq][cj][1];
 742  splitT=thisT.split('<br>');
 743  Trows=splitT.length;
 744  if (Trows>1) { thisH=(snH*Trows); }
 745  
 746  
 747  var ccAl='cursor:'+aCURSOR;
 748  var ccTd='cursor:default';if(cellCLICK==true){ccTd='cursor:'+aCURSOR;}
 749  if(!cI[c][sq][cj][4]){ccAl='cursor:default';ccTd='cursor:default';}
 750  if(cI[c][sq][cj][0]=="#"){cI[c][sq][cj][0]="javascript:doNothing()";}
 751  C+='<tr><td class=SUBmTD><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="if(oR[11]['+c+']['+sq+']['+cj+']){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)+' 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]+'" onmouseover="if(op6){linkClicked=true;}" onmouseout="if(op6){linkClicked=false;}" onclick="if((cellCLICK||(cellCLICK==mu))&&!op6){return false}else{return true}" style="' +ccAl+'\; background-color:transparent\;position:relative\; top:'+(svtOFFSET)+'\; '+cspace+'">'+ cI[c][sq][cj][1]+'</a></td></tr></table></td></tr>';
 752  // correct for positioning discrepancy

 753  mzSubAbsTop += sbSIZE;
 754  
 755  }
 756  C+='<tr><td><div style="width:2px\; height:'+sbSIZE+'px\;"></div></td></tr>';
 757  C+='</table></span>';
 758  }
 759  
 760  var thisCHT = chTop[c][sq]+chvOFFSET+sbSIZE;
 761  if(cP[c][sq].length>0) { thisCHT+=cP[c][sq][3];}
 762  // rollovers

 763  for (cj=0;cj<cI[c][sq].length;cj++){
 764  
 765  // find wrapping links routine by brendan armstrong

 766  thisH=snH;
 767  thisT=cI[c][sq][cj][1];
 768  splitT=thisT.split('<br>');
 769  Trows=splitT.length;
 770  if (Trows>1) { thisH=(snH*Trows); }
 771  
 772  ccAl='cursor:'+aCURSOR;
 773  ccTd='cursor:default';if(cellCLICK==true){ccTd='cursor:'+aCURSOR;}
 774  if(!cI[c][sq][cj][4]){ccAl='cursor:default';ccTd='cursor:default';}
 775  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\';clearChildRoll('+c+','+sq+',this);" 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 id="crolllink'+c+'-'+sq+'-'+cj+'" href="'+cI[c][sq][cj][0]+'" target="'+cI[c][sq][cj][2]+'" onmouseover="if(op6){linkClicked=true;}" onmouseout="if(op6){linkClicked=false;}" onclick="if((cellCLICK||(cellCLICK==mu))&&!op6){return false}else{return true}" style="'+ccAl+'\;background-color:transparent\; position:relative\; '+cspace+'"><font color="'+saHOVER+'">'+ cI[c][sq][cj][1]+'</font></a></td></tr></table></span>';
 776  thisCHT+=(thisH+sbSIZE);
 777  }
 778  
 779  
 780  // drop shadow 

 781  if((typeof XCrows[c][sq]!="undefined")&&shCOLOR!=""){C+='<span id="childshadow'+c+'-'+sq+'" style="visibility:hidden\;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>';}
 782  }
 783  }
 784  
 785  
 786  
 787  // resize/reload routine

 788  // based on a function by Michael Wallner - http://www.wallner-software.com/

 789  
 790  var oldBW=window.innerWidth;
 791  var oldBH=window.innerHeight;
 792  var fws;
 793  
 794  function findWindowSize() {
 795  var newBW=window.innerWidth;
 796  var newBH=window.innerHeight;
 797  if (newBW==oldBW&&newBH==oldBH){ 
 798  fws = setTimeout("findWindowSize()",100); 
 799  }
 800  else { 
 801      clearTimeout(fws); 
 802      if(window.innerWidth>(nS+absLEFT)) { window.location.reload(); }
 803      else { fws = setTimeout("findWindowSize()",100); }
 804      }
 805  }
 806  
 807  
 808  function windowStart() {
 809  storeObjects();
 810  if(allowRESIZE==true){findWindowSize();}
 811  }
 812  
 813  
 814  
 815  // draw stretch layer 

 816  if(!free){d.write(S);}
 817  
 818  
 819  // draw main nav

 820  d.write(T);
 821  
 822  
 823  // draw submenus

 824  d.write(M);
 825  
 826  
 827  // draw child menus

 828  d.write(C);
 829  
 830  
 831  
 832  
 833  
 834  window.onload=windowStart;
 835  
 836  
 837  
 838  document.onclick=aCM;
 839  
 840  
 841  
 842  
 843  //move menu

 844  function activateMenu(mmNum) {
 845      if(typeof sP[mmNum]=="undefined"||!remoteTRIGGERING) { return false; }
 846      
 847      if(typeof oR[1][mmNum]!="undefined"&&oR[1][mmNum].style.visibility=="hidden") { 
 848          oM(mmNum,false); 
 849          }
 850      }
 851  


[ Powered by PHPXref - Served by Debian GNU/Linux ]