//.. Global variables .........................................................
var parents = new Array();

var level = new Array();
level['root'] = 0;

var vis = new Array();

var visLevel = new Array();
visLevel[1] = 0;
visLevel[2] = 0;

var chld = new Array();

var curr_id;

var curColor="#C6C5C3";
var defColor="";

//.. Adding menu node .........................................................
function addNode (id, title, parent, url) {
    parents[id] = parent;
    level[id] = level[parent]+1;
    chld[parent] = 1;
    vis[id] = 0;


    var sTitle = (title.length > 38) ? title.substr(0, 35)+'...' : title;

    if (level[id] < 100) {
        var txt = "";
        txt+=
          "<table id=\""+id+"Tbl\" width=\"220\" border=0 onmouseover=\"onMenu('"+id+"')\" class=\"menu_left\" onmouseout=\"outMenu('"+id+"')\"><tr>\n"+
          "<td  style='width:"+(level[id]*20+5)+"px;text-align:right' onclick=\"location.href='"+url+"'\">"+((level[id]>1)?"<img src=\"images/b3.gif\" border=0 alt=\">>\">":"<img src=\"images/e.gif\" width=25 height=1 border=0 alt=\"\">")+"</td>";

        if (url) {
          if (level[id]<=1)
            txt+= "<td><a href=\""+url+"\" title=\""+sTitle+"\">"+sTitle+"</a></td>";
          else
            txt+= "<td class=\"menu_left_2\"><a href=\""+url+"\" style=\"color: #62615F\" title=\""+sTitle+"\">"+sTitle+"</a></td>";
        }
        else
          txt+=sTitle;
        txt+=
          "<td align=\"center\" width=\"15\" onclick=\"collapseFold('"+id+"');return false;\" style=\"cursor:hand\"><img id=\""+id+"Arw\" src=\"images/1x1.gif\" height=\"7\" /></td>"+
          "</tr></table>"+
          "<div id=\""+id+"MD\" style=\"display:none\"></div>";

        document.getElementById(parent+'MD').innerHTML+=txt;
        if (parent != 'root') {
         if (document.images[parent+'Arw'])
          document.images[parent+'Arw'].src = "images/fold.gif";
        } else
          document.getElementById('rootMD').innerHTML+= 
            "<table width=\"100%\" height=\"1\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\" class=menu_left><TR><TD><img src=\"images/e.gif\" width=18 height=1 border=0 ><img src=\"images/lm_div.gif\" width=198 height=3 border=0 vspace=3 /></TD></TR></table>";
    } else {
        var txt = "";
        if (document.images[parent+'Arw'])
          document.images[parent+'Arw'].src = "images/ar.gif";
        if (!document.getElementById(parent+'Popup')) {
            document.getElementById('Popups').innerHTML+= "<div id=\""+parent+"Popup\" style=\"z-index:"+level[parent]+";position:absolute;visibility:hidden;\">"+
              "<table cellpadding=\"1\" cellspacing=\"1\" bgcolor=\"#888888\" border=\"0\">"+
              "<tr><td bgcolor=\"#EEEEEE\">"+
              "<div id=\""+parent+"C\"></div>"+
              "</td></tr>"+
              "</table>"+
              "</div>";
        }
        txt+=
          "<table id=\""+id+"Tbl\" onmouseover=\"onMenu('"+id+"')\" onmouseout=\"outMenu('"+id+"')\" class=\"menu_left\"><tr>"+
          "<td style=\"padding-left:5px\" onclick=\"location.href='"+url+"'\">";

        if (url)
          txt+="<a class=\"childLink\" href=\""+url+"\"><nobr>"+title+"</nobr></a>";
        else
          txt+=title;
        txt+=
          "</td>"+
          "<td align=\"right\"><img id=\""+id+"Arw\" src=\"images/1x1.gif\" height=\"7\" /></td>"+
          "</tr></table>";
        document.getElementById(parent+'C').innerHTML+=txt;
    }
}

//.. Event handlers ...........................................................
function onMenu (id) {
    var menuItem = document.getElementById(id+'Tbl');
//    menuItem.style.background=curColor;
//    menuItem.style.borderColor='#FFFFFF';
    if (level[id] == 4) visLevel[1] = 1;
    if (level[id] == 5) { visLevel[1] = 1; visLevel[2] = 1;}
    if (document.getElementById(id+'C'))
    {
      if (level[id] == 3)
      {
           document.getElementById('mnu_x1').style.visibility = 'visible';
           document.getElementById('mnu_x1').innerHTML = document.getElementById(id+'C').innerHTML;
           document.getElementById('mnu_x1').style.top = getYpos(menuItem);
           document.getElementById('mnu_x1').style.left = getXpos(menuItem) + menuItem.offsetWidth;
           var cur_id = id;
           visLevel[1] = 1;
           cur_id = parents[cur_id];
      }
      if (level[id] == 4)
      {
           document.getElementById('mnu_x2').style.visibility = 'visible';
           document.getElementById('mnu_x2').innerHTML = document.getElementById(id+'C').innerHTML;
           document.getElementById('mnu_x2').style.top = getYpos(menuItem);
           document.getElementById('mnu_x2').style.left = document.getElementById('mnu_x1').offsetLeft + document.getElementById('mnu_x1').offsetWidth;
           var cur_id = id;
           visLevel[1] = 1;
           visLevel[2] = 1;
           cur_id = parents[cur_id];
      }

    }
}

function outMenu(id) {
    if (id != curr_id)
    {
      var menuItem = document.getElementById(id+'Tbl');
//         menuItem.style.background=defColor;
 //        menuItem.style.borderColor=defColor;
    }
         var cur_id = id;
    visLevel[1] = 0;
    visLevel[2] = 0;
    setTimeout("hidePopup()", 1000);
}

//..Hiding popup block ........................................................
function hidePopup (id) {
   if (visLevel[1] == 0) document.getElementById('mnu_x1').style.visibility = 'hidden';
   if (visLevel[2] == 0) document.getElementById('mnu_x2').style.visibility = 'hidden';
}

//.. Getting lement absolute psotion ..........................................
function getXpos(elem) {
    var pos = elem.offsetLeft;
    while (elem.offsetParent != null) {
        elem = elem.offsetParent;
        pos+= elem.offsetLeft;
    }
    return pos;
}
function getYpos(elem) {
    var pos = elem.offsetTop;
    while (elem.offsetParent != null) {
        elem = elem.offsetParent;
        pos+= elem.offsetTop;
    }
    return pos;
}

//.. Expanding/collapsing menu folders ........................................
function collapseFold (id) {
    if (!chld[id]) return 0;
    if (document.getElementById(id+'MD').style.display == 'none') {
        document.images[id+'Arw'].src = 'images/fold2.gif';
        document.getElementById(id+'MD').style.display = 'inline';
    } else {
        document.images[id+'Arw'].src = 'images/fold.gif';
        document.getElementById(id+'MD').style.display = 'none';
    }
}

function highLightSelected(id)
{
    var menuItem = document.getElementById(id+'Tbl');
  if(menuItem != null)
  {
    if(menuItem.style != null)
    {
      menuItem.style.background='#D0D0D0';
      menuItem.style.borderColor = '#888888';
    }
  }
}
