/**
 * Geometry.js: Protable Funktionen fuer die Geometrie von Fenstern und Dokumenten
 * Stand: 10.10.2008
 * Version: 1.0 
 *
 * Dieses Modul definiert Fumktionen fuer die Abfrage der Geometrie von Fenster und Dokument.
 *
 * getWindowX/Y: liefern die Position des Fensters auf dem Bildschirm zurück.
 * getViewportWidth/Height: liefern die Grösse des Inhaltsbereichs des Browsers
 * getDocumentWidth/Heigth: liefern die Grösse des Dokuments
 * getHorizontalScroll: liefert die Position des horizonztalen Scrollbars.
 * getVerticalScroll: liefert die Position des vertikalen Scrollbars.
 *
 * ACHTUNG: Dieses Modul muss im <body> eines Dokuments eingeschlossen werden,
 * nicht im <head> des Dokuments. 
 **/
var Geometry = {};
      
if(window.screenLeft) {
  Geometry.getWindowX = function() { return window.screenLeft; };
  Geometry.getWindowY = function() { return window.screenTop; };
} else if (window.screenX) {
  Geometry.getWindowX = function() { return window.screenX; };
  Geometry.getWindowY = function() { return window.screenY; };
}

if(window.innerWidth) {
  Geometry.getViewportWidth = function() { return window.innerWidth; };
  Geometry.getViewportHeight = function() { return window.innerHeight; };
  Geometry.getHorizontalScroll = function() { return window.pageXOffset; };
  Geometry.getVerticalScroll = function() { return window.pageYOffset; };
} else if(document.documentElement && document.documentElement.clientWidth) {
  Geometry.getViewportWidth = function() { return document.documentElement.clientWidth; };
  Geometry.getViewportHeight = function() { return document.documentElement.clientHeight; };
  Geometry.getHorizontalScroll = function() { return document.documentElement.scrollLeft; };
  Geometry.getVerticalScroll = function() { return document.documentElement.scrollTop; };
} else if(document.body.clientWidth) {
  Geometry.getViewportWidth = function() { return document.body.clientWidth; };
  Geometry.getViewportHeight = function() { return document.body.clientHeight; };
  Geometry.getHorizontalScroll = function() { return document.body.scrollLeft; };
  Geometry.getVerticalScroll = function() { return document.body.scrollTop; };
}  

if(document.documentElement && document.documentElement.scrollWidth) {
  Geometry.getDocumentWidth = function() { return document.documentElement.scrollWidth; };
  Geometry.getDocumentHeight = function() { return document.documentElement.scrollHeigth; };
} else if(document.body.scrollWidth) {
  Geometry.getDocumentWidth = function() { return document.body.scrollWidth; };
  Geometry.getDocumentHeight = function() { return document.body.scrollHeigth; };
}
