// JavaScript Document
function addEvent(obj,type,fn) {
	if (obj.addEventListener) {
		obj.addEventListener(type,fn,false);
	} else if (obj.attachEvent) {
		obj.attachEvent("on"+type,fn);
	} else {
		obj["on"+type] = null;
	}
}

function formatEvent(evt) {
	if (isIE && isWin) {
		evt.charCode = (evt.type=="keypress")?evt.keyCode:0;
		evt.eventPhase = 2;
		evt.isChar = (evt.charCode > 0);
		evt.pageX = evt.clientX + document.body.scrollLeft;
		evt.pageY = evt.clientY + document.body.scrollTop;
		/*
		oEvent.preventDefault = function () {
			this.returnvalue = false;
		};
		*/
		if (evt.type == "mouseout") {
			evt.relatedTarget = evt.toElement;
		} else if (evt.type == "mouseover") {
			evt.relatedTarget = evt.fromElement;
		}
		/*
		oEvent.stopPropagation = function () {
			this.cancelBubble = true;
		};
		*/
		evt.stopPropagation = function() {
			this.cancelBubble = true;
		};
		evt.target = evt.srcElement;
		evt.time = (new Date).getTime();
	}
	return evt;
}

function getEvent() {
	if (window.event) {
		return formatEvent(window.event);
	} else {
		return getEvent.caller.arguments[0];
	}
}

function removeEvent(obj,type,fn) {
	if (obj.removeEventListener) {
		obj.removeEventListener(type,fn,false);
	} else if (obj.detachEvent) {
		obj.detachEvent("on"+type,fn);
	} else {
		obj["on"+type] = null;
	}
}

