// GET ELEMENT ID MULTI BROWSER
function getElement(id) {
	return (document.getElementById ? document.getElementById(id) : (document.all ? document.all(id) : null)); 
}

// GET X COORDINATE
function getRealLeft(id) { 
	var el = getElement(id);
	if (el) { 
		xPos = el.offsetLeft;
		tempEl = el.offsetParent;
		while (tempEl != null) {
			xPos += tempEl.offsetLeft;
			tempEl = tempEl.offsetParent;
		} 
		return xPos;
	} 
} 

// GET Y COORDINATE
function getRealTop(id) {
	var el = getElement(id);
	if (el) { 
		yPos = el.offsetTop;
		tempEl = el.offsetParent;
		while (tempEl != null) {
			yPos += tempEl.offsetTop;
			tempEl = tempEl.offsetParent;
		}
		return yPos;
	}
}

// GET WIDTH
function getRealWidth(id) {
	var el = getElement(id);
	if (el) { 
		yDim = el.offsetWidth;
		tempEl = el.offsetParent;
		while (yDim == 0 && tempEl != null) {
			yDim += tempEl.offsetHeight;
			tempEl = tempEl.offsetParent;
		}
		return yDim;
	}
}

// GET HEIGHT
function getRealHeight(id) { 
	var el = getElement(id);
	if (el) { 
		xDim = el.offsetHeight;
		tempEl = el.offsetParent;
		while (xDim == 0 && tempEl != null) {
			xDim += tempEl.offsetHeight;
			tempEl = tempEl.offsetParent;
		}
		return xDim;
	} 
} 


// MOVE OBJECT TO COORDINATE
function moveObjectTo(objectID,x,y) {
	var el = getElement(objectID);
	el.style.left = x + "px";
	el.style.top = y + "px";
}

//Add a function to be called onload (chained, first come first served)
function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}

//Add a function to be called onload (chained, first come first served)
function addUnLoadEvent(func) {
  var oldonunload = window.onunload;
  if (typeof window.onunload != 'function') {
    window.onunload = func;
  } else {
    window.onunload = function() {
      if (oldonunload) {
        oldonunload();
      }
      func();
    }
  }
}
