// BROWSERABFRAGE
var agt      = navigator.userAgent.toLowerCase();
var isMajor  = parseInt(navigator.appVersion);
var isNav    = ((agt.indexOf('mozilla')     !=-1) && (agt.indexOf('spoofer') == -1) 
             && (agt.indexOf('compatible') == -1) && (agt.indexOf('opera')   == -1) 
             && (agt.indexOf('webtv')      == -1));
var isNav4   = (isNav && (isMajor == 4));
var isNav5up = (isNav && (isMajor >= 5));
var isIE     = (agt.indexOf("msie") != -1);

var pageScroll = false;
var pagey,pageid;


	
/* ********************** ALLGEMEINE FUNKTIONEN **** */

function getDiv(id,parentID) {		
	if(isIE) {
		return document.all[id];
	}
	else if(isNav5up) {
		return document.getElementById(id);
	}
	else if(isNav4) {
		if (parentID != null) {
			return document.layers[parentID].document.layers[id];
		}
		else {
			return document.layers[id];
		}
	}
}

function showLayer(x) {
	if(isIE || isNav5up) {
		getDivStyle(x).visibility="visible"; 
	}
	else if(isNav4) {
		getDivStyle(x).visibility="show";
	}
}

function setLayerPos(obj,x,y) {
	obj.left = x;
	obj.top = y;
}

/* ********************* SCROLLING **** */
// scroll nach oben
function pageUp(id, y) {
	if (id) pageid = id;
	if (y) pagey = y;
	var div = getDiv(pageid);
	if(isNav5up || isIE) {
		var clipV = div.style.clip.split("rect(")[1].split(")")[0].split("px");
		if((clipV[0]) > 0) {
			div.style.top  = parseInt(div.style.top) + pagey;
			div.style.clip = "rect(" + (parseInt(clipV[0])-pagey) + "px " + clipV[1] + "px " + (parseInt(clipV[2])-pagey) + "px " + clipV[3] + "px)";
		}
	}
	else if(isNav4) {
		if((div.clip.top) > 0) {
			div.top += pagey;
			div.clip.top -= pagey;
			div.clip.bottom -= pagey;
		}
	}
	pageScroll = setTimeout("pageUp()",50);
}

// scroll nach unten
function pageDown(id, y) {
	if (id) pageid = id;
	if (y) pagey = y;	
	var div   = getDiv(pageid);
	if(isNav5up || isIE) {//neu
		var clipV = div.style.clip.split("rect(")[1].split(")")[0].split("px");
		if(parseInt(clipV[2]) < parseInt(div.offsetHeight)) {
			div.style.top  = parseInt(div.style.top) - pagey;
			div.style.clip = "rect(" + (parseInt(clipV[0])+pagey) + "px " + clipV[1] + "px " + (parseInt(clipV[2])+pagey) + "px " + clipV[3] + "px)";
		}
	}
	else if(isNav4) {
		if((div.clip.bottom) < (div.document.height)) {		
			div.top -= pagey;
			div.clip.top += pagey;
			div.clip.bottom += pagey;
		}
	}
	pageScroll = setTimeout("pageDown()",50);	
}
// scroll nach links (neu)
function pageLeft(id, x) {
	if (id) pageid = id;
	if (x) pagex = x;	
	var div   = getDiv(pageid);
	if(isNav5up || isIE) {//neu
		var clipV = div.style.clip.split("rect(")[1].split(")")[0].split("px");
		if(parseInt(clipV[3]) > 0) {
			div.style.left  = parseInt(div.style.left) + pagex;
			div.style.clip = "rect(" + clipV[0] + "px " + (parseInt(clipV[1])-pagex) + "px " + clipV[2] + "px " + (parseInt(clipV[3])-pagex) + "px)";
		}
	}
	else if(isNav4) {
		if((div.clip.left) > 0 ) {		
			div.left += pagex;
			div.clip.left -= pagex;
			div.clip.right -= pagex;
		}
	}
	pageScroll = setTimeout("pageLeft()",50);	
}

// scroll nach rechts (neu)
function pageRight(id, x) {
	if (id) pageid = id;
	if (x) pagex = x;	
	var div   = getDiv(pageid);
	if(isNav5up || isIE) {//neu
		var clipV = div.style.clip.split("rect(")[1].split(")")[0].split("px");
		if(parseInt(clipV[1]) < parseInt(div.offsetWidth)) {
			div.style.left  = parseInt(div.style.left) - pagex;
			div.style.clip = "rect(" + clipV[0] + "px " + (parseInt(clipV[1])+pagex) + "px " + clipV[2] + "px " + (parseInt(clipV[3])+pagex) + "px)";
		}
	}
	else if(isNav4) {
		if((div.clip.right) < (div.document.width)) {		
			div.left -= pagex;
			div.clip.left += pagex;
			div.clip.right += pagex;
		}
	}
	pageScroll = setTimeout("pageRight()",50);	
}

function pageScrollStop() {
	if (pageScroll) {
		clearTimeout(pageScroll);
	}
	pageScroll = false;
}
