// Event

var EventManager = {};
EventManager.list = [];


EventManager.removeEvent = function( obj, event, listener, useCapture ){
	//if(navigator.userAgent.match(/Mac/) && document.all && !this.env.isOpera ) return;
	useCapture = useCapture || false;
	if(obj.removeEventListener){
		obj.removeEventListener( event, listener, useCapture );
	} else if(obj.detachEvent){
		obj.detachEvent( "on"+event, listener );
	} else {
		//delete obj['on'+event];
	}
};

EventManager.addEvent = function( obj, event, listener, useCapture ){
	//EventManager.list.push(arguments);
	EventManager.list[EventManager.list.length] = arguments;
	useCapture = useCapture || false;
	if(obj.addEventListener){
		obj.addEventListener( event, listener, useCapture );
	} else if(obj.attachEvent){
		obj.attachEvent( "on"+event, listener );
	} else {
		var exists = obj['on'+event];
		obj['on'+event] = (exists)?
			function(){
				exists();
				listener();
			} : function() {
				listener();
			};
	}
};


EventManager.addLoadEvent = function( listener ){
	EventManager.addEvent( window, "load", listener, false );
};

EventManager.removeEventCache = function(){
	if(!EventManager.list) return;
	for( var i=0; i<EventManager.list.length; i++ ){
//		EventManager.removeEvent.apply( this, EventManager.list[i] );
		EventManager.removeEvent( EventManager.list[i][0], EventManager.list[i][1], EventManager.list[i][2], EventManager.list[i][3] );
	}
}

EventManager.addEvent(window, 'unload', EventManager.removeEventCache, false);


// openWindow

function openWin(url,windowname,width,height) {
	var features="location=no, menubar=no, status=yes, scrollbars=yes, resizable=yes, toolbar=no";
	if (width) {
		if (window.screen.width > width)
		features+=", left="+(window.screen.width-width)/2;
		else width=window.screen.width;
		features+=", width="+width;
	}
	if (height) {
		if (window.screen.height > height)
		features+=", top="+(window.screen.height-height)/2;
		else height=window.screen.height;
		features+=", height="+height;
	}
	window.open(url,windowname,features);
}

