	
	function getElementsByClass(node,searchClass,tag) 
	{
		var classElements = new Array();
		var els = node.getElementsByTagName(tag);
		var elsLen = els.length;
		
		for (i = 0, j = 0; i < elsLen; i++) 
		{
			if ( searchClass==(els[i].className) ) 
			{
				classElements[j] = els[i];
				j++;
			}
		}
		
		return classElements;
	}
	
	function getAnchorsMainDiv(anchor)
	{
		return anchor.parentNode.parentNode.parentNode.parentNode;
	}
	
	function setTabActive(anchor)
	{
		anchorsMainContainerDiv = getAnchorsMainDiv(anchor);
		
		arrayOfMenuResults=getElementsByClass(anchorsMainContainerDiv, "tabmenu", "div");
		
		x=arrayOfMenuResults[0].getElementsByTagName("a");
		
		position=-1;
		
		for(i=0;i<x.length;i++)
		{
			x[i].className="inactivetab";
			if ( anchor==x[i] )
			{
				position = i;
			}
		}
		
		anchor.className="activetab";
		
		results=getElementsByClass(getDataContainerDiv(anchorsMainContainerDiv.id), "tabdata", "div");
		
		/* putting the innerhtml in a div with padding so we can set container width to 99% safely, and not have padding on the container */
		fullhtml='<div style="padding-left: 10px; padding-right: 10px;">' + results[position].innerHTML + '</div>';
		
		getDisplayDiv(anchorsMainContainerDiv.id).innerHTML=fullhtml;
		
		setFocusToAnchor(anchorsMainContainerDiv.id);
		
		/*
		getDisplayDiv(anchorsMainContainerDiv.id).innerHTML=results[position].innerHTML
		*/
		
		/* this is here because the latest Opera changes widths of the divs for some reason so we recalculate every time */
		/* drawConnectorLine(); */
	}
	
	function setFocusToAnchor(textNameOfMainContainerDiv)
	{
		element = getElementsByClass(document.getElementById(textNameOfMainContainerDiv), "anchorcontent", "a")[0];
		element.focus();
		/* alert(element.className); */
	}
	
	
	function getDisplayDiv(textNameOfMainContainerDiv)
	{
		return getElementsByClass(document.getElementById(textNameOfMainContainerDiv), "tabdisplay", "div")[0];
	}
	
	function getMenuDiv(textNameOfMainContainerDiv)
	{
		return getElementsByClass(document.getElementById(textNameOfMainContainerDiv), "tabmenu", "div")[0];
	}
	
	function getDataContainerDiv(textNameOfMainContainerDiv)
	{
		return getElementsByClass(document.getElementById(textNameOfMainContainerDiv), "tabdatacontainer", "div")[0];
	}
	
	function makeThisActive(obj)
	{
		obj.className="activetab";
	}
	
	function getClassName(obj)
	{
		return obj.className;
	}
	
	function getId(obj)
	{
		return obj.id;
	}
	
	/*
	function drawConnectorLine()
	{
		document.getElementById("solidline").style.marginTop=(getMenuDiv().offsetHeight)-2 + "px";
		value1=getDisplayDiv().offsetWidth;
		value2=getMenuDiv().offsetWidth;
		document.getElementById("solidline").style.width=(value1-value2) + "px";
		document.getElementById("solidline").style.display="inline-block";
	}
	*/
	
	function initializeTabSet(menuName)
	{
		getDisplayDiv(menuName).style.display="block";
		getMenuDiv(menuName).style.display="block";
		getDataContainerDiv(menuName).style.display="none";
		
		theTabMenu=getElementsByClass(document.getElementById(menuName), "tabmenu", "div")[0]
		anchorList=theTabMenu.getElementsByTagName("a");
		
		setTabActive(anchorList[0]);
		
		/* anchorList[0].style.borderLeft="1px solid #B7BCBF"; */
		anchorList[anchorList.length-1].style.borderRight="1px solid #B7BCBF";
		/* drawConnectorLine(); */
	}
