var TTabSheetChat = function (name,sheets,base_class)
{
	this.self = name;
	this.active_sheet = 0;
	this.sheets = sheets;
	this.OnClick = new Array();
	this.OnFirstClick = new Array();
	this.base_class = base_class || 'TTabSheetChat_';
}

TTabSheetChat.prototype.draw = function (intoTag)
{
	this.intoTag = intoTag;
	var parent = document.getElementById(this.intoTag);
	
	var common_div = document.createElement("div");
	common_div.id = this.self+'_common_div';
	common_div.className = this.base_class+'common_div';
	
	var top_div = document.createElement("div");
	top_div.id = this.self+'_top_div';
	top_div.className = this.base_class+'top_div';
	var sheets = this.sheets;
	for (var i=0;i<sheets.length;i++)
	{
		var tempdiv = document.createElement("div");
		tempdiv.id = this.self+'_tab'+i+'_div';
		if (this.active_sheet == i) tempdiv.className = this.base_class+'tabs_div_active';
		else tempdiv.className = this.base_class+'tabs_div';
		tempdiv.innerHTML = '<div class="rasporka"></div><a href="javascript:'+this.self+'.set_active_sheet('+i+');">'+sheets[i]+'</a>';
		top_div.appendChild(tempdiv);
	}
	common_div.appendChild(top_div);
	
	var bottom_div = document.createElement("div");
	bottom_div.id = this.self+'_bottom_div';
	bottom_div.className = this.base_class+'bottom_div';
	
	for (var i=0;i<sheets.length;i++)
	{
		var tempdiv = document.createElement("div");
		tempdiv.id = this.self+'_work'+i+'_div';
		if (this.active_sheet == i) tempdiv.className = this.base_class+'work_div_active';
		else tempdiv.className = this.base_class+'work_div';
		tempdiv.innerHTML = '';
		bottom_div.appendChild(tempdiv);
	}
	common_div.appendChild(bottom_div);
	
	parent.appendChild(common_div);
	this.set_active_sheet(this.active_sheet);
}

TTabSheetChat.prototype.set_active_sheet = function(i)
{
	var tabsheet = document.getElementById(this.self+'_tab'+this.active_sheet+'_div');
	var worksheet = document.getElementById(this.self+'_work'+this.active_sheet+'_div');
	
	if (tabsheet!=null) tabsheet.className = this.base_class+'tabs_div';
	if (worksheet!=null) worksheet.className = this.base_class+'work_div';
	
	this.active_sheet = i;
	
	var tabsheet = document.getElementById(this.self+'_tab'+this.active_sheet+'_div');
	var worksheet = document.getElementById(this.self+'_work'+this.active_sheet+'_div');
	
	if (tabsheet!=null) tabsheet.className = this.base_class+'tabs_div_active';
	if (worksheet!=null) worksheet.className = this.base_class+'work_div_active';
	
	if (this.OnFirstClick[this.active_sheet]!=null&&this.OnFirstClick[this.active_sheet]!="undefined")
	{
		eval(this.OnFirstClick[this.active_sheet]);
		delete(this.OnFirstClick[this.active_sheet]);
	}
	if (this.OnClick[this.active_sheet]!=null&&this.OnClick[this.active_sheet]!="undefined") eval(this.OnClick[this.active_sheet]);
}

TTabSheetChat.prototype.add_sheet = function (caption,buttons,innerdata)
{
	this.sheets.push(caption);
	for (last in this.sheets) {}
	
	var top_div = document.getElementById(this.self+'_top_div');
	var tempdiv = document.createElement("div");
	tempdiv.id = this.self+'_tab'+last+'_div';
	tempdiv.className = this.base_class+'tabs_div';
	tempdiv.innerHTML = '<a href="javascript:'+this.self+'.set_active_sheet('+last+');" class="'+this.base_class+'ext_button">'+this.sheets[last]+'</a>';
	
	if (buttons != null)
	{
		for (var i=0;i<buttons.length;i++) tempdiv.innerHTML += '<a href="'+buttons[i].action+'" title="'+buttons[i].title+'" class="'+this.base_class+'ext_button">'+buttons[i].caption+'</a>';
	}

	top_div.appendChild(tempdiv);
	
	var bottom_div = document.getElementById(this.self+'_bottom_div');
	if (innerdata!=null && innerdata!='') 
	{
		var tempdiv = document.getElementById(innerdata);
		bottom_div.appendChild(tempdiv);
		tempdiv.id = this.self+'_work'+last+'_div';
		tempdiv.className = this.base_class+'work_div';
		tempdiv.style.display = '';
	}
	else
	{
		var tempdiv = document.createElement("div");
		tempdiv.id = this.self+'_work'+last+'_div';
		tempdiv.className = this.base_class+'work_div';
		tempdiv.innerHTML = '';
		bottom_div.appendChild(tempdiv);
		//this.sheets[last];
	}
	
	
	this.set_active_sheet(last);
	return last;
}

TTabSheetChat.prototype.append_to_sheet = function (into,app_elem)
{
	var tempdiv = document.getElementById(this.self+'_work'+into+'_div');
	var app_elem_el = document.getElementById(app_elem);
	app_elem_el.style.display = 'block';
	tempdiv.appendChild(app_elem_el);
}

TTabSheetChat.prototype.delete_sheet = function (i)
{
	if (i == null) i = this.active_sheet;
	
	var top = document.getElementById(this.self+'_top_div');
	var tt = document.getElementById(this.self+'_tab'+i+'_div');
	top.removeChild(tt);
	
//	tt.innerHTML = '';
//	tt.style.display = 'none';
	var bottom = document.getElementById(this.self+'_bottom_div');
	var tt = document.getElementById(this.self+'_work'+i+'_div');
	bottom.removeChild(tt);
	
//	tt.innerHTML = '';
//	tt.style.display = 'none';
	delete(this.sheets[i]);
	if (this.active_sheet == i)
	{
		for (last in this.sheets) {}
		if (last!=null) this.set_active_sheet(last);
	}
}

TTabSheetChat.prototype.delete_all = function ()
{
	for (i in this.sheets)
	{
		var top = document.getElementById(this.self+'_top_div');
		var tt = document.getElementById(this.self+'_tab'+i+'_div');
		top.removeChild(tt);
		
		var bottom = document.getElementById(this.self+'_bottom_div');
		var tt = document.getElementById(this.self+'_work'+i+'_div');
		bottom.removeChild(tt);	
	}
	
	this.sheets = new Array();
}

TTabSheetChat.prototype.SetOnFirstSheetClick = function (sheet_id,action)
{
	if (this.OnFirstClick[sheet_id]!=null&&this.OnFirstClick[sheet_id]!="undefined") this.OnFirstClick[sheet_id] += '     '+action;
	else this.OnFirstClick[sheet_id] = action;
}

TTabSheetChat.prototype.SetOnSheetClick = function (sheet_id,action)
{
	if (this.OnClick[sheet_id]!=null&&this.OnClick[sheet_id]!="undefined") this.OnClick[sheet_id] += '     '+action;
	else this.OnClick[sheet_id] = action;
}
