var cur_lyr;	// holds id of currently visible layer
var cur_ancr = 'ddbtn';   // holds id of currently clicked anchor
function toggleLayer(id, anchor, url) {

  if (id != 'ddtblbody')
  {
    orig_x = 583;
    orig_y = 225;
    var lyr = getElemRefs('ddtblbody');
    var newx = findPosX(lyr);
    var newy = findPosY(lyr);
    if (newx > 0) orig_x = newx;
    if (newy > 0) orig_y = newy;
    shiftLayerTo( id, orig_x, orig_y );
  }

  if (cur_lyr) hideLayer(cur_lyr);
  showLayer(id);

  var nanc = getElemRefs(anchor);
  var oanc = getElemRefs(cur_ancr);
  oanc.style.backgroundPosition = "left bottom";
  nanc.style.backgroundPosition = "left top";

  cur_lyr = id;
  cur_ancr = anchor;

  lnk = getElemRefs('tblfootlinktxt');
  lnk.href = url;
}

function showLayer(id) {
  var lyr = getElemRefs(id);
  if (lyr && lyr.css) lyr.css.display = "block";
  if (lyr && lyr.css) lyr.css.visibility = "visible";
}

function hideLayer(id) {
  var lyr = getElemRefs(id);
  if (lyr && lyr.css) lyr.css.display = "";
  if (lyr && lyr.css) lyr.css.visibility = "hidden";
}

function shiftLayerTo(id,x,y) {
  var px = document.layers? 0: "px";
  var lyr = getElemRefs(id);
  if (lyr && lyr.css) {
    lyr.css.top = y + px;
    lyr.css.left = x + px;
  }
}

function findPosX(obj)
{
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;
	return curleft;
}

function findPosY(obj)
{
	var curtop = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
	return curtop;
}

function getElemRefs(id) {
	var el = (document.getElementById)? document.getElementById(id): (document.all)? document.all[id]: (document.layers)? document.layers[id]: null;
	if (el) el.css = (el.style)? el.style: el;
	return el;
}

