(function() {
	if(!window.FCAEvent) {
		window['FCAEvent'] = {};
	}

	function $(e) {
		return document.getElementById(e);
	}

	function addEvent(el, ev, callback) {
		if(!(el = $(el))) { return false; }
	
		if(el.observe) {
			// prototype library
			el.observe(ev, callback);
		} else if(el.addEventListener) {
			el.addEventListener(ev, callback, false);
		} else if(el.attachEvent) {
			el['e' + ev + callback] = callback;
			el[ev + callback] = function() { el['e' + ev + callback](window.event); }
			el.attachEvent('on' + ev, el[ev + callback]);
		} else {
			return false;
		}

		return true;
	}

	window['FCAEvent']['addEvent'] = addEvent;
})();
