if(navigator.appName == "Netscape" && parseInt(navigator.appVersion) >= 4 &&
  parseInt(navigator.appVersion) < 5) top.browser = "NN4";
else if(navigator.appName == "Netscape" &&
 parseInt(navigator.appVersion) >= 5) {
   top.browser = "NN6";
   simAll();
 }
else if(navigator.appName == "Microsoft Internet Explorer" &&
  parseInt(navigator.appVersion) >= 4) top.browser = "IE4";
if(top.browser) {
  setHandlers();
  var timer = null;
  var aMenus = new Array();
  var aMenu = null;
  var childActive = false;
}
/////////////////////////////////////////////////////////////////////
function simAll() {
  if(!document.all) {
    Node.prototype.__defineGetter__("all", function() {
      if(document.getElementsByTagName("*").length) {
        switch(this.nodeType) {
          case 9: return document.getElementsByTagName("*");
                  break;
          case 1: return this.getElementsByTagName("*");
                  break;
        }
      }
      return "";
    });
    Node.prototype.__defineSetter__("all", function() {} );
  }
}
/////////////////////////////////////////////////////////////////////
function menuStyle() {
  this.topLeftBorderColor = "#ffffff";
  this.bottomRightBorderColor = "#000000";
  this.betweenItemColor  = "#000000";
  this.itemBackgroundColor   = "#ffffff";

  this.itemWidth = 180;
  this.itemHeight = 24;
  this.borderWidth = 1;
  this.betweenItemHeight = 1;
}
/////////////////////////////////////////////////////////////////////
function Menu(l,x,y,s,t) {
  this.l = l || 0;
  this.x = x || 0;
  this.y = y || 0;
  this.s = s || top.mCS || new menuStyle();
  this.type = "menu";
  this.items = new Array();
  this.trigger = t || null;

  this.addMenuItem = addMenuItem;
  if(!top.menus) top.menus = new Array();
  if(!top.menus[l]) top.menus[l] = new Array();
  if(!top.mimgs) top.mimgs = new Array();
  this.n = top.menus[l].length;
  top.menus[l][this.n] = this;
  this.n += 100*l;
}
function addMenuItem(i,a,cm) {
  var k = this.items.length;
  this.items[k] = new menuItem(i,a,cm,this,k);
  if(cm) {
	var menuWidth = this.s.itemWidth + 2*this.s.borderWidth;
    //cm.x = this.s.menuWidth - Math.floor(this.s.menuWidth/20);
    //cm.x = menuWidth - Math.floor(menuWidth/20);
    cm.x = menuWidth;
    //cm.y = (this.s.itemHeight+2)*k;
    cm.y = this.s.borderWidth + (this.s.itemHeight + this.s.betweenItemHeight)*k - cm.s.borderWidth;
  }
}
/////////////////////////////////////////////////////////////////////
function menuItem(i,a,cm,pm,k) {
  var hImg = "m" + pm.n + "i" + k;
  var imageFolder = "/";
  if(top.imageFolder != null) imageFolder = top.imageFolder;
  top.mimgs[hImg] = new Image();
  top.mimgs[hImg].src = imageFolder  + i + ".gif";
  top.mimgs[hImg + "S"] = new Image();
  top.mimgs[hImg + "S"].src = imageFolder + i + "_f2.gif";

  this.a = a;
  this.cm = cm;
}
/////////////////////////////////////////////////////////////////////
function posMenus() {
  if(!top.rendered) {
    top.rendered = 1;
    for(var m = 0; m < top.menus[0].length; m++)
      posCMenus(top.menus[0][m],0,0);
  }
}
function posCMenus(c,px,py) {
  c.x += px;
  c.y += py;
  for(var i = 0; i < c.items.length; i++)
    if(typeof c.items[i].cm == "object")
      posCMenus(c.items[i].cm,c.x,c.y);
}
function renderMenus() {
  posMenus();
  if(top.browser == null);

  if(top.browser == "NN4")
    renderNN4();
  else renderW3C();
}
function renderNN4() {
  if(!top.browser) return;
  var str = "";
  for(var l = 0; l < top.menus.length; l++) {
  //alert("l: " + l);
    for(var m = 0; m < top.menus[l].length; m++) {
    //alert("m: " + m + " top.menus[l].length: " + top.menus[l].length);
      var menu = top.menus[l][m];
      //var h = (menu.s.itemHeight + 1)*menu.items.length + 1;
      //var w = menu.s.menuWidth;
      var bw = menu.s.borderWidth;
      var h = 2*bw + menu.s.itemHeight*menu.items.length + menu.s.betweenItemHeight*(menu.items.length - 1);
      var w = 2*bw + menu.s.itemWidth;
      var n = menu.n;


      str += '\n<LAYER NAME=menu' + n + ' TOP="' + menu.y + 'px" LEFT="' + menu.x +
             'px" HEIGHT="' + h + 'px" WIDTH="' + w + 'px" BGCOLOR="' + menu.s.topLeftBorderColor +
             '" Z-INDEX="200" VISIBILITY="hidden">' +

             '\n<LAYER NAME=menb' + n + ' TOP="' + bw + 'px" LEFT="' + bw + 'px" HEIGHT="' + (h -= bw) +
             'px" WIDTH="' + (w -= bw) + 'px" BGCOLOR="' + menu.s.bottomRightBorderColor + '"></LAYER>' +

             '\n<LAYER NAME=meng' + n + ' TOP="' + bw + 'px" LEFT="' + bw + 'px" HEIGHT="' + (h -= bw) +
             'px" WIDTH="' + (w -= bw) + 'px" BGCOLOR="' + menu.s.betweenItemColor  + '"></LAYER>';

      var iSize = ' HEIGHT="' + (menu.s.itemHeight) + 'px" WIDTH="' + w + 'px"';

      for(var i = 0; i < menu.items.length; i++) {
        var hImg = "m" + n + "i" + i;
        var events = ' onmouseover="doMouseOver(' + n + ',' + i + ',' +
               ((typeof menu.items[i].cm == "object") ? menu.items[i].cm.n : 'null') +
               ')" onmouseout="doMouseOut(' + n + ',' + i + ')"';
        //var iPos = ' TOP="' + ((menu.s.itemHeight+1)*i + 1) + 'px" LEFT="1px"';
        var iPos = ' TOP="' + ((menu.s.itemHeight + menu.s.betweenItemHeight)*i + bw) + 'px" LEFT="' + bw + 'px"';

        str += '\n<LAYER NAME=cell' + i + iPos + iSize + ' BGCOLOR="' + menu.s.itemBackgroundColor  + '"' +
               events + '>' +
               '<A href="' + menu.items[i].a + '"><IMG src="' + top.mimgs[hImg].src +
               '" name="img' + i + '" border=0 align="left" hspace="0"></A>\n</LAYER>';
      } //end for each item

      str += '\n</LAYER>\n';
    } //end for each menu
  } //end for each level
  //prompt("Hi!",str);
  document.write(str);
  document.close();
  //alert("end render");
}
function renderW3C() {
  if(!top.browser) return;
  var str = "";
  var bwr = top.browser;
  for(var l = 0; l < top.menus.length; l++) {
  //alert("l: " + l);
    for(var m = 0; m < top.menus[l].length; m++) {
    //alert("m: " + m + " top.menus[l].length: " + top.menus[l].length);
      var menu = top.menus[l][m];
      //var h = (menu.s.itemHeight + 1)*menu.items.length + 1;
      //var w = menu.s.menuWidth;
      var bw = menu.s.borderWidth;
      var h = 2*bw + menu.s.itemHeight*menu.items.length + menu.s.betweenItemHeight*(menu.items.length - 1);
      var w = 2*bw + menu.s.itemWidth;
      var n = menu.n;

      str += '\n<DIV ID=menu' + n + ' STYLE="POSITION: absolute; TOP: ' + menu.y +
             'px; LEFT: ' + menu.x + 'px; HEIGHT: ' + h + 'px; WIDTH: ' + w + 'px; ' +
             'BACKGROUND-COLOR: ' + menu.s.topLeftBorderColor + '; Z-INDEX: 200; VISIBILITY: hidden">';

      str += '\n<DIV ID=menb' + n + ' STYLE="POSITION: absolute; TOP: ' + bw + 'px; LEFT: ' + bw + 'px;' +
             ' HEIGHT: ' + (h -= bw) + 'px; WIDTH: ' + (w -= bw) + 'px; BACKGROUND-COLOR: ' +
             menu.s.bottomRightBorderColor + '"><IMG src="images/spacer.gif" border="0"' +
             ' width="' + w + '" height="' + h + '"></DIV>' +
             '\n<DIV ID=meng' + n + ' STYLE="POSITION: absolute; TOP: ' + bw + 'px; LEFT: ' + bw + 'px;' +
             ' HEIGHT: ' + (h -= bw) + 'px; WIDTH: ' + (w -= bw) + 'px; BACKGROUND-COLOR: ' +
             menu.s.betweenItemColor  + '"><IMG src="images/spacer.gif" border="0"' +
             ' width="' + w + '" height="' + h + '"></DIV>';

      var iSize = ' HEIGHT: ' + (menu.s.itemHeight) + 'px; WIDTH: ' + w + 'px;';

      for(var i = 0; i < menu.items.length; i++) {
        var hImg = "m" + n + "i" + i;
        var events = ' onmouseover="doMouseOver(' + n + ',' + i + ',' +
               ((typeof menu.items[i].cm == "object") ? menu.items[i].cm.n : 'null') +
               ')" onmouseout="doMouseOut(' + n + ',' + i + ')"';
        var iPos = 'POSITION: absolute; TOP: ' + ((menu.s.itemHeight + menu.s.betweenItemHeight)*i + bw) + 'px; LEFT: ' + bw + 'px;';

        str += '\n<DIV ID=cell' + i + ' STYLE="' + iPos + iSize + ' BACKGROUND-COLOR: ' +
	       menu.s.itemBackgroundColor + '"' + events + '>' +
	       '<A href="' + menu.items[i].a + '"><IMG src="' + top.mimgs[hImg].src +
               '" name="img' + i + '" border="0" align="left" hspace="0"></A></DIV>';
      } //end for each item
      str += '\n</DIV>\n';
    } //end for each menu
  } //end for each level
  //prompt("hi!",str);
  document.write(str);
  document.close();
  //alert("end render");
}
/////////////////////////////////////////////////////////////////////
function hideAll() {
  childActive = false;
  while(aMenus.length > 0)
    hideAMenu();
}
function waitToHide() {
  if(timer) clearTimeout(timer);
  timer = setTimeout("hideAll()",600);
}
function cancelWait() {
  clearTimeout(timer);
  timer = null;
}
function setHandlers() {
  if(top.browser == "NN4") {
    window.doMouseOver = doMouseOverNN4;
    window.doMouseOut  = doMouseOutNN4;
    window.hideAMenu   = hideAMenuNN4;
  }
  else {
    window.doMouseOver = doMouseOverW3C;
    window.doMouseOut  = doMouseOutW3C;
    window.hideAMenu   = hideAMenuW3C;
  }
}
/////////////////////////////////////////////////////////////////////
function doMouseOverW3C(m,c,cm) {
  childActive = false;
  if(aMenus.length == 0 || aMenus[aMenus.length-1] != m) {
    while(aMenus.length > 0 && Math.floor(aMenus[aMenus.length-1]/100) >= Math.floor(m/100))
      hideAMenu();

    aMenus[aMenus.length] = m;
    aMenu = document.all["menu" + m];
    aMenu.n = m;
    aMenu.style.visibility = "inherit";
    if(aMenu.trigger && aMenu.trigger.hSrc)
      aMenu.trigger.src = aMenu.trigger.hSrc;
    //waitToHide();
  }
  if(typeof c == "number") {
    aMenu.all["img" + c].src = top.mimgs["m" + m + "i" + c + "S"].src;
    aMenus[aMenus.length-1].aCell = c;
    aMenu.aCell = c;
    //cancelWait();
  }
  if(typeof cm == "number") {
    doMouseOver(cm);
    childActive = true;
    //cancelWait();
  }
  cancelWait();
}
function doMouseOutW3C(m,c) {
  if(!childActive) {
    var menu = document.all["menu" + m];
    if(typeof c == "number")
      menu.all["img" + c].src = top.mimgs["m" + m + "i" + c].src;
  }
  waitToHide();
}
function hideAMenuW3C() {
  if(aMenu != null) {
    if(aMenu.aCell != null) {
      var m = aMenu.n;
      var c = aMenu.aCell;
      aMenu.all["img" + c].src = top.mimgs["m" + m + "i" + c].src;
    }
    if(aMenu.trigger && aMenu.trigger.oSrc) {
		if(!aMenu.trigger.hSrc)
		  aMenu.trigger.hSrc = aMenu.trigger.src;
        aMenu.trigger.src = aMenu.trigger.oSrc;
	}
    //alert("aMenu: " + aMenu.n);
    aMenu.style.visibility = "hidden";
    aMenus.length--;
    var n = aMenus[aMenus.length-1];
    aMenu = document.all["menu" + n];
  }
}
/////////////////////////////////////////////////////////////////////
function doMouseOverNN4(m,c,cm) {
  childActive = false;
  if(aMenus.length == 0 || aMenus[aMenus.length-1] != m) {
    while(aMenus.length > 0 && Math.floor(aMenus[aMenus.length-1]/100) >= Math.floor(m/100))
      hideAMenu();

    aMenus[aMenus.length] = m;
    aMenu = document.layers["menu" + m];
    aMenu.n = m;
    aMenu.visibility = "inherit";
    if(aMenu.trigger && aMenu.trigger.hSrc)
      aMenu.trigger.src = aMenu.trigger.hSrc;
    //waitToHide();
  }
  if(typeof c == "number") {
    //aMenu.aCell = aMenu.document.layers["cell" + c];
    //aMenu.aCell.visibility = "hidden";
    //aMenus[aMenus.length-1].aCell = c;
    aMenu.document.layers["cell" + c].document.images["img" + c].src = top.mimgs["m" + m + "i" + c + "S"].src;
    aMenus[aMenus.length-1].aCell = c;
    aMenu.aCell = c;
    //cancelWait();
  }
  if(typeof cm == "number") {
    doMouseOver(cm);
    childActive = true;
    //cancelWait();
  }
  cancelWait();
}
function doMouseOutNN4(m,c) {
  if(!childActive) {
    var menu = document.layers["menu" + m];
    if(typeof c == "number")
      menu.document.layers["cell" + c].document.images["img" + c].src = top.mimgs["m" + m + "i" + c].src;
  }
  waitToHide();
}
function hideAMenuNN4() {
  if(aMenu != null) {
    if(aMenu.aCell != null) {
      //aMenu.aCell.visibility = "inherit";
      var m = aMenu.n;
      var c = aMenu.aCell;
      aMenu.document.layers["cell" + c].document.images["img" + c].src = top.mimgs["m" + m + "i" + c].src;
    }
    if(aMenu.trigger && aMenu.trigger.oSrc) {
		if(!aMenu.trigger.hSrc)
		  aMenu.trigger.hSrc = aMenu.trigger.src;
        aMenu.trigger.src = aMenu.trigger.oSrc;
	}
    aMenu.visibility = "hidden";
    aMenus.length--;
    aMenu = document.layers["menu" + aMenus[aMenus.length-1]];
  }
}
