

function gI(o) { return document.getElementById(o) }

function URLDecode(encoded) {
   var HEXCHARS = '0123456789ABCDEFabcdef'; 
   var plaintext = '';
   var i = 0;
   while (i < encoded.length) {
       var ch = encoded.charAt(i);
	   if (ch == '+') {
	       plaintext += ' ';
		   i++;
	   } else if (ch == '%') {
			if (i < (encoded.length-2) 
					&& HEXCHARS.indexOf(encoded.charAt(i+1)) != -1 
					&& HEXCHARS.indexOf(encoded.charAt(i+2)) != -1 ) {
				plaintext += unescape( encoded.substr(i,3) );
				i += 3;
			} else {
				i++;
			}
		} else {
		   plaintext += ch;
		   i++;
		}
	} // while
   return plaintext;
};

function swap_email() {
	var elm = gCN('email_addr','img',document);
	var rg = /\?i=([^&]*)/;
	for (var i = 0; i < elm.length; i++) {
		var email = rg.exec(elm[i].src);
		if (email && email[1]) {
			email[1] = URLDecode(email[1]);
			var decoded = '';
			for (var j = 0; j < email[1].length; j++)
				decoded += String.fromCharCode(email[1].charCodeAt(j) - j - 1);
			var prnt = elm[i].parentNode;
			var img = rC(prnt,elm[i]);
			var a = cE('a');
			var atxt = cT(decoded);
			a.href = 'mailto:'+decoded;
			aC(a, atxt);
			aC(prnt, a);
		}
	}
}

function AttachEvent(obj,evt,fnc,useCapture){
	if (!useCapture) useCapture=false;
	if (obj.addEventListener){
		obj.addEventListener(evt,fnc,useCapture);
		return true;
	} else if (obj.attachEvent) return obj.attachEvent("on"+evt,fnc);
} 

function DetachEvent(obj,evt,fnc,useCapture) {
	if (!useCapture) useCapture = false;
	if (obj.removeEventListener) {
		removeEventListener(evt,fnc,useCapture);
		return true;
	} else if (obj.detachEvent) return obj.detachEvent("on"+evt,fnc);
}

AttachEvent(window,'load',swap_email);

