// Externe Links
function external() {
 	var anchors = document.getElementsByTagName("a");
	for (var i=0; i<anchors.length; i++) {
		var elem = anchors[i];
		var relAttr = elem.getAttribute("rel");
		if (relAttr != null && elem.getAttribute("href") && relAttr.match(/external/)) {
			elem.target = "_blank";
		}
	}
}

// E-Mail Verschlüsselung
function noSpam() {
    if (document.getElementById) {
		var at = "@";
	  	var links = document.getElementsByTagName('a');
	  
	  	for (var i = 0; i < links.length; i++) {
		  	var linkElem = links[i];
			
		  	if (linkElem.className == 'escape') {
		  		var mail = linkElem.firstChild; var domain = linkElem.lastChild;
		  		mail.nextSibling.firstChild.innerHTML = at;
		  		linkElem.href = "mailto:" + mail.data + at + domain.data;
		  	}
			
	  	} // End for
	  
    } // End if
}

// Zum Seitenanfang
var floater;
var theTop = 0;
var old = theTop;


function init()
{
	floater = new getObj('totop');
	movefloater();
}


function getObj(name)
{
  if (document.getElementById)
  {
  	this.obj = document.getElementById(name);
	this.style = document.getElementById(name).style;
  }
  else if (document.all)
  {
	this.obj = document.all[name];
	this.style = document.all[name].style;
  }
  else if (document.layers)
  {
	this.obj = getObjNN4(document,name);
	this.style = this.obj;
  }
}


function movefloater()
{
	/** Abstand zum Dokumentanfang ermitteln *********************************/
	if (window.innerHeight)					// Netscape 4.x
	{	pos = window.pageYOffset}
	
	else if (document.documentElement && document.documentElement.scrollTop)
	{	pos = document.documentElement.scrollTop}
	
	else if (document.body)					// IE
	{	pos = document.body.scrollTop}

	if (pos < theTop) pos = theTop;
	else pos += 0;

	if (pos != old)
	{
		/** Immer kleine werdende Schritte definieren **/
		pos = (.1 *(pos-old))+old;
		floater.style.top = pos +"px";
	}
	
	old = pos;
	temp = setTimeout('movefloater()',5);
}

var t;
function top() {
  if (document.body.scrollTop!=0 || 
  document.documentElement.scrollTop!=0){
    window.scrollBy(0,-50);
    t=setTimeout('top()',10);
  }
  else clearTimeout(t);
}

// to open/close errormassage

function showhide(elem) {  			
	var code = document.getElementById(elem);
	if (code.style.display == "block") {
		new Effect.Opacity('fehlermeldung', { from: 1.0, to: 0.0, duration: 0.2 });
		setTimeout("hidebox()", 500);
		
		
	} else {
		code.style.display = "block";
	}
}


function hidebox(){
	document.getElementById("fehlermeldung").style.display = "none";
	}


// Wenn Prototype eingebunden ist:
Event.observe(window, 'load', noSpam, false);
Event.observe(window, 'load', external, false);
Event.observe(window, 'load', init, false);

// Ohne Prototype:
/*window.onload = noSpam;*/
/*window.onload = external;*/
/*window.onload = init;*/