/*********************************************************
 *  Menu Objekt                                          *
 *  Version: 2.03                                        *
 *                                                       *
 *  von Roland Steffen                                   *
 *  e-Mail: rolandsteffen@gmx.de                         *
 *  Homepage: http://rolandsteffen.bei.t-online.de/      *
 *  01. Juni 2002                                        *
 *                                                       *
 *  Copyright:                                           *
 *  http://rolandsteffen.bei.t-online.de/copy.html       *
 *********************************************************/

//************************************************************************
var isMinNS4 = (navigator.appName.indexOf("Netscape") >= 0 &&
                parseFloat(navigator.appVersion) >= 3 &&
                parseFloat(navigator.appVersion) < 5 ) ? 1 : 0;
var isMinNS7 = (navigator.appName.indexOf("Netscape") >=0 &&
                parseFloat(navigator.appVersion) >= 5 &&
                parseFloat(navigator.appVersion) <=10) ? 1 : 0;
var isMinIE4 = (document.all) ? 1 : 0;
var isMinIE5 = (isMinIE4 && navigator.appVersion.indexOf("MSIE 5.") >= 0 || isMinIE4 && navigator.appVersion.indexOf("MSIE 6.") >= 0 ) ? 1 : 0;
var isMinIE6 = (isMinIE5&&navigator.appVersion.indexOf("MSIE 5.5") >= 0 || isMinIE5&&navigator.appVersion.indexOf("MSIE 6.") >= 0 ) ? 1 : 0;

function getWindowHeight() {
  if (isMinNS7)
    return document.getElementById("H1").scrollHeight -10;
  else if (isMinNS4)
    return window.innerHeight ;
  if (isMinIE4)
    return document.body.scrollHeight - 10;
  return -1;
}
function getBrowser(){
  if (isMinNS7)
    return "NS7";
  else if (isMinNS4)
    return "NS4";
  if (isMinIE4)
    return "MSIE";
  if (isMinIE6)
    return "MSIE";
  return "Weiß nich";
}
//************************************************************************
function Menu(id, top, left, cellwidth, cellheight)
  {
  this.align = "center";
  this.bgcolor = "#ece9d8";
  this.bgcoloractive = "#316ac5";
  this.bordercolor = "#aca899";
  this.borderbottom = 1;
  this.borderleft = 1;
  this.borderright = 1;
  this.bordertop = 1;
  this.cellheight = cellheight;
  this.cellwidth = cellwidth;
  this.color = "#000000";
  this.coloractive = "#ffffff";
  this.font = "Arial";
  this.fontsize = "12px";
  this.fontstyle = "normal";
  this.fontweight = "normal";
  this.id = id;
  this.imgalign = "center";
  this.imgsrc = "";
  this.imgsrcactive = "";
  this.imgsrcarrow = "";
  this.imgsrcarrowactive = "";
  this.left = left;
  this.letterspacing = "0px";
  this.padding = 5;
  this.textdecoration = "none";
//  this.top = window.hight-40;
  this.top = top;
  this.vertical = false;

  this.addItem = Menu_addItem;
  this.addMainItem = Menu_addMainItem;
  this.addSubMainItem = Menu_addSubMainItem;
  this.addSubItem = Menu_addSubItem;
  this.toString = Menu_toString;

  Menu.MenuStructList[this.id] = null;
  //getData();
  }

Menu.getElementCode = Menu_getElementCode;
Menu.getMenuPoint = Menu_getMenuPoint;
Menu.hide = Menu_hide;
Menu.hideall = Menu_hideall;
Menu.MenuStructList = new Object();
Menu.show = Menu_show;
Menu.writeItem = Menu_writeItem;

document.onclick = Menu.hideall;

