// Scripts (c) by Andreas Glatz and selfhtml

var NavVersion = navigator.appVersion;

var NavName    = navigator.appName;

var isV4 = (NavVersion >= 4); 
var isNS = (NavName == 'Netscape');
var isIE = (NavName == 'Microsoft Internet Explorer');

var DHTML = 0, DOM = 0, MS = 0, NS = 0, OP = 0;


function DHTML_init() {

 if (window.opera) {
     OP = 1;
 }
 if(document.getElementById) {
   DHTML = 1;
   DOM = 1;
 }
 if(document.all && !OP) {
   DHTML = 1;
   MS = 1;
 }
if(window.netscape && window.screen && !DOM && !OP) {
   DHTML = 1;
   NS = 1;
 }
}

var stat=0;
var scrollbarlength=250;
var Gloss = null;
function Glossary(titel,text)
 {
  if (stat != 0) {Gloss.close();stat=0}

    scb='no';
    if (text.length > scrollbarlength) scb = 'yes';
    Gloss=window.open('','titel','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars='+scb+',resizable=yes,copyhistory=no,hotkeys=no,width=400,height=400,left=40,top=120')
    Gloss.document.open();
    Gloss.document.write('<HTML><HEAD>');
    Gloss.document.write('<TITLE>'+titel+'</TITLE></HEAD>');
    Gloss.document.write('<BODY BGCOLOR="#FFFFFF" Background="grayg.gif" TOPMARGIN="0" text=#000000 link=#000080 vlink=#000080 alink=#000080>');
    Gloss.document.write('<table cellspacing="0" cellpadding="10" border="0"><tr valign="top">');
    Gloss.document.write('<td><b>'+titel+'</b></td></tr>');
    Gloss.document.write('<tr valign="top">');
    Gloss.document.write('<td>'+text);
    Gloss.document.write('<br><A HREF="JavaScript:self.close()">Schließen</A></td>');
    Gloss.document.write('</tr></table></BODY></HTML>');

    Gloss.document.close();
    Gloss.focus();
    stat=1;
 }                                  

function hexstrtoint(str,l)
{
 if((l>8) || (l>str.length)) return 0;
 str.toUpperCase();
 var a,n,c;
 var n=1;
 var res=0;
 for(i=l-1;i>=0;i--)
  {
   c=str.charCodeAt(i);
   if((c>=0x30) && (c<=0x39)) a=c-0x30;
   else	if((c>=0x41) && (c<=0x46)) a=10+c-0x41;
   res=res+a*n;
   n=n*16;
  }	
 return res;
}

function decm(a,sbj)
{
 a=a.replace(/<THP>/,"<A>thp<D>uni-koeln<D>de");
 a=a.replace(/<A>/,"@");
 while(a.search(/<D>/)!=-1) a=a.replace(/<D>/,".");
 a="mailto:"+a+"?subject="+sbj;
 window.open(a);
}

function maildecode(str,site)
{
var n=str.length;
var ver=hexstrtoint(str,2);
var mail="";
var pw=0xA2B7C1D8;
var a,b,i,pwc,val,valb,uc,dig;

site=site.toLowerCase();
if(site.length>0)
{
 if(document.URL.toLowerCase().search(site)==-1) return "decode not allowed";
 
 a=site.length;
 if(a>0)
  {
   while((a%4)!=0) {a++;site=site+"*";}
   b=a>>2;
   for(i=0;i<b;i++)
    pw=pw+site.charCodeAt(i*4)+0x100*site.charCodeAt(i*4+1)+0x10000*site.charCodeAt(i*4+2)+0x1000000*site.charCodeAt(i*4+3);
  }
}

if(ver==1)
 {
  for(i=1;i<(n>>1);i++)
   {
    dig=str.charAt(i*2)+str.charAt(i*2+1);
    val=hexstrtoint(dig,2);
    pwc=((pw>>(8*((i-1)%4))) & 0xFF);
    //alert(i+": "+val+" xor "+pwc+" = "+(val^pwc));
    mail=mail+String.fromCharCode(val^pwc);
   }		
 }
else if(ver==2)
 {
  dig=str.charAt(n-2)+str.charAt(n-1);
  valb=hexstrtoint(dig,2);
  for(i=(n>>1)-3;i>=0;i--)
   {
    dig=str.charAt(2*i+2)+str.charAt(2*i+3);
    val=hexstrtoint(dig,2);
    pwc=((pw>>(8*(i%4))) & 0xFF);
    a=val^valb;      
    //alert(i+": "+val+" xor "+valb+" = "+a+" xor "+pwc+" ="+(a^pwc));
    mail=String.fromCharCode(a^pwc)+mail;
    valb=val;
   }		
 } 
else return "cannot decode mail"; 
	
return mail;
}

function domail(str)
  {
  window.open(maildecode(str,''));
  }    

