var menuOptions = [];

function MenuOption(id,label,link,parentId,img)
{
    this.id = id;
    this.index = menuOptions.length;
    this.label = label;
    this.img = img;
    this.link = link;
    this.level = -1;
    this.parent = null;
    this.parentId = parentId;
    this.parentIndex = -1;
    if (parentId!=-1)
    {
        var i;
        for (i=0;i<menuOptions.length;i++)
        {
            if (menuOptions[i].id==parentId)
            {
                this.parentId = parentId;
                this.parentIndex = i;
                this.parent = menuOptions[i]; 
                this.level = this.parent.level+1;
                break;
            }
        }
    }
    if (this.parentIndex!=-1)
    {
        this.parent.children[this.parent.children.length] = this;
    }
    this.TR = null;
    this.children  = [];
    menuOptions[this.index] = this;
}

function hideMenu(menu)
{
    var i;
    for (i=0;i<menu.children.length;i++)
    {
        var m = menu.children[i];
        if (m.TR.style.display!="none")
        {
            m.TR.style.display = "none";
            hideMenu(m);
        }
    }
}

function onMenuClick(e)
{
    if (window.event) e = window.event;
    var src = e.srcElement ? e.srcElement : e.target; 
    var TR = null;
    if (src.tagName=="TR") 
        TR = src;
    else if (src.tagName=="TD")
        TR = src.parentNode;    
    else if (src.tagName=="IMG")
        TR = src.parentNode.parentNode;
    var menu = TR.menu;
    var i;
    if (menu.link!="") window.open(menu.link,"p9");
    var parent = menu.parent;
    if (parent==null)
    {
        for (i=0;i<menuOptions.length;i++)
        {
            var m = menuOptions[i];
            if (m.TR.style.display!="none")
            {
                hideMenu(m);
            }
        }
    }
    else
    {
        for (i=0;i<parent.children.length;i++)
        {
            var m = parent.children[i];
            if ((m!=menu) && (m.TR.style.display!="none"))
            {
                hideMenu(m);
            }
        }
    }
    for (i=0;i<menu.children.length;i++)
    {
        menu.children[i].TR.style.display = "";
    }
}

var color;

function onEnterMenu(e)
{
    if (window.event) e = window.event;
    var src = e.srcElement ? e.srcElement : e.target; 
    var TD = null;
    if (src.tagName=="TR") 
        TD = src.firstChild;
    else if (src.tagName=="TD")
        TD = src;
    else if (src.tagName=="IMG")
        TD = src.parentNode;
    color = TD.style.color;
    TD.style.color = "#a36b00";
    TD.style.cursor = "pointer";
}

function onLeaveMenu(e)
{
    if (window.event) e = window.event;
    var src = e.srcElement ? e.srcElement : e.target; 
    var TD = null;
    if (src.tagName=="TR") 
        TD = src.firstChild;
    else if (src.tagName=="TD")
        TD = src;
    else if (src.tagName=="IMG")
        TD = src.parentNode;
    TD.style.color = color
    TD.style.cursor = "default";
}

function AddLine(tbody)
{
    var TR = document.createElement('TR');
    TR.style.height = "10px";
    tbody.appendChild(TR);
    var TD = document.createElement('TD');
    TR.appendChild(TD);
}

function DisplayMenu(divId)
{
    var div = document.getElementById(divId);
    var i;
    var table = document.createElement('TABLE');
    table.cellPadding = "0px";
    table.cellSpacing = "0px";
    table.style.width = "100%";
    var thead = document.createElement('THEAD');
    var tbody = document.createElement('tbody');
    var TR = null;
    for (i=0;i<menuOptions.length;i++)
    {
        var menu = menuOptions[i];
        if (menu.parentIndex==-1)
        {
            if (i>0) AddLine(tbody);
            TR = document.createElement('TR');
            TR.onclick = onMenuClick;
            TR.onmouseover = onEnterMenu;;
            TR.onmouseout = onLeaveMenu;
            TR.style.backgroundColor = "#557013";
            TR.style.width = "100%";
            menu.TR = TR;
            TR.menu = menu;
            var TD = document.createElement('TD');
            TD.align = "center";
            var text = document.createTextNode(menu.label);
            TD.style.fontFamily = "Arial";
	        TD.style.fontSize = "10pt";
            TD.style.color = "White";
            TD.appendChild(text);
            if (menu.img!="")
            {
                var img = document.createElement('img');
                img.src = menu.img;
                TD.appendChild(img);
            }
            TR.appendChild(TD);
            tbody.appendChild(TR);
        }
        else
        {
            TR = document.createElement('TR');
            TR.style.display = "none";
            TR.onclick = onMenuClick;
            TR.onmouseover = onEnterMenu;;
            TR.onmouseout = onLeaveMenu;
            TR.style.backgroundColor = "#d4f38a";
            TR.style.width = "100%";
            menu.TR = TR;
            TR.menu = menu;
            var TD = document.createElement('TD');
            TD.align = "left";
            var text = document.createTextNode(menu.label);
            TD.style.fontFamily = "Arial";
	        TD.style.fontSize = "9pt";
            TD.style.color = "Black";
            TD.style.paddingLeft = ""+(20*menu.level)+"px";
            TD.appendChild(text);
            if (menu.img!="")
            {
                var img = document.createElement('img');
                img.src = menu.img;
                TD.appendChild(img);
            }
            TR.appendChild(TD);
            tbody.appendChild(TR);
        }
    }
    table.appendChild(thead);
    table.appendChild(tbody);
    div.appendChild(table);
}
