function clsMenu()
{
	var loMenu = this;	
	
	// dirty property, tru when menu is outdated!!
	loMenu.bDirty = false;
	
	loMenu.lNodeTypeId = -1;
	loMenu.sFilterName = '';
	loMenu.sFilterType = 0;
	loMenu.sFilterMaxResult = 50;
	loMenu.bRemember = false;
		
	// Is this a new session??	
	loMenu.newSession = function newSession()
	{
		var sPage = top.frames.tree.location.href.toLowerCase();

		if (sPage.indexOf( "frmmenu.asp" ) 	!= -1) 
			return false;			
		else
			return true;
		
	}
	
	loMenu.init = function init()
	{

		if(!top.teamID)
			top.teamID="-2"
		
		if(!top.userID)
			top.userID="-2"
		
		if(!top.treeID)
			top.treeID="-2"
		
		if(!top.entityID)
			top.entityID="-2"
		
		if(!top.attributeID)
		{
			top.attributeID="-2"
			top.attributeDataTypeId="-1"
		}
		
		if(!top.picklistID)
			top.picklistID="-2"
		
		if(!top.reportID)
			top.reportID="-2"
		
		if(!top.objectID)
			top.objectID="-2"	

		if(!top.meqID)
			top.meqID="-2"	
	}
	
	loMenu.refresh = function refresh()
	{
		
		//if bDirty true then refresch menu!!		
		if (this.bDirty == true)
		{
			var oMenu      = top.frames["tree"].divMenu
			var lObjXSLSheet    = top.frames["tree"].xslRefresh
			var lObjXMLdata		= new ActiveXObject( "Microsoft.XMLDOM" );			
			
			window.status = 'Refreshing menu!!'
			
			lObjXMLdata.async	= false;
			lObjXMLdata.load( "/menu/modRefresh.asp" );					
			
			while (lObjXMLdata.readyState != 4)
			{
				window.status = 'Refreshing menu!!'
			}
			
			sHTML = lObjXMLdata.transformNode(lObjXSLSheet.XMLDocument)
			lObjXMLdata  = null;
			
			oMenu.innerHTML = sHTML;
			window.status = 'done';
			
			this.bDirty = false;
			return true;
		}
	}
	
	loMenu.loadLeafFrame = function loadLeafFrame()
	{
		top.leaf.window.open('/person/frmPersonInfo.asp', '_self')
	}
	
	loMenu.login = function login()
	{
		top.hidden.window.open('/modlogin/', '_self')
	}
	
	loMenu.reload = function reload()
	{	
		var bNewSession = newSession()
		if (bNewSession == true)
		{
//			top.tree.window.open('/menu/frmMenu.asp', '_self')			
			top.location.replace('/')
		}
		else
		{
			refresh();
			loadLeafFrame();
		}
	}	
	
	//Call the initialize function!!
	init()
	
	return loMenu;
}