function getElem(p1,p2,p3) {
 var Elem;
 if(DOM) {
   if(p1.toLowerCase()=="id") {
     if (typeof document.getElementById(p2) == "object")
     Elem = document.getElementById(p2);
     else Elem = void(0);
     return(Elem);
   }
   else if(p1.toLowerCase()=="name") {
     if (typeof document.getElementsByName(p2) == "object")
     Elem = document.getElementsByName(p2)[p3];
     else Elem = void(0);
     return(Elem);
   }
   else if(p1.toLowerCase()=="tagname") {
     if (typeof document.getElementsByTagName(p2) == "object" || (OP && typeof document.getElementsByTagName(p2) == "function"))
     Elem = document.getElementsByTagName(p2)[p3];
     else Elem = void(0);
     return(Elem);
   }
   else return void(0);
 }
 else if(MS) {
   if(p1.toLowerCase()=="id") {
     if (typeof document.all[p2] == "object")
     Elem = document.all[p2];
     else Elem = void(0);
     return(Elem);
   }
   else if(p1.toLowerCase()=="tagname") {
     if (typeof document.all.tags(p2) == "object")
     Elem = document.all.tags(p2)[p3];
     else Elem = void(0);
     return(Elem);
   }
   else if(p1.toLowerCase()=="name") {
     if (typeof document[p2] == "object")
     Elem = document[p2];
     else Elem = void(0);
     return(Elem);
   }
   else return void(0);
 }
 else if(NS) {
   if(p1.toLowerCase()=="id" || p1.toLowerCase()=="name") {
   if (typeof document[p2] == "object")
     Elem = document[p2];
     else Elem = void(0);
     return(Elem);
   }
   else if(p1.toLowerCase()=="index") {
    if (typeof document.layers[p2] == "object")
     Elem = document.layers[p2];
    else Elem = void(0);
     return(Elem);
   }
   else return void(0);
 }
}

function getCont(p1,p2,p3) {
   var Cont;
   if(DOM && getElem(p1,p2,p3) && getElem(p1,p2,p3).firstChild) {
     if(getElem(p1,p2,p3).firstChild.nodeType == 3)
       Cont = getElem(p1,p2,p3).firstChild.nodeValue;
     else
       Cont = "";
     return(Cont);
   }
   else if(MS && getElem(p1,p2,p3)) {
     Cont = getElem(p1,p2,p3).innerText;
     return(Cont);
   }
   else return void(0);
}

function getAttr(p1,p2,p3,p4) {
   var Attr;
   if((DOM || MS) && getElem(p1,p2,p3)) {
     Attr = getElem(p1,p2,p3).getAttribute(p4);
     return(Attr);
   }
   else if (NS && getElem(p1,p2)) {
       if (typeof getElem(p1,p2)[p3] == "object")
        Attr=getElem(p1,p2)[p3][p4]
       else
        Attr=getElem(p1,p2)[p4]
         return Attr;
       }
   else return void(0);
}

function setCont(p1,p2,p3,p4) {
   if(DOM && getElem(p1,p2,p3) && getElem(p1,p2,p3).firstChild)
     getElem(p1,p2,p3).firstChild.nodeValue = p4;
   else if(MS && getElem(p1,p2,p3))
     getElem(p1,p2,p3).innerText = p4;
   else if(NS && getElem(p1,p2,p3)) {
     getElem(p1,p2,p3).document.open();
     getElem(p1,p2,p3).document.write(p4);
     getElem(p1,p2,p3).document.close();
   }
}

DHTML_init();


function w3counterEx(id,w,l) {
	var info,tmp,lnk;
	info = '&userAgent=' + escape(navigator.userAgent);

	if (encodeURIComponent) {
	
		info = info + '&webpageName=' + encodeURIComponent(document.title);
        info = info + '&ref=' + encodeURIComponent(document.referrer);
        
 		if (typeof _w3counter_label != 'undefined') {
 			info = info + '&label=' + encodeURIComponent(_w3counter_label);
 		}
 
	} else {
	
		info = info + '&webpageName=' + escape(document.title);
		info = info + '&ref=' + escape(document.referrer);
		
 		if (typeof _w3counter_label != 'undefined') {
 			info = info + '&label=' + escape(_w3counter_label);
 		}
 		
	}

	info = info + '&url=' + escape(window.location);
	info = info + '&width=' + screen.width;
	info = info + '&height=' + screen.height;
	info = info + '&depth=' + screen.colorDepth;
	info = info + '&rand=' + Math.round(100*Math.random());

	_w3counter_id = id;
	if (typeof _w3counter_pwidget_disable == 'undefined' || _w3counter_pwidget_disable == 0) {
		_wcl_loader = new wc_loader();
	}
  
  tmp='';
  if(w>0) tmp=' width="'+w+'"';
  lnk='http://www.w3counter.com';
  if(l) lnk=lnk+'/stats/'+id;

	document.write('<a href="'+lnk+'"><img src="http://www.w3counter.com/tracker.php?id=' + id + info + '" style="border: 0" alt="W3Counter Web Stats"'+tmp+' /></a>');
}

function w3counter0(id) {w3counterEx(id,1,false);}
function w3counterref(id) {w3counterEx(id,-1,true);}
