var isloaded=false;
var mousefollowact=false;

var dofade=true;       // ENABLES FADE-IN EFFECT (FOR IE4+ AND NS6 ONLY)

var centertext=false;  // CENTERS THE TEXT INSIDE THE BOX. YOU CAN'T SIMPLY DO THIS VIA "STYLE" BECAUSE OF NS4.
                       // OTHERWISE, TEXT IS LEFT-JUSTIFIED.

var xoffset=9;         // HORIZONTAL PIXEL COUNT FROM CURSOR

var yoffset=25;        // VERTICAL PIXEL COUNT FROM CURSOR

var mousefollow=false; // ENABLES MOUSE FOLLOW MODE WHERE THE BOX CONTINUES TO FOLLOW THE MOUSE. SET TO false TO
                       // LOCK THE BOX WHEREVER IT INITIALLY APPEARS.

var hideDelay=300;     // DELAY IN MILLISECONDS ( 1 SECOND = 1000 MILLISECONDS) FROM WHEN YOU HOVER OUT OF LINK
                       // AND THE BOX DISAPPEARS ONLY WHEN "mousefollow" IS SET TO "false".
                       // THIS WILL GIVE THE USER TIME TO CLICK A LINK OR WHATEVER IN THE BOX BEFORE IT DISAPPEARS.

var dofade2=false;      // ENABLES FADE-IN EFFECT (FOR IE4+ AND NS6 ONLY)
var centertext2=false;  // CENTERS THE TEXT INSIDE THE BOX. YOU CAN'T SIMPLY DO THIS VIA "STYLE" BECAUSE OF NS4.
var xoffset2=25;        // HORIZONTAL PIXEL COUNT FROM CURSOR
var yoffset2=22;        // VERTICAL PIXEL COUNT FROM CURSOR
var mousefollow2=false; // ENABLES MOUSE FOLLOW MODE WHERE THE BOX CONTINUES TO FOLLOW THE MOUSE. SET TO false TO
var hideDelay2=300;     // DELAY IN MILLISECONDS ( 1 SECOND = 1000 MILLISECONDS) FROM WHEN YOU HOVER OUT OF LINK

////////////////////////////// NO NEED TO EDIT BEYOND THIS POINT //////////////////////////////////////
mousefollowact=mousefollow;
var xoffsetact=xoffset;
var yoffsetact=yoffset;
function altProps(){
this.w3c=(document.getElementById)?true:false;
this.ns4=(document.layers)?true:false;
this.ie4=(document.all && !this.w3c)?true:false;
this.ie5=(document.all && this.w3c)?true:false;
this.ns6=(this.w3c && navigator.appName.indexOf("Netscape")>=0 )?true:false;
this.opera=(this.w3c && navigator.appName.indexOf("Opera")>=0 )?true:false;
this.w_y=0;
this.w_x=0;
this.navtxt=null;
this.boxheight=0;
this.boxwidth=0;
this.ishover=false;
this.ieop=0;
this.op_id=0;
this.oktomove=false;
this.dy=0;
}

var AT=new altProps();

function toggle_centertext(){
centertext=!centertext;
}

function toggle_mousefollow(){
mousefollow=!mousefollow;
}

function toggle_dofade(){
dofade=!dofade;
if(!dofade)AT.ieop=100;
}


function getwindowdims(){
AT.w_y=(AT.ie5||AT.ie4)?document.body.clientHeight:window.innerHeight;
AT.w_x=(AT.ie5||AT.ie4)?document.body.clientWidth:window.innerWidth;
}

function getboxwidth(){
if(AT.ns4)AT.boxwidth=(AT.navtxt.document.width)? AT.navtxt.document.width : AT.navtxt.clip.width;
else if(AT.ie4)AT.boxwidth=(AT.navtxt.style.pixelWidth)? AT.navtxt.style.pixelWidth : AT.navtxt.offsetWidth;
else AT.boxwidth=(AT.navtxt.style.width)? parseInt(AT.navtxt.style.width,10) : parseInt(AT.navtxt.offsetWidth,10);
}

function getboxheight(){
if(AT.ns4)AT.boxheight=(AT.navtxt.document.height)? AT.navtxt.document.height : AT.navtxt.clip.height;
else if(AT.ie4)AT.boxheight=(AT.navtxt.style.pixelHeight)? AT.navtxt.style.pixelHeight : AT.navtxt.offsetHeight;
else AT.boxheight=parseInt(AT.navtxt.offsetHeight,10);
}

