var spaceChar = '%20';
var __tabControlCurrent, __tabs = {};
function openTab( tabID, on )
{
	if ( !on )
	{
		setTimeout( "openTab( '" + tabID + "', true )", 0 );
		return;
	}

	// Ensure current tab is set:
	__tabControlCurrent = __tabControlCurrent ? __tabControlCurrent : resolveCurrentTab();

	// Unhighlight current tab:	
	if ( __tabControlCurrent )
	{
		__tabControlCurrent.SetEnabled( false );
	}
	
	// Highlight the tab w/ the specified ID:
	__tabControlCurrent = createTab( tabID );
	__tabControlCurrent.SetEnabled( true );
}

function createTab( tabID )
{
	if  ( __tabs[ tabID ] )
	{
		return __tabs[ tabID ];
	}
	return __tabs[ tabID ] = new Tab( tabID );
}

function resolveCurrentTab()
{
	var allContent = document.getElementsByTagName( "div" );
	for ( var contentIndex = 0; contentIndex < allContent.length; contentIndex++ )
	{
		if ( allContent[contentIndex].className == "tabLabelSelected" )
		{
			var parts = allContent[contentIndex].id.split( "_" );
			parts.pop();
			return createTab( parts.join( "_" ) );
		}
	}
	return null;
}

function Tab( tabID )
{
	function SetEnabled( on )
	{
    	var prev                        = parseInt( tabID.replace( 'tab' , '' ) ) - 1;       
		var qualifier					= ( on ? "Selected" : "" );		
		this.elementCenter.className	= "tabLabel"		+ qualifier;		
		this.elementContent.className = on ? "tabContent" : "tabContentHidden";
	}
	this.SetEnabled = SetEnabled;
	
	this.elementID		= tabID;
	this.elementContent	= document.getElementById( tabID );
	this.elementCenter	= document.getElementById( tabID + "_center" );
}

function setSelectedTab()
{
	var qs = location.search;
	if (qs)
	{
		var query = qs.replace('?','').split('&');
		for (var index = 0; index < query.length; index++)
		{
			var current = query[index].split('=');
			if (current[0].toLowerCase() == 'tab')
			{
				setSelectedTabByName(current[1]);
			}
		}
	}
}

function setSelectedTabByName(tabText)
{
	var selectedTab = tabText;
	while (selectedTab.indexOf(spaceChar) > -1)
	    selectedTab = selectedTab.replace(spaceChar,' ');
	var tabContainer = document.getElementById('tabContainer');
	var tabs = tabContainer.getElementsByTagName('a');
	for (var index = 0; index < tabs.length; index++)
	{
		if (tabs[index].innerHTML.toLowerCase() == selectedTab.toLowerCase())
			openTab(tabs[index].className);
	}
}