	var path 				= new Array();
		path['images'] 		= new String('images/topMenuButtons/');
		path['standard'] 	= new String('standard/');
		path['hovered'] 	= new String('hovered/');
		path['released']	= new String('released/');
		
	var images 								= new Array();
		images['default']					= new String('home.png');
		images['about']						= new String('about.png'); 
		images['contact']					= new String('contact.png'); 
		images['home']						= new String('home.png'); 
		images['news']						= new String('news.png'); 
		images['software-support-training']	= new String('software-support-training.png'); 
		images['web-services']				= new String('web-services.png');
	
	function doTopMenu()
	{
		var divElem = document.getElementsByTagName('div');
		section = (section == 'default') ? '' : section;
		var isPortfolio = (document.location.href.indexOf('portfolio') > -1)?true:false;

		for(var i in divElem)
		{
			if(divElem[i].className == 'topMenuButtons')
			{
				var hrefParts = divElem[i].getElementsByTagName('a')[0].href.toString().split('/');
					
				for(p in hrefParts)
				{
					// exception to the rule of matching sections to menu names
					if(isPortfolio){
						if( (hrefParts[p]).toString().indexOf('portfolio') > -1){ 
							divElem[i].className = 'topMenuButtonsReleased';
							return;
						} 
					}
					else if(section == hrefParts[p])
					{
						divElem[i].className = 'topMenuButtonsReleased'; 
						return;
					}
				}
			}
		}
	}
	
	function convertToTxp(str)
	{
		while(str.match(' ')) str = str.replace(' ', '-');
		return str.toLowerCase();		
	}
	
	function doSideMenu()
	{
		var place 	= document.location.href.split('/').pop();
		var menuItems = getNodesFromDoc_filterByNodeNameClass(new Array('h3'), 'submenuLink');
		for(var i=0; i< menuItems.length; i++)
		{
			oA = getFirstChildNodeByNodeType(menuItems[i],'a');
			if( (oA != null) && oA.href){
				var hrefPart = oA.href.toString().split('/').pop();
				if(place == hrefPart){
					//(oA.style)?(oA.style.fontWeight='bold'):(oA.fontWeight='bold'); 
					oA.parentNode.className = 'submenuSelected'; 
					return true;
				}
			}// end if oA
		}
		return false;
	}

	function doSubMenu()
	{
		try
		{
			var place 	= document.location.href.split('/').pop();
			var oULs = getNodesFromDoc_filterByNodeNameClass(new Array('ul'), 'submenu');
			//var oULs = getChildNodesByNodeType(getObjByID('columnOne'),'ul');

			for(var i=0;i < oULs.length; i++)
			{
				var oLIs = getChildNodesByNodeType(oULs[i],'li');
				for(var j=0;j < oLIs.length; j++)
				{
					var oA = getFirstChildNodeByNodeType(oLIs[j],'a');
					if( (oA != null) && oA.href){
						var hrefPart = oA.href.toString().split('/').pop();
						if(place == hrefPart){
							oLIs[j].className = 'submenuSelected'; 
							return;
						}
					}// end if oA
				}// end j
			}// end i
		}
		catch(e){}		
	}

	window.onload = function()
	{
		doTopMenu();
		var sel = doSideMenu();
		if(!sel) doSubMenu();
		tmb2Full();
		var oLaptopH1 = getObjByID('h1Rotator');
		if(oLaptopH1 != null) laptopTicker(oLaptopH1,phrases);
	}




	// grab all first-generation child nodes that match the passed node type
	function getChildNodesByNodeType(oPNode, ndeTypeName){
		var ndes = new Array();
		if(oPNode == null) return null;
		if(isRightNodeType(oPNode,ndeTypeName)) return oPNode;
		for(var i=0;i<oPNode.childNodes.length;i++){
			var oNde = oPNode.childNodes[i];
			if(isRightNodeType(oNde,ndeTypeName)) ndes[ndes.length] = oNde;
		}
		return ndes;
	}

	// grab the first first-generation child node that matches the passed node type (like <p> and text nodes)
	function getFirstChildNodeByNodeType(oPNode, ndeTypeName){
		if(oPNode == null) return null;
		if(isRightNodeType(oPNode,ndeTypeName)) return oPNode;
		for(var i=0;i<oPNode.childNodes.length;i++){
			var oNde = oPNode.childNodes[i];
			if(isRightNodeType(oNde,ndeTypeName)) return oNde;
		}
	}

	// grab all nodes that match passed className and nodeNames
	function getNodesFromDoc_filterByNodeNameClass(ndNames, clsName)
	{
		var ndes = new Array();
		for(var j=0; j < ndNames.length; j++)
		{
			var all = document.all || document.getElementsByTagName(ndNames[j]);
			for(var i=0;i<all.length;i++)
			{
				if(all[i].nodeName.toLowerCase() == ndNames[j].toLowerCase() )
				{
					if(clsName != null){
						if(all[i].className.toLowerCase() == clsName.toLowerCase()) ndes[ndes.length] = all[i];
					}
					else ndes[ndes.length] = all[i];
				}
			}// end i
		}// end j
		return ndes;
	}

	function isRightNodeType(oNde, ndeTypeName){
		if(oNde.nodeName && (oNde.nodeName.toLowerCase() == ndeTypeName) ) return true;
		return false;
	}
