var activeDiv = null;
var currDiv = null;
var currImg = null;
var timerID = 0;

var imgTabOn = new Array();
var imgTabOff = new Array();

function addImage(key, pathOn, pathOff)
{
	imgTabOn[key] = pathOn;
	imgTabOff[key] = pathOff;
}

function setCurrent(name)
{
	activeDiv = name;
}

function openMenu( img, idDiv, right )
{
  if( currDiv != null && timerID != 0 )
  {
    clearTimer();
    if( idDiv != currDiv ) closeMenu();
    else return;
  }

  img.src=imgTabOn[idDiv];
  var divElem = document.getElementById( idDiv );
  var cacheMenu = document.getElementById( "cacheMenu" );
  
  var tc = calcpos( img );
  
  if( right )
  {
    divElem.style.left = (tc[0] + img.offsetWidth - divElem.offsetWidth) + "px";
    cacheMenu.style.left = (tc[0] + img.offsetWidth - divElem.offsetWidth) + "px";
  }
  else
  {
    divElem.style.left = tc[0]  + "px";
    cacheMenu.style.left = tc[0] + "px";
  }
  
  cacheMenu.style.visibility = 'visible';
  cacheMenu.style.height = "90px";
   
  divElem.style.top = tc[1] + 37 + "px";
  divElem.style.visibility = 'visible';

  currDiv = idDiv;
  currImg = img;
}

function closeMenu()
{
	if(currDiv != activeDiv) currImg.src=imgTabOff[currDiv];
  
  var elem = document.getElementById( currDiv );
  var cacheMenu = document.getElementById( "cacheMenu" );
  elem.style.visibility = 'hidden';
  cacheMenu.style.visibility = 'hidden';
  
  currDiv = null;
}
  
function startTimer()
{
  timerID = setTimeout("closeMenu()", 100);
}
  
function clearTimer()
{
  clearTimeout( timerID );
  timerID = 0;
}
  
function calcpos( obj )
{
  x=0;
  y=0;
  
  w = obj.offsetWidth;
  h = obj.offsetHeight;

  var aTag = obj;
  do
  {
    x += aTag.offsetLeft;
    y += aTag.offsetTop;
    aTag = aTag.offsetParent;
  } while(aTag.tagName!="BODY");

  return new Array( x, y );
}

