/**
 * 
 * 
 * 
 * 
 */
function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}
function addOnunloadEvent(func) {
  var oldonload = window.onunload;
  if (typeof window.onunload != 'function') {
    window.onunload = func;
  } else {
    window.onunload = function() {
      if (oldonunload) {
        oldonunload();
      }
      func();
    }
  }
}

/**
 * A vd (var_dump) type wrapper for javascript
 * @param mixed object
 */
function vd(object) 
{
    alert(object);
}

/**
 * This will not be supported in ver 2
 * 
 * @deprecated - use document.getElementById();
 */
function getElementById(id) 
{
    try {
        if (document.getElementById(id)) {
            return document.getElementById(id);
        }
    } catch (e) {}
}

/**
 * Add a function to the onload event
 * If an onload function as already attached it will create a 
 * new function to load the old one too
 * 
 */
function addLoadEvent(func)
{
    var oldonload = window.onload;
    if (typeof window.onload != 'function') {
        window.onload = func;
    } else {
        window.onload = function() { oldonload(); func(); }
    }
}

/**
 * Return true if node a contains node b.
 * 
 * @param DomElement a
 * @param DomElement b
 */
function containsNode(a, b) 
{
  while (b.parentNode)
    if ((b = b.parentNode) == a)
      return true;
  return false;
}


function getPosition(layer)
{
    var positionX = 0;
    var positionY = 0;
    
    while (layer != null)
    {
        positionX += layer.offsetLeft;
        positionY += layer.offsetTop;
        theElayerlement = layer.offsetParent;
    }
    
    return [positionX, positionY];
}