function Menu_addMainItem(text, url)
  {
  var i = 0;
  var lastMenuPoint = null;
  var MenuPoint = Menu.MenuStructList[this.id];
  while(MenuPoint != null)
    {
    lastMenuPoint = MenuPoint;
    MenuPoint = MenuPoint.next;
    i++;
    }

  var id = this.id + "X" + i;

  var element = Menu.getElementCode(id);

  var top = (!this.vertical) ? this.top : (i == 0) ? this.top : lastMenuPoint.top + lastMenuPoint.height - this.bordertop;
  var left = (this.vertical) ? this.left : (i == 0) ? this.left : lastMenuPoint.left + lastMenuPoint.width - this.borderleft;
  var width = this.cellwidth + this.borderleft + this.borderright;
  var height = this.cellheight + this.bordertop + this.borderbottom;

  var next = '';
  for(var j = 0; j < i; j++) next += '.next';
  eval('Menu.MenuStructList[this.id]' + next + ' = new MenuStruct(id, text, url, "MainItem", element, top, left, width, height);');

  var hide = "Menu.MenuStructList['" + this.id + "']";
  Menu.writeItem(this, new MenuStruct(id, text, url, "MainItem", element, top, left, width, height), hide);
  }

function Menu_addItem()
  {
  var arg = Menu_addItem.arguments;
  var text = arg[0];
  var url = arg[1];
  var MenuPoint = Menu.MenuStructList[this.id];

  var pfad = new Array();
  for(var i = 2; i < arg.length; i++) pfad[i-2] = arg[i];
  MenuPoint = Menu.getMenuPoint(MenuPoint, pfad);

  var i = 0;
  var lastMenuPoint = null;
  if(MenuPoint.sub != null)
    {
    MenuPoint = MenuPoint.sub;
    while(MenuPoint != null)
      {
      lastMenuPoint = MenuPoint;
      MenuPoint = MenuPoint.next;
      i++;
      }
    }

  var id = this.id;
  for(var j = 2; j < arg.length; j++)
    {
    id += "X" + arg[j];
    }
  id += "X" + i;

  var element = Menu.getElementCode(id);

  var top = (i == 0) ? ((MenuPoint.type == "SubItem" || this.vertical) ? MenuPoint.top : MenuPoint.top + MenuPoint.height) : lastMenuPoint.top + lastMenuPoint.height - this.bordertop;
  var left = (i == 0) ? ((MenuPoint.type == "SubItem" || this.vertical) ? MenuPoint.left + MenuPoint.width : MenuPoint.left) : lastMenuPoint.left;
  var width = this.cellwidth + this.borderleft + this.borderright;
  var height = this.cellheight + this.bordertop + this.borderbottom;

  var next = '';
  for(var j = 2; j < arg.length; j++)
    {
    for(var k = 0; k < arg[j]; k++) next += '.next';
    next += '.sub';
    }
  var firstSubItem = next;
  for(var j = 0; j < i; j++) next += '.next';
  eval('Menu.MenuStructList[this.id]' + next + ' = new MenuStruct(id, text, url, "Item", element, top, left, width, height);');

  var hide = "Menu.MenuStructList['" + this.id + "']" + firstSubItem;
  Menu.writeItem(this, new MenuStruct(id, text, url, "Item", element, top, left, width, height), hide);
  }

function Menu_addSubMainItem(text)
  {
  var i = 0;
  var lastMenuPoint = null;
  var MenuPoint = Menu.MenuStructList[this.id];
  while(MenuPoint != null)
    {
    lastMenuPoint = MenuPoint;
    MenuPoint = MenuPoint.next;
    i++;
    }

  var id = this.id + "X" + i;

  var element = Menu.getElementCode(id);

  var top = (!this.vertical) ? this.top : (i == 0) ? this.top : lastMenuPoint.top + lastMenuPoint.height - this.bordertop;
  var left = (this.vertical) ? this.left : (i == 0) ? this.left : lastMenuPoint.left + lastMenuPoint.width - this.borderleft;
  var width = this.cellwidth + this.borderleft + this.borderright;
  var height = this.cellheight + this.bordertop + this.borderbottom;

  var next = '';
  for(var j = 0; j < i; j++) next += '.next';
  eval('Menu.MenuStructList[this.id]' + next + ' = new MenuStruct(id, text, url, "SubMainItem", element, top, left, width, height);');

  var hide = "Menu.MenuStructList['" + this.id + "']";
  var show = "Menu.MenuStructList['" + this.id + "']" + next;
  var url = "javascript:Menu.show(" + show + ");";

  Menu.writeItem(this, new MenuStruct(id, text, url, "SubMainItem", element, top, left, width, height), hide, show);
  }

