if (document.all)    {n=0;ie=1;fShow="visible";fHide="hidden";}
if (document.layers) {n=1;ie=0;fShow="show";   fHide="hide";}

////////////////////////////////////////////////////////////////////////////
// Function Menu()                                                        //
//                                                                                  //
////////////////////////////////////////////////////////////////////////////
function Menu()
{
        this.bgColor     = "#448CCB";
        //this.menuFont    = "bold xx-small Verdana";
        this.fontColor   = "white";

        this.addItem    = addItem;
        this.addSubItem = addSubItem;
        this.showMenu   = showMenu;
        this.mainPaneBorder = 0;
        this.subMenuPaneBorder = 0;

        this.subMenuPaneWidth = 150;

        lastMenu = null;

        HTMLstr = "";
        HTMLstr += "<!-- MENU PANE DECLARATION BEGINS -->\n";
        HTMLstr += "\n";
        HTMLstr += "<span id='MainTable'>\n";
        HTMLstr += "<table style='border-bottom: 1px solid #004A80' width=100% bgcolor='"+this.bgColor+"' border='"+this.mainPaneBorder+"' cellspacing='0' cellpadding='1' align=right>\n";
        HTMLstr += "<tr><td>\n";
        HTMLstr += "\n";
        HTMLstr += "<table bgcolor='"+this.bgColor+"' cellspacing='0' cellpadding='1'>\n";
        HTMLstr += "<tr>\n";
        HTMLstr += "<!-- MAIN MENU STARTS -->\n";
        HTMLstr += "<!-- MAIN_MENU -->\n";
        HTMLstr += "</tr>\n";
        HTMLstr += "</table>\n";
        HTMLstr += "\n";
        HTMLstr += "<!-- MAIN MENU ENDS -->\n";
        HTMLstr += "</td></tr>\n";
        HTMLstr += "</table>\n";
        HTMLstr += "\n";
        HTMLstr += "<!-- SUB MENU STARTS -->\n";
        HTMLstr += "<!-- SUB_MENU -->\n";
        HTMLstr += "<!-- SUB MENU ENDS -->\n";
        HTMLstr += "</span>\n";
        HTMLstr += "\n";
        HTMLstr += "<!-- MENU PANE DECALARATION ENDS -->\n";
}

function addItem(idItem, text, hint, location, altLocation)
{
        var Lookup = "<!-- ITEM "+idItem+" -->";
        if (HTMLstr.indexOf(Lookup) != -1)
        {
                alert(idParent + " already exist");
                return;
        }
        var MENUitem = "";
        MENUitem += "\n<!-- ITEM "+idItem+" -->\n";
        MENUitem += "<td style='padding-top:2'>\n";
        MENUitem += "<div id='"+idItem+"' style='position:relative;' class=title1>\n";
        MENUitem += "<a ";
        MENUitem += "style='text-decoration: none; cursor: hand;' ";
        if (hint != null)
                MENUitem += "title='"+hint+"' ";
        if (location != null)
        {
                MENUitem += "href='"+location+"' ";
                MENUitem += "target='_top' ";
                MENUitem += "onmouseover=\"hideAll()\" ";
        }
        else
        {
                if (altLocation != null)
                        MENUitem += "href='"+altLocation+"' ";
                else
                        MENUitem += "";
                MENUitem += "onmouseover=\"hideAll();displaySubMenu('"+idItem+"')\" ";
                //MENUitem += "onclick=\"return false;\" ";
        }
        MENUitem += " class='menu' ";
        MENUitem += ">";
        MENUitem += "&nbsp;";
        MENUitem += text;
        MENUitem += "";
        MENUitem += "</a>\n";
        MENUitem += "<span>|<span>\n";
        MENUitem += "</div>\n";
        MENUitem += "</td>\n";
        MENUitem += "<!-- END OF ITEM "+idItem+" -->\n\n";
        MENUitem += "<!-- MAIN_MENU -->\n";

        HTMLstr = HTMLstr.replace("<!-- MAIN_MENU -->\n", MENUitem);
}

function addSubItem(idParent, text, hint, location)
{
        var MENUitem = "";
        Lookup = "<!-- ITEM "+idParent+" -->";
        if (HTMLstr.indexOf(Lookup) == -1)
        {
                alert(idParent + " not found");
                return;
        }
        Lookup = "<!-- NEXT ITEM OF SUB MENU "+ idParent +" -->";
        if (HTMLstr.indexOf(Lookup) == -1)
        {
                MENUitem += "\n";
                MENUitem += "<div id='"+idParent+"submenu' style='z-index:3;position:absolute; visibility: hidden; width: "+this.subMenuPaneWidth+"; color: "+this.fontColor+";' >\n";
                MENUitem += "<table border='"+this.subMenuPaneBorder+"' bgcolor='"+this.bgColor+"' width="+this.subMenuPaneWidth+" cellspacing='0' cellpadding='1'>\n";
                MENUitem += "<tr><td height=1 valign=top bgcolor='#ffffff'>\n";
                MENUitem += "</td></tr>";MENUitem += "<!-- NEXT ITEM OF SUB MENU "+ idParent +" -->\n";
                MENUitem += "<tr><td height=8 valign=bottom bgcolor='#448CCB'>\n";
                //MENUitem += "<img src='/images/c.gif'>";
                MENUitem += "</td></tr>";
                MENUitem += "</table>\n";
                MENUitem += "</div>\n";
                MENUitem += "\n";
                MENUitem += "<!-- SUB_MENU -->\n";
                HTMLstr = HTMLstr.replace("<!-- SUB_MENU -->\n", MENUitem);
        }

        Lookup = "<!-- NEXT ITEM OF SUB MENU "+ idParent +" -->\n";
        MENUitem = "<tr><td style='padding-left:10px;padding-top:3px;padding-bottom:1px;'><a class=menu title='"+hint+"' href='"+location+"'>"+text+"</a><br></td></tr>\n";
        MENUitem += Lookup;
        HTMLstr = HTMLstr.replace(Lookup, MENUitem);
}

function showMenu()
{
        document.writeln(HTMLstr);
}

////////////////////////////////////////////////////////////////////////////
// Private declaration
function displaySubMenu(idMainMenu)
{
        var menu;
        var submenu;

        if (n)
        {
                menu    = eval("document."+idMainMenu);
                submenu = eval("document."+idMainMenu+"submenu");
                if (lastMenu != null && lastMenu != submenu) hideAll();
                submenu.left = menu.pageX;
                submenu.top  = menu.pageY + 20;
                submenu.visibility = fShow;
        } else if (ie) {
                menu = eval(idMainMenu);
                submenu = eval(idMainMenu+"submenu.style");
                if (lastMenu != null && lastMenu != submenu) hideAll();
                submenu.left = calculateSumOffset(menu, 'offsetLeft')-4;
                 submenu.top  = calculateSumOffset(menu, 'offsetTop') + 16;
//                submenu.top  = menu.style.top+23;
                submenu.visibility = fShow;
        }
        lastMenu = submenu;
}

function hideAll()
{
        if (lastMenu != null) {lastMenu.visibility = fHide;lastMenu.left = 0;}
        lastMenu = null;
}

function calculateSumOffset(idItem, offsetName)
{
        var totalOffset = 0;
        var item = eval('idItem');
        do
        {
                totalOffset += eval('item.'+offsetName);
                item = eval('item.offsetParent');
        } while (item != null);
        return totalOffset;
}