function movenavtxt(x,y){
if(AT.ns4)AT.navtxt.moveTo(x,y);
else{
AT.navtxt.style.left=x+'px';
AT.navtxt.style.top=y+'px';
}}

function getpagescrolly(){
if(AT.ie5||AT.ie4)return document.body.scrollTop;
else return window.pageYOffset;
}

function getpagescrollx(){
if(AT.ie5||AT.ie4)return document.body.scrollLeft;
else return window.pageXOffset;
}

function writeindiv(text){
if(AT.ns4){
AT.navtxt.document.open();
AT.navtxt.document.write(text);
AT.navtxt.document.close();
}
else AT.navtxt.innerHTML=text;
}

function writetxt(text){
if(window.dragdropobject && window.dragdropobject!=null) return ;
document.onmousemove=moveobj;
if(!isloaded) return;
if(text!=0 && dofade && (AT.ie4||AT.w3c))clearInterval(AT.op_id);
if(text!=0){
if(AT.ie5)AT.inavtxt.style.display="none";
mousefollowact = mousefollow;
xoffsetact=xoffset;
yoffsetact=yoffset;
AT.navtxt.style.padding = '4px';
if(!mousefollow)clearTimeout(AT.dy);
AT.oktomove=true;
AT.ishover=true;
if(AT.ns4)text='<div class="navtext">'+((centertext)?'<center>':'')+text+((centertext)?'</center>':'')+'</div>';
if(AT.w3c||AT.ie4)AT.navtxt.style.textAlign=(centertext)?"center":"left";
writeindiv(text);
if(AT.ns4)AT.navtxt.visibility="show";
else{
AT.navtxt.style.visibility="visible";
AT.navtxt.style.display="block";
}
getboxheight();
if((AT.w3c||AT.ie4) && dofade){
if(AT.ie4||AT.ie5)AT.navtxt.style.filter="alpha(opacity=0)";
if(AT.ns6)AT.navtxt.style.MozOpacity=0;
AT.ieop=0;
AT.op_id=setInterval('incropacity()',50);
}else{
AT.navtxt.style.MozOpacity=1.00;
ieIframe();
}}else{
if(mousefollow)hideAlttxt();
else AT.dy=setTimeout('hideAlttxt()',hideDelay);
}}

function getLeft(refObj){
xPos = refObj.offsetLeft;
parentObj=refObj.offsetParent;
while(parentObj != null) {xPos+=parentObj.offsetLeft;parentObj=parentObj.offsetParent;}
return xPos;}

function getTop(refObj){
yPos = refObj.offsetTop;
parentObj=refObj.offsetParent;
while(parentObj != null) {yPos+=parentObj.offsetTop;parentObj=parentObj.offsetParent;}
return yPos;}

function writetxt2(text, refObj){
	writetxt2ext(text, refObj, 2, xoffset2, yoffset2);
}
function writetxt2ext(text, refObj, padding, newxoffset, newyoffset){
	if(!isloaded) return;
	if(text!=0 && dofade2 && (AT.ie4||AT.w3c))clearInterval(AT.op_id);
	if(text!=0){
		if(AT.ie5)AT.inavtxt.style.display="none";
		mousefollowact = mousefollow2;
		xoffsetact=newxoffset;
		yoffsetact=newyoffset;
		
		AT.navtxt.style.padding = padding+'px';
		if(!mousefollow2)clearTimeout(AT.dy);
		AT.oktomove=true;
		AT.ishover=true;
		x = getLeft(refObj);
		y = getTop(refObj);
		moveobjXY(x, y, true);
		if(AT.ns4)text='<div class="navtext">'+((centertext2)?'<center>':'')+text+((centertext2)?'</center>':'')+'</div>';
		if(AT.w3c||AT.ie4)AT.navtxt.style.textAlign=(centertext2)?"center":"left";
		writeindiv(text);
		if(AT.ns4)AT.navtxt.visibility="show";
		else{
			AT.navtxt.style.visibility="visible";
			AT.navtxt.style.display="block";
		}
		getboxheight();
		if((AT.w3c||AT.ie4) && dofade2){
			if(AT.ie4||AT.ie5)AT.navtxt.style.filter="alpha(opacity=0)";
			if(AT.ns6)AT.navtxt.style.MozOpacity=0;
			AT.ieop=0;
			AT.op_id=setInterval('incropacity()',50);
		} else {
			AT.navtxt.style.MozOpacity=1.00;
			ieIframe();
		}
	} else {
		if(mousefollow2)hideAlttxt();
		else AT.dy=setTimeout('hideAlttxt()',hideDelay);
	}
}

