/* Position.windowsBounds
   Position.makeAbsolute
====================================================*/
Object.extend(Position, {
	windowBounds: function() {
		var x = window.innerWidth 
			|| document.documentElement.clientWidth
			|| document.body.clientWidth
			|| 0;
		var y = window.innerHeight
			|| document.documentElement.clientHeight
			|| document.body.clientHeight
			|| 0;
		return [x, y]; 
	},
	makeAbsolute: function(element) {
		element_parent = $(element).parentNode;
		element = $(element);
		element.style.position = "absolute";
		element_parent.removeChild(element);
		window.document.body.appendChild(element);
	}
});
/* Element.fullscreen
   Element.center
====================================================*/
Object.extend(Element, {
	fullscreen: function(element) {
		element = $(element);
		var bounds = Position.windowBounds();
		element.style.position = "absolute";
		element.style.left = element.style.top = 0;
		element.style.width = bounds[0] + "px";
		element.style.height = bounds[1] + "px";
	},
	center: function(element) {
		element = $(element);
		var extent = Element.getDimensions(element);
		var bounds = Position.windowBounds();
		var x = (bounds[0] - extent.width) / 2;
		var y = (bounds[1] - extent.height) / 2;
		x = x < 0 ? 0 : x; y = y < 0 ? 0 : y;
		element.style.position = "absolute";
		element.style.left = x + "px";
		element.style.top = y + "px";
	}
});
/* addLoadEvent
====================================================*/
function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}
/* addResizeEvent
====================================================*/
function addResizeEvent(func) {
  var oldonresize = window.onresize;
  if (typeof window.onresize != 'function') {
    window.onresize = func;
  } else {
    window.onresize = function() {
      if (oldonresize) {
        oldonresize();
      }
      func();
    }
  }
}
/* hideScrollbars
====================================================*/
function hideScrollbars(obj) {
	obj=obj || window.document.body;
	obj.style.overflow='hidden';
}
/* showScrollbars
====================================================*/
function showScrollbars(obj) {
	obj=obj || window.document.body;
	obj.style.overflow='auto';
}