// Script zur Layersteuerung
// Layer zeigen mit Verzoegerung durch:        pruefen(layerid,xposition,yposition,breite,hoehe,verzoegerung);
// Layer verstecken mit Verzoegerung durch:    layeraus(layerid,verzoegerung);
// Layer zeigen ohne Verzoegerung durch:       zeigen(layerid,xposition,yposition,breite,hoehe);
// Layer verstecken ohne Verzoegerung durch:   verstecken(layerid);
// Schrift- und Hintergrundfarbe setzen durch: farbe(layerid,schriftfarbe,hintergrundfarbe);
// xpos und ypos enthaelt die Mausposition
// Funktion pruefen schliesst einen anderen Layer der mit dieser Funktion geoeffnet wurde vorher

var ns4, ie4, ns6, posx, posy, xpos, ypos, px, py, breite, hoehe;
var alter = "";
var zeit, an, aus, aktuellx, aktuelly, kleben, ve;

ie4 = document.all;
ns6 = document.getElementById && !document.all;

function init() {
	document.ondblclick = startbewegen;
	document.onmousemove = koordinaten;
}
function pruefen(idname,xpo,ypo,breite,hoehe,verzoegerung)
{
	ve = verzoegerung;
	px = xpo;
	py = ypo;
	xb = breite;
	yb = hoehe;
	an = idname;
	clearTimeout(zeit);
	if (alter && alter != an)
        {
        	verstecken(alter);
        	zeit = setTimeout("zeigen(an,px,py,xb,yb)",ve);
         } else
        	zeit = setTimeout("zeigen(an,px,py,xb,yb)",ve);
	alter = idname;        
}
function layeraus(idname,verzoegerung)
{
	ve = verzoegerung;
	aus = idname;
	zeit = setTimeout("verstecken(aus)",ve);
	alter = idname;
}
function zeigen(idname,xpo,ypo,breite,hoehe) {
	if (ns6){ 
		if(document.getElementById(idname)) {
			document.getElementById(idname).style.left = xpo;
			document.getElementById(idname).style.top = ypo;
			if (breite > 0) document.getElementById(idname).style.width = breite;
			if (hoehe > 0) document.getElementById(idname).style.height = hoehe;
			document.getElementById(idname).style.visibility = "visible";
		}
	}
	if (ie4){
		if(document.all[idname]) {
			document.all[idname].style.left = xpo;
			document.all[idname].style.top = ypo;
			if (breite > 0) document.all[idname].style.width = breite;
			if (hoehe > 0) document.all[idname].style.height = hoehe;
			document.all[idname].style.visibility = "visible"; 
		}
	}
}
function verstecken(idname) {
	if (ie4) document.all[idname].style.visibility = "hidden"; 
	if (ns6) document.getElementById(idname).style.visibility = "hidden";
	alter = "";
}
function farbe(idname,farb,bgcol)
{
	if(ie4)
		if(document.all[idname]) {
			document.all[idname].style.color = farb;
			document.all[idname].style.background = bgcol;
		}		            
	if(ns6)
		if(document.getElementById(idname)) {
			document.getElementById(idname).style.color = farb;
			document.getElementById(idname).style.background = bgcol;
		}
}
function koordinaten(e) {
	xpos = (document.getElementById && !document.all) ? e.pageX : document.body.scrollLeft + event.clientX;
	ypos = (document.getElementById && !document.all) ? e.pageY : document.body.scrollTop + event.clientY;
}
function startbewegen(e){
	idname = ie4? event.srcElement.id : e.target.id;
	if (idname != "") {
		posx = ie4? event.clientX : e.clientX;
		posy = ie4? event.clientY : e.clientY;
		aktuellx = ns6? parseInt(document.getElementById(idname).style.left) : parseInt(document.all[idname].style.left);
		aktuelly = ns6? parseInt(document.getElementById(idname).style.top) : parseInt(document.all[idname].style.top);
		kleben = true;
		document.onmousemove = bewegen;
		document.ondblclick = new Function("kleben=false");
	}
}
function bewegen(e){
	koordinaten(e);
	if (kleben) {
		if (ie4){
			document.all[idname].style.left = aktuellx + event.clientX - posx;
			document.all[idname].style.top = aktuelly + event.clientY - posy;
		}
		if (ns6){ 
			document.getElementById(idname).style.left = Number(aktuellx + e.clientX - posx);
			document.getElementById(idname).style.top = Number(aktuelly + e.clientY - posy);
		}
	}
	else init();
	return true;
}
