// ddmenu.js - code for drop down menu nav bar on top
//
// by dpark

var DELAYTIME = 1000;  // time for drop downs to disappear in milliseconds

var curpagecol = 0;
var curaddcol = 0;

//////////////// basic mechanics of dropdown menus //////////
function showddtop(colNum)
{
  var menu=String("ddtop-" + colNum);
  var menustyle = getstylebyid("ddtop-" + colNum);
  var tcelstyle = getstylebyid("tcel-" + colNum);
  var bcelstyle = getstylebyid("bcel-" + colNum);

  menustyle.visibility = 'visible';
  tcelstyle.backgroundColor = '#909790';
  bcelstyle.backgroundColor = '#FF9933';
}
  /*  misc compat code that might not be necessary
  if(ns4browser())
  {
    document.layers[menu].pageX = document.caltext_placeholder.pageX;
    document.layers[menu].pageY = document.caltext_placeholder.pageY;
  }
  else if(ie5browser())
  {
    if (document.all[menu].myFlag == null)
    {
      document.all[menu].style.posLeft = document.all[menu].offsetLeft;
      document.all[menu].style.posTop =  document.all[menu].offsetTop;
      document.all[menu].myFlag = true;
    }
  }
  */
function hideddtop(colNum)
{
  var menustyle = getstylebyid("ddtop-" + colNum);
  var tcelstyle = getstylebyid("tcel-" + colNum);
  var bcelstyle = getstylebyid("bcel-" + colNum);

  menustyle.visibility = 'hidden';
  tcelstyle.backgroundColor = '#808780';
  if(colNum != curpagecol)	bcelstyle.backgroundColor = '#FFFFFF';
  else				bcelstyle.backgroundColor = '#FF9933';
}
function ddt_wipe()
{
  for(i=1 ; i<=curaddcol ; i++) hideddtop(i);
}


//////////////////////// event handling /////////////////////
var timer_id = -1;
function cancel_timeout()
{
  if(timer_id != -1)
  {
    window.clearTimeout(timer_id);
    timer_id = -1;
  }
}
function set_timeout()
{
  timer_id = window.setTimeout("ddt_wipe()", DELAYTIME);
}
function ddt_tb_onOver(colnum)
{
  cancel_timeout();
  ddt_wipe();
  showddtop(colnum);
}
function ddt_tb_onOut(colnum)
{
  cancel_timeout();
  set_timeout();
}
function ddt_dd_onOver(colnum)
{
  cancel_timeout();
}
function ddt_dd_onOut(colnum)
{
  cancel_timeout();
  set_timeout();
}


//////////////////////////// menu construction tools //////////////////

var urlprefix = "";
function ddt_prefixurls(str)
{
  urlprefix = str;
}
function ddt_start(topname)
{
  var colnum = ++curaddcol;

  document.write('<td class="linktop" id="tcel-'+colnum+'" onMouseOver="ddt_tb_onOver(\''+colnum+'\');" onMouseOut="ddt_tb_onOut('+colnum+');">' + topname + '<br>');
  document.write('<table height="3" width="70" border="0" cellspacing="0" cellpadding="0"><tr><td bgcolor="#FFFFFF" id="bcel-'+colnum+'"></td></tr></table>');
  document.write('<div style="left:' + ((colnum-1)*70) + 'px;" class="ddmenutop" id="ddtop-'+colnum+'">');
  document.write('<table onMouseOver="ddt_dd_onOver('+colnum+');" onMouseOut="ddt_dd_onOut('+colnum+');" border="0" cellspacing="0" cellpadding="2" width="70">');
}

function ddt_addline(rowname, rowurl)
{
  var docurl = document.location.toString();
  document.write('<tr><td class="linkdrop"');
  if(docurl.indexOf(rowurl) != -1)
  {
    curpagecol = curaddcol;
    document.write(' style="text-decoration:underline;">' + rowname);
  }
  else if(rowurl.indexOf("http") != -1)
    document.write('><a class="ddlink" href="' + rowurl + '">' + rowname + '</a>');
  else
    document.write('><a class="ddlink" href="' + urlprefix + rowurl + '">' + rowname + '</a>');
  document.write('</td></tr>');
}

function ddt_stop()
{
  document.write('</td></table></div>');
}
