// JavaScript Document
$alert = '';
function decryptStrings()
{
	var $argv = decryptStrings.arguments;
	var $out = '';
	for (var i=0; i<$argv.length;i+=2)
	{
		$alert += "\ndecrypt "+$argv[i]+" mit "+$argv[i+1];
		var t = decryptString($argv[i],$argv[i+1]);
		$alert += " => "+t;
		if (i==0)
			$out = t;
		else if (i==2)
			$out += '<a href="'+t+'">';
		else if (i==4)
			$out += t + '</a>';
	}
	document.write($out);
	//alert($alert + "\n"+$out);
}
function decryptString(enc,offset)
{
	var dec="";
	var len=enc.length;
	for(var i=0;i<len;i++)
	{
		var n=enc.charCodeAt(i);
		//$alert += "\n"+i+": "+n;
		if(n>=0x2B&&n<=0x3A)	//	+,-./0123456789:
		{
			dec+=decryptCharcode(n,0x2B,0x3A,offset);
		}
		else if (n>=0x40&&n<=0x5A)	//	@ABC .... XYZ
		{
			dec+=decryptCharcode(n,0x40,0x5A,offset);
		}
		else if (n>=0x61&&n<=0x7A)	//	abc ... xyz
		{
			dec+=decryptCharcode(n,0x61,0x7A,offset);
		}
		else
		{
			dec+=enc.charAt(i);
		}
	}
	return dec;
}
function decryptCharcode(n,start,end,offset)
{
	n = n + offset;
	var m=n;
	if(offset>0&&n>end)
	{
		n=start+(n-end-1);
	}
	else if(offset<0&&n<start)
	{
		n=end-(start-n-1);
	}
	//$alert += " to ("+start+","+end+") "+m+" => "+n;
	return String.fromCharCode(n);
}
function linkTo_UnCryptMailto(s)
{
	location.href=decryptString(s,-2);
}
