

function getPageSize(){

	var xScroll, yScroll;
	if (window.innerHeight && window.scrollMaxY) {
		xScroll = document.body.scrollWidth;
		yScroll = window.innerHeight + window.scrollMaxY;
	} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
		xScroll = document.body.scrollWidth;
		yScroll = document.body.scrollHeight;
	} else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
		xScroll = document.body.offsetWidth;
		yScroll = document.body.offsetHeight;
	}

	var windowWidth, windowHeight;
	if (self.innerHeight) {	// all except Explorer
		windowWidth = self.innerWidth;
		windowHeight = self.innerHeight;
	} else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
		windowWidth = document.documentElement.clientWidth;
		windowHeight = document.documentElement.clientHeight;
	} else if (document.body) { // other Explorers
		windowWidth = document.body.clientWidth;
		windowHeight = document.body.clientHeight;
	}

	var xScrolled, yScrolled;
	if (self.pageYOffset) {
		xScrolled = self.pageXOffset;
		yScrolled = self.pageYOffset;
	} else if (document.documentElement && document.documentElement.scrollTop) {
		xScrolled = document.documentElement.scrollLeft;
		yScrolled = document.documentElement.scrollTop;
	} else if (document.body) {
		xScrolled = document.body.scrollLeft;
		yScrolled = document.body.scrollTop;
	}

	// for small pages with total height less then height of the viewport
	if(yScroll < windowHeight){
		pageHeight = windowHeight;
	} else {
		pageHeight = yScroll;
	}

	// for small pages with total width less then width of the viewport
	if(xScroll < windowWidth){
		pageWidth = windowWidth;
	} else {
		pageWidth = xScroll;
	}

	arrayPageSize = new Array(pageWidth, pageHeight, windowWidth, windowHeight, xScrolled, yScrolled);
	return arrayPageSize;
}

var aktZIndex = 100;
function displayLayer(layer) {
	tmparray = getPageSize();
	pageWidth = tmparray[0];
	pageHeight = tmparray[1];
	windowWidth = tmparray[2];
	windowHeight = tmparray[3];
	xScrolled = tmparray[4];
	yScrolled = tmparray[5];

	frame = layer+'Frame';
	layer = layer+'Div';

	// grauer hintergrund bei popups
	//document.getElementById('overlay').style.display = 'block';
	//document.getElementById('overlay').style.visibility = 'visible';
	//document.getElementById('overlay').style.height = pageHeight +"px";

	// Layer-Groesse
	divHeight = document.getElementById(layer).style.height;
	divWidth = document.getElementById(layer).style.width;

	h = divHeight.split("px");
	b = divWidth.split("px");
	divTop = ((windowHeight - h[0]) / 2);
	divLeft = ((windowWidth - b[0]) / 2);

	if (divTop < 0)
		divTop = 0;

	if (divLeft < 0)
		divLeft = 0;

	document.getElementById(layer).style.left = divLeft+'px';
	document.getElementById(layer).style.top = divTop+'px';
	document.getElementById(frame).style.left = divLeft+'px';
	document.getElementById(frame).style.top = divTop+'px';

	// Browser-Weiche fuer Position
	if (navigator.appName.indexOf("Netscape") != -1) {
		document.getElementById(layer).style.position = 'fixed';
		document.getElementById(frame).style.position = 'fixed';
	} else {
		divLeft += xScrolled;
		divTop += yScrolled;
		document.getElementById(layer).style.left = divLeft+'px';
		document.getElementById(layer).style.top = divTop+'px';
		document.getElementById(layer).style.position = 'absolute';
		document.getElementById(frame).style.left = divLeft+'px';
		document.getElementById(frame).style.top = divTop+'px';
		document.getElementById(frame).style.position = 'absolute';
	}

	// Layer sichtbar machen
	document.getElementById(layer).style.display = 'block';
	document.getElementById(layer).style.visibility = 'visible';
	document.getElementById(layer).style.zIndex = aktZIndex++;
	document.getElementById(frame).style.display = 'block';
	document.getElementById(frame).style.visibility = 'visible';
	document.getElementById(frame).style.zIndex = 1;
}

function hideLayer(layer) {
	document.getElementById(layer+'Div').style.display = 'none';
	document.getElementById(layer+'Div').style.visibility = 'hidden';
	document.getElementById(layer+'Frame').style.display = 'none';
	document.getElementById(layer+'Frame').style.visibility = 'hidden';
	//document.getElementById('overlay').style.display = 'none';
	//document.getElementById('overlay').style.visibility = 'hidden';
}


// Drag and Drop
var dragobjekt1 = null;
var dragobjekt2 = null;
var dragx = 0;
var dragy = 0;
var posx = 0;
var posy = 0;

function draginit() {
  document.onmousemove = drag;
  document.onmouseup = dragstop;
}

function dragstart(element) {
  dragobjekt1 = document.getElementById(element+'Div');
  dragobjekt2 = document.getElementById(element+'Frame');

  dragx = posx - dragobjekt1.offsetLeft;
  dragy = posy - dragobjekt1.offsetTop;
  dragx = posx - dragobjekt2.offsetLeft;
  dragy = posy - dragobjekt2.offsetTop;
}

function dragstop() {
  dragobjekt1=null;
  dragobjekt2=null;
}

function drag(ereignis) {
  posx = document.all ? window.event.clientX : ereignis.pageX;
  posy = document.all ? window.event.clientY : ereignis.pageY;
  if(dragobjekt1 != null) {
    dragobjekt1.style.left = (posx - dragx) + "px";
    dragobjekt1.style.top = (posy - dragy) + "px";
  }
  if(dragobjekt2 != null) {
    dragobjekt2.style.left = (posx - dragx) + "px";
    dragobjekt2.style.top = (posy - dragy) + "px";
  }
}