function Menu_addSubItem()
  {
  var arg = Menu_addSubItem.arguments;
  var text = arg[0];
  var MenuPoint = Menu.MenuStructList[this.id];

  var pfad = new Array();
  for(var i = 1; i < arg.length; i++) pfad[i-1] = arg[i];
  MenuPoint = Menu.getMenuPoint(MenuPoint, pfad);

  var i = 0;
  var lastMenuPoint = null;
  if(MenuPoint.sub != null)
    {
    MenuPoint = MenuPoint.sub;
    while(MenuPoint != null)
      {
      lastMenuPoint = MenuPoint;
      MenuPoint = MenuPoint.next;
      i++;
      }
    }

  var id = this.id;
  for(var j = 1; j < arg.length; j++)
    {
    id += "X" + arg[j];
    }
  id += "X" + i;

  var element = Menu.getElementCode(id);

  var top = (i == 0) ? ((MenuPoint.type == "SubItem" || this.vertical) ? MenuPoint.top : MenuPoint.top + MenuPoint.height) : lastMenuPoint.top + lastMenuPoint.height - this.bordertop;
  var left = (i == 0) ? ((MenuPoint.type == "SubItem" || this.vertical) ? MenuPoint.left + MenuPoint.width : MenuPoint.left) : lastMenuPoint.left;
  var width = this.cellwidth + this.borderleft + this.borderright;
  var height = this.cellheight + this.bordertop + this.borderbottom;

  var next = '';
  for(var j = 1; j < arg.length; j++)
    {
    for(var k = 0; k < arg[j]; k++) next += '.next';
    next += '.sub';
    }
  var firstSubItem = next;
  for(var j = 0; j < i; j++) next += '.next';
  eval('Menu.MenuStructList[this.id]' + next + ' = new MenuStruct(id, text, url, "SubItem", element, top, left, width, height);');

  var hide = "Menu.MenuStructList['" + this.id + "']" + firstSubItem;
  var show = "Menu.MenuStructList['" + this.id + "']" + next;
  var url = "javascript:Menu.show(" + show + ");";
  Menu.writeItem(this, new MenuStruct(id, text, url, "SubItem", element, top, left, width, height), hide, show);
  }

function Menu_getMenuPoint(MenuPoint, pfad)
  {
  var Fehler = "Es ist ein Fehler beim Aufruf einer Methode aufgetreten.";
  for(var i = 0; i < pfad.length; i++)
    {
    for(var j = 0; j <= pfad[i]; j++)
      {
      if(j == pfad[i])
        {
        if(MenuPoint.type != "SubItem" && MenuPoint.type != "SubMainItem")
          {
          alert(Fehler + "\nElement ist nicht vom Type SubItem oder SubMainItem");
          return;
          }
        if(i == pfad.length - 1) break;
        if(MenuPoint.sub == null)
          {
          alert(Fehler + "\nElement hat kein SubItem.");
          return;
          }
        MenuPoint = MenuPoint.sub;
        }
      else
        {
        if(MenuPoint.next == null)
          {
          alert(Fehler + "\nElement existiert nicht.");
          return;
          }
        MenuPoint = MenuPoint.next;
        }
      }
    }
  return MenuPoint;
  }

function Menu_getElementCode(id)
  {
  var element = new Array(3);
  element[0] = (document.all) ? "document.all." + id + ".style" : (document.getElementById) ? "document.getElementById('" + id + "').style" : (document.layers) ? "document." + id : null;
  element[1] = (document.all) ? "document.all." + id + "XonMouseout.style" : (document.getElementById) ? "document.getElementById('" + id + "XonMouseout').style" : (document.layers) ? "document." + id + ".document." + id + "XonMouseout" : null;
  element[2] = (document.all) ? "document.all." + id + "XonMouseover.style" : (document.getElementById) ? "document.getElementById('" + id + "XonMouseover').style" : (document.layers) ? "document." + id + ".document." + id + "XonMouseover" : null;
  return element;
  }

