var _menuLock;

function showFixedMenu(id)
{
  changeOpac(0,id);
  _menuLock = true;
  l = document.getElementById(id);
  l.style.visibility = "visible";
  l.style.display = "block";
  fadeMenu(id);
//  l.style.display = "";
}

function openMenuStatic(id)
{
  changeOpac(0,id);
  _menuLock = true;
  l = document.getElementById(id);
  l.style.display = "block";
  fadeMenu(id);
}

function openMenu(event, id, noX, noY) {

  var el, x, y;
  
  el = document.getElementById(id);

  w = el.offsetWidth;
  h = el.offsetHeight;
  
  bW = document.body.clientWidth;
  bH = document.body.clientHeight;

  if (window.event) {
    sizeY = document.documentElement.clientHeight;

    mouseY = window.event.clientY;
    corrY = document.documentElement.scrollTop + document.body.scrollTop;
    x = window.event.clientX + document.documentElement.scrollLeft
                             + document.body.scrollLeft;
    y = window.event.clientY + corrY; 
  }
  else 
  {
    sizeY = window.innerHeight;
    mouseY = event.clientY;
    corrY = window.scrollY;
    x = event.clientX + window.scrollX;
    y = event.clientY + window.scrollY;
  }

  if (w + x > bW) x -= (w + x) - bW;

  if (h + y > bH + corrY ) y -= (h + y) - (bH + corrY);

// mag nooit onder het scherm uitlopen
  corrY2 = (sizeY - (mouseY + el.clientHeight));
  if (corrY2 < 0) y += corrY2;

  if (y<0) y = 10;
  if (x<0) x = 10;
    
  //x -= 20; y -= 20;
  
  if (noX) x = 0;
  if (noY) y = 0;
  
  el.style.left = x + "px";
  el.style.top  = y + "px";
  //el.style.display = "";
  el.style.visibility = "visible";
  el.style.display = "block";
}

function closeMenu(event) {
  var current, related;

  if (window.event) {          // IE
    current = this;
    related = window.event.toElement;
  }
  else {
    current = event.currentTarget;
    related = event.relatedTarget;
  }

  if (current != related && !contains(current, related))
  {
    current.style.visibility = "hidden";
    current.style.display = "none";
  }
}

function contains(a, b) 
{
  // als a node b bevat -> true
    while (b.parentNode)
      if ((b = b.parentNode) == a)
        return true;
    return false;
}


function killMenu(id)
{
  l = document.getElementById(id);
  l.style.visibility = "hidden";
  l.style.display = "none";
  propertiesOpen = false;
  _menuLock = false;
}

var dateToId;

function insertDate(event, id)
{
  dateToId = id;
  openMenu(event, 'date');
}

function swap( t, e )
{
  r = $(e);
  ( t.value == 'nee' ) ? r.hide():r.show();
}
