/****************************************************************************
 *	Copyright (C) 2007 FunnyFoxGroup. All Rights Reserved.
 *	The following is Sample Code and is subject to all restrictions on
 *	such code as contained in the End User License Agreement accompanying
 *	this product.
 ****************************************************************************/
 



/*	start customize Object class 
 *	Can not use in IE <= 6
 *
Object.prototype.m_aCallback = new Array( );

Object.prototype.addListener = function( p_sOListener ) {

	var sCallbackName;
	var iC = 0;
	for( sCallbackName in p_sOListener ) {
		this.m_aCallback[iC] = sCallbackName;
		iC++;
		this[sCallbackName] = p_sOListener[sCallbackName];
	}
}

Object.prototype.removeListener = function( ) {
	if( !this.m_aCallback ) return;
	var sCallbackName;
	for( var iC = 0; iC < this.m_aCallback.length; iC++ ) {
		sCallbackName = this.m_aCallback[iC];
		this[sCallbackName] = function( ) {};
	}
}
/* end customize Object class */





/* start PROPERTIES declaration */
CEventContainer.nonIE;
CEventContainer.prototype.m_aCallback;
/* end PROPERTIES declaration */





/* start METHODS declaration */

function CEventContainer( ) {
	this.m_aCallback = new Array( );
	
	if( navigator.appName == "Microsoft Internet Explorer" ) {
		CEventContainer.nonIE = false;	
	} else {
		CEventContainer.nonIE = true;		
	}
	
}


CEventContainer.prototype.addListener = function( p_oTarget, p_oListener ) {
	
	var sCallbackName;
	var iC = 0;
	for( sCallbackName in p_oListener ) {
		this.m_aCallback[iC] = sCallbackName;
		iC++;
		p_oTarget[sCallbackName] = p_oListener[sCallbackName];
	}
}


CEventContainer.prototype.removeListener = function( p_oTarget ) {
	var sCallbackName;
	for( var iC = 0; iC < this.m_aCallback.length; iC++ ) {
		sCallbackName = this.m_aCallback[iC];
		p_oTarget[sCallbackName] = function( )	{};
	}
}


CEventContainer.addListenerById = function( p_sSourceId, p_oHdl ) {
	var oSrc = document.getElementById( p_sSourceId );
	var oEvtCnt = new CEventContainer( );
	oEvtCnt.addListener( oSrc, p_oHdl );
}

/* end METHODS declaration */