function Menu_hideall()
  {
  for(var item in Menu.MenuStructList)
    {
    var P = Menu.MenuStructList[item];
    Menu.hide(P);
    while(P != null)
      {
      P.element[1].visibility = ((document.all || document.getElementById) ? "visible" : (document.layers) ? "show" : "");
      P.element[2].visibility = ((document.all || document.getElementById) ? "hidden" : (document.layers) ? "hide" : "");
      P = P.next;
      }
    }
  return true;
  }

function Menu_hide(MenuPoint, close)
  {
  while(MenuPoint != null)
    {
    if(MenuPoint.type == "SubItem" || MenuPoint.type == "SubMainItem") Menu.hide(MenuPoint.sub, true);
    if(close) for(i = 0; i < 3; i++) MenuPoint.element[i].visibility = ((document.all || document.getElementById) ? "hidden" : (document.layers) ? "hide" : "");
    MenuPoint = MenuPoint.next;
    }
  }

function Menu_show(MenuPoint)
  {
  MenuPoint = MenuPoint.sub;
  while(MenuPoint != null)
    {
    for(i = 0; i < 2; i++) MenuPoint.element[i].visibility = ((document.all || document.getElementById) ? "visible" : (document.layers) ? "show" : "");
    MenuPoint = MenuPoint.next;
    }
  }