function hideAlttxt(){
if(AT.ns4){
AT.navtxt.visibility="hide";
}else{
AT.navtxt.style.display="none";
AT.navtxt.style.visibility="hidden";
}
if(AT.ie5)AT.inavtxt.style.display="none";
movenavtxt(-AT.boxwidth-10,0);
writeindiv('');
}

function ieIframe(){
  if(AT.ie5){
    AT.navtxt.style.display = "block";
    AT.inavtxt.style.width = AT.navtxt.offsetWidth;
    AT.inavtxt.style.height = AT.navtxt.offsetHeight;
    AT.inavtxt.style.top = AT.navtxt.style.top;
    AT.inavtxt.style.left = AT.navtxt.style.left;
    AT.inavtxt.style.zIndex = AT.navtxt.style.zIndex - 1;
    AT.inavtxt.style.display = "block";
  }
}

function incropacity(){
if(AT.ieop<=100){
AT.ieop+=7;
if(AT.ie4||AT.ie5)AT.navtxt.style.filter="alpha(opacity="+AT.ieop+")";
if(AT.ns6)AT.navtxt.style.MozOpacity=AT.ieop/100;
ieIframe();
}else clearInterval(AT.op_id);
}

function moveobj(evt){
mx=(AT.ie5||AT.ie4)?event.clientX:evt.pageX;
my=(AT.ie5||AT.ie4)?event.clientY:evt.pageY;
moveobjXY(mx, my, false);
if(window.dragdropmove) dragdropmove(evt);
}

function moveobjXY(mx, my, incMyIe5){
if(AT.ishover && AT.oktomove){
margin=(AT.ie4||AT.ie5)?5:25;
if(AT.ns6)if(document.height+27-window.innerHeight<0)margin=15;
if(AT.ns4)if(document.height-window.innerHeight<0)margin=10;
if(AT.ns4||AT.ns6||AT.ie5||AT.opera)mx-=getpagescrollx();
if(AT.ns4||(AT.ie5&&incMyIe5))my-=getpagescrolly();
xoff=mx+xoffsetact;
yoff=(my+AT.boxheight+yoffsetact-((AT.ns6||AT.opera)?getpagescrolly():0)>=AT.w_y)? -5-AT.boxheight-yoffsetact: yoffsetact;
movenavtxt( Math.min(AT.w_x-AT.boxwidth-margin , Math.max(2,xoff))+getpagescrollx(), my+yoff+((!(AT.ns6||AT.opera))?getpagescrolly():0));
if(!mousefollowact)AT.oktomove=false;
}}


function alttxtinit(){
  AT.navtxt=(AT.ns4)?document.layers['navtxt']:(AT.ie4)?document.all['navtxt']:(AT.w3c)?document.getElementById('navtxt'):null;
  AT.inavtxt=(AT.ns4)?document.layers['inavtxt']:(AT.ie4)?document.all['inavtxt']:(AT.w3c)?document.getElementById('inavtxt'):null;
  getboxwidth();
  getboxheight();
  getwindowdims();
  if(AT.ie4||AT.ie5&&dofade)AT.navtxt.style.filter="alpha(opacity=100)";
  AT.navtxt.onmouseover=function(){
  if(!mousefollowact)clearTimeout(AT.dy);
  };
  AT.navtxt.onmouseout=function(){
  if(!mousefollowact)AT.dy=setTimeout('hideAlttxt()',hideDelay);
  };
  if(AT.ns4)document.captureEvents(Event.MOUSEMOVE);
  document.onmousemove=moveobj;
  window.onresize=getwindowdims;
  isloaded=true;
};

window.onload=function(){
  window.setTimeout("alttxtinit()", 1); // im IE ist manchmal AT.navtxt noch nicht fertig geladen
  try{
    setAvailWidth();
  } catch(ex){
  }
};

