var isIE = false;
var isMOZ = false;
// IE ?
if(window.ActiveXObject) {
	isIE = true;
}
// Mozilla ?
else if (document.implementation && document.implementation.createDocument) {
	isMOZ = true;
}
// Sonstige Browser
else	{
	//------------------
}

function b64arrays() {
	document.onclick = mclick;
  	var b64s='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
  	b64 = [];f64 =[];
  	for (var i=0; i<b64s.length ;i++) {
    		b64[i] = b64s.charAt(i);
    		f64[b64s.charAt(i)] = i;
  	}
}

function b64t2d(t) {
	var d=[];
	var i=0;

	t=t.replace(/\n|\r/g,""); t=t.replace(/=/g,"");
	while(i<t.length)  {
		d[d.length] = (f64[t.charAt(i)]<<2) | (f64[t.charAt(i+1)]>>4);
		d[d.length] = (((f64[t.charAt(i+1)]&15)<<4) | (f64[t.charAt(i+2)]>>2));
		d[d.length] = (((f64[t.charAt(i+2)]&3)<<6) | (f64[t.charAt(i+3)]));
		i+=4;
	}
	if(t.length%4 == 2)
	   d = d.slice(0, d.length-2);
	if(t.length%4 == 3)
	   d = d.slice(0, d.length-1);
	return d.join(",");
}

function getEventObject(e)	{
	if(isIE)	{
		return window.event.srcElement;
	}
	else	{
		if(e.target.nodeName == "#text")	{
			return e.target.parentNode;
		}
		else	{
			return e.target;
		}
	}
}

function mclick(e)	{
	var evO = getEventObject(e);
	if(evO.id.match(/LINK\d+_(.*)/))	{
		var link = RegExp.$1;
		link = link.replace(/_/, '+');
		link = link.replace(/-/, '/');
		link = link.replace(/\./, '=');
		eval("x = String.fromCharCode(" + b64t2d(link) + ")");
		window.open(x);
		//location.href = (x);
	}
}