function Menu_writeItem(currentMenu, MenuPoint)
  {
  var menufunctions = ((Menu_writeItem.arguments[2]) ? " Menu.hide(" + Menu_writeItem.arguments[2] + ", false);" : "") + ((Menu_writeItem.arguments[3]) ? " Menu.show(" + Menu_writeItem.arguments[3] + ");" : "");
  var arrow = '<font style="font-family:' + currentMenu.font + '; font-size:' + currentMenu.fontsize + '; font-weight:' + currentMenu.fontweight + '; color:' + currentMenu.color + ';">&gt;<font>';
  var arrowactive = '<font style="font-family:' + currentMenu.font + '; font-size:' + currentMenu.fontsize + '; font-weight:' + currentMenu.fontweight + '; color:' + currentMenu.coloractive + ';">&gt;<font>';
  var code = '';

  if(document.all || document.getElementById)
    {
        code += '<DIV ID='                 + MenuPoint.id                         + ' ';
        code += 'STYLE="';
        code += 'position:'                + 'absolute'                        + '; ';
        code += 'top:'                         + MenuPoint.top                 + '; ';
        code += 'left:'                 + MenuPoint.left                 + '; ';
        code += 'width:'                 + MenuPoint.width                 + '; ';
        code += 'height:'                 + MenuPoint.height                + '; ';
        code += 'background-color:'         + currentMenu.bordercolor         + ';';
        code += '">\n';

        code += '<DIV ID='                 + MenuPoint.id + "XonMouseout"         + ' ';
        code += 'STYLE="';
        code += 'position:'                + 'absolute'                        + '; ';
        code += 'top:'                         + currentMenu.bordertop                + '; ';
        code += 'left:'                 + currentMenu.borderleft        + '; ';
        code += 'width:'                 + currentMenu.cellwidth                + '; ';
        code += 'height:'                 + currentMenu.cellheight        + '; ';
        code += 'background-color:'         + currentMenu.bgcolor                + '; ';
        code += 'text-align:'                + currentMenu.align                 + '; ';
        code += 'line-height:'                 + currentMenu.cellheight        + 'px; ';
        code += 'visibility:'                + 'visible'                        + ';';
        code += '">\n';

        code += '<TABLE ';
        code += 'WIDTH='                + currentMenu.cellwidth                + ' ';
        code += 'HEIGHT='                + currentMenu.cellheight        + ' ';
        code += 'CELLPADDING='                + 0                                + ' ';
        code += 'CELLSPACING='                + 0                                + ' ';
        code += 'BORDER='                + 0                                + '';
        code += '>\n';
        code += '<TR>\n';
        code += '<TD ';
        code += 'WIDTH='                + ((currentMenu.imgsrc == "") ? currentMenu.padding : currentMenu.cellheight) + ' ';
        code += 'HEIGHT='                + currentMenu.cellheight        + ' ';
        code += 'ALIGN='                + currentMenu.imgalign                + '';
        code += '>';

        code += ((currentMenu.imgsrc == "") ? '&nbsp;' : ('<img src=' + currentMenu.imgsrc + '>'));

        code += '</TD>\n';
        code += '<TD ';
        code += 'HEIGHT='                + currentMenu.cellheight        + ' ';
        code += 'ALIGN='                + currentMenu.align                + '';
        code += '>\n';

        code += '<A ';
        code += 'onMouseover="'         + MenuPoint.element[2] + ".visibility = 'visible'; " + MenuPoint.element[1] + ".visibility = 'hidden';" + menufunctions + '" ';
        code += 'onClick="'                + 'javascript:setTimeout(\'Menu.hideall()\', 0);'        + '" ';
        code += 'HREF="'                 + MenuPoint.url                         + '" ';
        code += 'STYLE="';
        code += 'color:'                 + currentMenu.color                + '; ';
        code += 'font-family:'                 + currentMenu.font                + '; ';
        code += 'font-size:'                 + currentMenu.fontsize                + '; ';
        code += 'font-style:'                + currentMenu.fontstyle                + '; ';
        code += 'font-weight:'                 + currentMenu.fontweight        + '; ';
        code += 'letter-spacing:'        + currentMenu.letterspacing         + '; ';
        code += 'text-decoration:'        + currentMenu.textdecoration        + '; ';
        code += 'text-align:'                + currentMenu.align                + ';';
        code += '">';
        code += MenuPoint.text;
        code += '</A>\n';

        code += '</TD>\n';
        code += '<TD ';
        code += 'WIDTH='                + ((currentMenu.imgsrcarrow == "") ? currentMenu.padding : currentMenu.cellheight) + ' ';
        code += 'HEIGHT='                + currentMenu.cellheight        + ' ';
        code += 'ALIGN='                + currentMenu.imgalign                + '';
        code += '>';

        code += ((currentMenu.imgsrcarrow == "") ? ((MenuPoint.type == "SubItem") ? arrow : '&nbsp;') : (MenuPoint.type == "SubItem") ? ('<img src=' + currentMenu.imgsrcarrow + '>') : '&nbsp;');

        code += '</TD>\n';
        code += '</TR>\n';
        code += '</TABLE>\n';

        code += '</DIV>\n';

        code += '<DIV ID='                 + MenuPoint.id + "XonMouseover"        + ' ';
        code += 'STYLE="';
        code += 'position:'                + 'absolute'                        + '; ';
        code += 'top:'                         + currentMenu.bordertop                + '; ';
        code += 'left:'                 + currentMenu.borderleft        + '; ';
        code += 'width:'                 + currentMenu.cellwidth                + '; ';
        code += 'height:'                 + currentMenu.cellheight        + '; ';
        code += 'background-color:'         + currentMenu.bgcoloractive        + '; ';
        code += 'text-align:'                + currentMenu.align                + '; ';
        code += 'line-height:'                 + currentMenu.cellheight        + 'px; ';
        code += 'visibility:'                + 'hidden'                        + ';';
        code += '">\n';

        code += '<TABLE ';
        code += 'WIDTH='                + currentMenu.cellwidth                + ' ';
        code += 'HEIGHT='                + currentMenu.cellheight        + ' ';
        code += 'CELLPADDING='                + 0                                + ' ';
        code += 'CELLSPACING='                + 0                                + ' ';
        code += 'BORDER='                + 0                                + '';
        code += '>\n';
        code += '<TR>\n';
        code += '<TD ';
        code += 'WIDTH='                + ((currentMenu.imgsrc == "") ? currentMenu.padding : currentMenu.cellheight) + ' ';
        code += 'HEIGHT='                + currentMenu.cellheight        + ' ';
        code += 'ALIGN='                + currentMenu.imgalign                + '';
        code += '>';

        code += ((currentMenu.imgsrcactive == "") ? '&nbsp;' : ('<img src=' + currentMenu.imgsrcactive + '>'));

        code += '</TD>\n';
        code += '<TD ';
        code += 'HEIGHT='                + currentMenu.cellheight        + ' ';
        code += 'ALIGN='                + currentMenu.align                + '';
        code += '>\n';

        code += '<A ';
        code += 'onMouseover="'                + menufunctions                        + '" ';
        code += 'onMouseout="'                 + MenuPoint.element[1] + ".visibility = 'visible'; " + MenuPoint.element[2] + ".visibility = 'hidden';" + '" ';
        code += 'onClick="'                + 'javascript:setTimeout(\'Menu.hideall()\', 0);'        + '" ';
        code += 'HREF="'                 + MenuPoint.url                        + '" ';
        code += 'STYLE="';
        code += 'color:'                 + currentMenu.coloractive        + '; ';
        code += 'font-family:'                 + currentMenu.font                + '; ';
        code += 'font-size:'                 + currentMenu.fontsize                + '; ';
        code += 'font-style:'                + currentMenu.fontstyle                + '; ';
        code += 'font-weight:'                 + currentMenu.fontweight        + '; ';
        code += 'letter-spacing:'        + currentMenu.letterspacing         + '; ';
        code += 'text-decoration:'        + currentMenu.textdecoration        + '; ';
        code += 'text-align:'                + currentMenu.align                + ';';
        code += '">';
        code += MenuPoint.text;
        code += '</A>\n';

        code += '</TD>\n';
        code += '<TD ';
        code += 'WIDTH='                + ((currentMenu.imgsrcarrow == "") ? currentMenu.padding : currentMenu.cellheight) + ' ';
        code += 'HEIGHT='                + currentMenu.cellheight        + ' ';
        code += 'ALIGN='                + currentMenu.imgalign                + '';
        code += '>';

        code += ((currentMenu.imgsrcarrowactive == "") ? ((MenuPoint.type == "SubItem") ? arrowactive : '&nbsp;') : (MenuPoint.type == "SubItem") ? ('<img src=' + currentMenu.imgsrcarrowactive + '>') : '&nbsp;');

        code += '</TD>\n';
        code += '</TR>\n';
        code += '</TABLE>\n';

        code += '</DIV>\n';

        code += '</DIV>\n\n';
    }
  else if(document.layers)
    {
        code +=        '<style type="text/css">\n';
        code += '.'                        + MenuPoint.id + "onMOutS"        + ' {\n';
        code += 'color:'                 + currentMenu.color                + ';\n';
        code += 'font-family:'                 + currentMenu.font                + ';\n';
        code += 'font-size:'                 + currentMenu.fontsize                + ';\n';
        code += 'font-style:'                + currentMenu.fontstyle                + ';\n';
        code += 'font-weight:'                 + currentMenu.fontweight        + ';\n';
        code += 'letter-spacing:'        + currentMenu.letterspacing         + ';\n';
        code += 'text-decoration:'        + currentMenu.textdecoration        + ';\n';
        code += 'text-align:'                + currentMenu.align                + ';\n';
        code += '}\n';

        code += '.'                        + MenuPoint.id + "onMOverS"        + ' {\n';
        code += 'color:'                 + currentMenu.coloractive        + ';\n';
        code += 'font-family:'                 + currentMenu.font                + ';\n';
        code += 'font-size:'                 + currentMenu.fontsize                + ';\n';
        code += 'font-style:'                + currentMenu.fontstyle                + ';\n';
        code += 'font-weight:'                 + currentMenu.fontweight        + ';\n';
        code += 'letter-spacing:'        + currentMenu.letterspacing         + ';\n';
        code += 'text-decoration:'        + currentMenu.textdecoration        + ';\n';
        code += 'text-align:'                + currentMenu.align                + ';\n';
        code += '}\n';
        code += '</style>\n';

        document.write(code);
        code = '';

        code += '<LAYER NAME='                 + MenuPoint.id                         + ' ';
        code += 'TOP='                         + MenuPoint.top                 + ' ';
        code += 'LEFT='                 + MenuPoint.left                 + ' ';
        code += 'WIDTH='                 + MenuPoint.width                 + ' ';
        code += 'HEIGHT='                 + MenuPoint.height                + ' ';
        code += 'BGCOLOR='                 + currentMenu.bordercolor         + '';
        code += '>\n';

        code += '<LAYER NAME='                 + MenuPoint.id + "XonMouseout"         + ' ';
        code += 'TOP='                         + currentMenu.bordertop                + ' ';
        code += 'LEFT='                 + currentMenu.borderleft        + ' ';
        code += 'WIDTH='                 + currentMenu.cellwidth                + ' ';
        code += 'HEIGHT='                 + currentMenu.cellheight        + ' ';
        code += 'BGCOLOR='                 + currentMenu.bgcolor                + ' ';
        code += 'VISIBILITY=show';
        code += '>\n';

        code += '<TABLE ';
        code += 'WIDTH='                + currentMenu.cellwidth                + ' ';
        code += 'HEIGHT='                + currentMenu.cellheight        + ' ';
        code += 'CELLPADDING='                + 0                                + ' ';
        code += 'CELLSPACING='                + 0                                + ' ';
        code += 'BORDER='                + 0                                + ' ';
        code += '>\n';
        code += '<TR>\n';
        code += '<TD ';
        code += 'WIDTH='                + ((currentMenu.imgsrc == "") ? currentMenu.padding : currentMenu.cellheight) + ' ';
        code += 'HEIGHT='                + currentMenu.cellheight        + ' ';
        code += 'ALIGN='                + currentMenu.imgalign                + '';
        code += '>';

        code += ((currentMenu.imgsrc == "") ? '&nbsp;' : ('<img src=' + currentMenu.imgsrc + '>'));

        code += '</TD>\n';
        code += '<TD ';
        code += 'WIDTH='                + (currentMenu.cellwidth - ((currentMenu.imgsrc == "") ? currentMenu.padding : currentMenu.cellheight) - ((currentMenu.imgsrcarrow == "") ? currentMenu.padding : currentMenu.cellheight)) + ' ';
        code += 'HEIGHT='                + currentMenu.cellheight        + ' ';
        code += 'ALIGN='                + currentMenu.align                + '';
        code += '>\n';

        code += '<A ';
        code += 'onMouseover="'         + MenuPoint.element[2] + ".visibility = 'show'; " + MenuPoint.element[1] + ".visibility = 'hide';" + menufunctions + '" ';
        code += 'onClick="'                + 'javascript:setTimeout(\'Menu.hideall()\', 0);'        + '" ';
        code += 'HREF="'                 + MenuPoint.url                         + '" ';
        code += 'class="'                + MenuPoint.id + "onMOutS"        + '">';
        code += MenuPoint.text;
        code += '</A>\n';

        code += '</TD>\n';
        code += '<TD ';
        code += 'WIDTH='                + ((currentMenu.imgsrcarrow == "") ? currentMenu.padding : currentMenu.cellheight) + ' ';
        code += 'HEIGHT='                + currentMenu.cellheight        + ' ';
        code += 'ALIGN='                + currentMenu.imgalign                + '';
        code += '>';

        code += ((currentMenu.imgsrcarrow == "") ? ((MenuPoint.type == "SubItem") ? arrow : '&nbsp;') : (MenuPoint.type == "SubItem") ? ('<img src=' + currentMenu.imgsrcarrow + '>') : '&nbsp;');

        code += '</TD>\n';
        code += '</TR>\n';
        code += '</TABLE>\n';
        code += '</LAYER>\n';

        code += '<LAYER NAME='                 + MenuPoint.id + "XonMouseover"        + ' ';
        code += 'TOP='                         + currentMenu.bordertop                + ' ';
        code += 'LEFT='                 + currentMenu.borderleft        + ' ';
        code += 'WIDTH='                 + currentMenu.cellwidth                + ' ';
        code += 'HEIGHT='                 + currentMenu.cellheight        + ' ';
        code += 'BGCOLOR='                 + currentMenu.bgcoloractive        + ' ';
        code += 'VISIBILITY=hide';
        code += '>\n';

        code += '<TABLE ';
        code += 'WIDTH='                + currentMenu.cellwidth                + ' ';
        code += 'HEIGHT='                + currentMenu.cellheight        + ' ';
        code += 'CELLPADDING='                + 0                                + ' ';
        code += 'CELLSPACING='                + 0                                + ' ';
        code += 'BORDER='                + 0                                + ' ';
        code += '>\n';
        code += '<TR>\n';
        code += '<TD ';
        code += 'WIDTH='                + ((currentMenu.imgsrc == "") ? currentMenu.padding : currentMenu.cellheight) + ' ';
        code += 'HEIGHT='                + currentMenu.cellheight        + ' ';
        code += 'ALIGN='                + currentMenu.imgalign                + '';
        code += '>';

        code += ((currentMenu.imgsrcactive == "") ? '&nbsp;' : ('<img src=' + currentMenu.imgsrcactive + '>'));

        code += '</TD>\n';
        code += '<TD ';
        code += 'WIDTH='                + (currentMenu.cellwidth - ((currentMenu.imgsrc == "") ? currentMenu.padding : currentMenu.cellheight) - ((currentMenu.imgsrcarrow == "") ? currentMenu.padding : currentMenu.cellheight)) + ' ';
        code += 'HEIGHT='                + currentMenu.cellheight        + ' ';
        code += 'ALIGN='                + currentMenu.align                + '';
        code += '>\n';

        code += '<A ';
        code += 'onMouseover="'                + menufunctions                        + '" ';
        code += 'onMouseout="'                 + MenuPoint.element[1] + ".visibility = 'show'; " + MenuPoint.element[2] + ".visibility = 'hide';" + '" ';
        code += 'onClick="'                + 'javascript:setTimeout(\'Menu.hideall()\', 0);'        + '" ';
        code += 'HREF="'                 + MenuPoint.url                         + '" ';
        code += 'class="'                + MenuPoint.id + "onMOverS"        + '">';
        code += MenuPoint.text;
        code += '</A>\n';

        code += '</TD>\n';
        code += '<TD ';
        code += 'WIDTH='                + ((currentMenu.imgsrcarrow == "") ? currentMenu.padding : currentMenu.cellheight) + ' ';
        code += 'HEIGHT='                + currentMenu.cellheight        + ' ';
        code += 'ALIGN='                + currentMenu.imgalign                + '';
        code += '>';

        code += ((currentMenu.imgsrcarrowactive == "") ? ((MenuPoint.type == "SubItem") ? arrowactive : '&nbsp;') : (MenuPoint.type == "SubItem") ? ('<img src=' + currentMenu.imgsrcarrowactive + '>') : '&nbsp;');

        code += '</TD>\n';
        code += '</TR>\n';
        code += '</TABLE>\n';
        code += '</LAYER>\n';
        code += '</LAYER>\n\n';
    }
  document.write(code);
  for(var i = 0; i < 3; i++) MenuPoint.element[i] = eval(MenuPoint.element[i]);
  setTimeout("Menu.hideall()", 100);
  }

function Menu_toString()
  {
  var text = this.id + ":\n\n"
  text += MenuStruct.getStructString(Menu.MenuStructList[this.id], 0);
  return text;
  }

function MenuStruct(id, text, url, type, element, top, left, width, height)
  {
  this.id = id;
  this.text = text;
  this.url = url;
  this.type = type;
  this.element = element;
  this.top = top;
  this.left = left;
  this.width = width;
  this.height = height;
  this.sub = null;
  this.next = null;
  }

MenuStruct.getStructString = MenuStruct_getStructString;

function MenuStruct_getStructString(MenuPoint, i)
  {
  var text = "";
  var k = 0;
  while(MenuPoint != null)
    {
    for(var j = 0; j < i; j++) text += "\t";
    text += "[" + (k++) + "|" + MenuPoint.text + "]\n";
    if(MenuPoint.type == "SubItem" || MenuPoint.type == "SubMainItem")
      {
      text += MenuStruct.getStructString(MenuPoint.sub, i+1);
      }
    MenuPoint = MenuPoint.next;
    }
  return text;
  }