var TBC_width = "100%";
var TBC_height = "";
var TBC_class = "tbc_defaultClass";
var TBC_selectedClass = "tbc_defaultSelectedClass";
var TBC_unselectedClass = "tbc_defaultUnSelectedClass";
var TBC_selected = "0";

function TBC(_tbctrl, _tbs, clsName, slcClass, unslcClass, slctd, width)
{

	this.tabControl = document.getElementById(_tbctrl);
	if(width != "-1")
		this.tabControl.style.width = width+"px";
	this.tabPages = this.loadTabs(_tbs);
	this.tabControl.TBC = this;
	
	if(clsName == "")
	{
		this.tabControl.className = TBC_class;
	}
	else
	{
		this.tabControl.className = clsName;
	}
	this.selectedClassName = (slcClass == "") ? TBC_selectedClass : slcClass;
	this.unSelectedClassName = (unslcClass == "") ? TBC_unselectedClass : unslcClass;
	this.selectedTab = (slctd == -1) ? TBC_selected : slctd;
	this.selectTab(this.selectedTab);
}
TBC.prototype.selectTab = function(tbID)
{
	this.selectedTab = tbID;
	this.deSelectAll(); 
	this.tabPages[tbID].select();

}
TBC.prototype.deSelectAll = function()
{
	for(i = 0; i < this.tabPages.length; i++)
	{
		this.tabPages[i].deselect();
	}
}
TBC.prototype.loadTabs = function(_tbs)
{
	var result = new Array();
	for(i = 0; i < _tbs.length; i++)
	{
		result[i] = _tbs[i];
		result[i].TBC = this;
	}
	return result;
}


function TBP(_tbpg, onselect, ondeselect, _ttl, id)
{
	this.tabPage = document.getElementById(_tbpg);
	this.onSelect = onselect;
	this.onDeSelect = ondeselect;
	this.num = id;
	this.title = document.getElementById(_ttl);
	this.title.TBP = this;
	this.title.onmouseup = this.titleClicked;
}
TBP.prototype.titleClicked = function()
{
	this_ = this.TBP.TBC;
	this_.selectTab(this.TBP.num);
}
TBP.prototype.select = function()
{
	this.tabPage.className = this.TBC.selectedClassName;
	this.tabPage.style.display = "block";
	this.tabPage.style.visibility = "visible";
	this.title.className = this.TBC.selectedClassName;
	eval(this.onSelect);
}
TBP.prototype.deselect = function()
{
	this.tabPage.className = this.TBC.unSelectedClassName;
	this.tabPage.style.display = "none";
	this.tabPage.style.visibility = "hidden";
	this.title.className = this.TBC.unSelectedClassName;
	eval(this.onDeSelect);
}