function BinhBK_CollapseMenu()
{
	this.Titles = new Array();
	this.Contents = new Array();
	this.Status = new Array();
	this.isCollapse = false;
	this.Id = Container.Objects.Add(this);
	this.DisplayStyles = new Array();
	this.CollapseIcons = new Array();
	this.CollapseCnt = 0;
	this.SinglePlus = new Image();
	this.SinglePlus.src = "js/CollapseMenu/icon+.gif";
	//this.SinglePlus.setAttribute("align","absmiddle");
	this.SinglePlus.style.paddingRight = "3px";
	this.SinglePlus.border = "0";
	this.SingleMinus = new Image();
	this.SingleMinus.src = "js/CollapseMenu/icon-.gif";
	//this.SingleMinus.setAttribute("align","absmiddle");
	this.SingleMinus.style.paddingRight = "3px";
	this.SingleMinus.border = "0";
}
function BinhBK_DoCollapseMenu(evt)
{
	evt = (evt) ? evt : ((event) ? event : null);
	var elem = (evt.target) ? evt.target : evt.srcElement;
	
	if (!Container.DOM.IsIE())
		elem = this;
	
	ObjName = elem.getAttribute("BinhBK_ObjId");
	thisObj = Container.Objects.GetObject(ObjName);

	itemId = elem.getAttribute("BinhBK_ItemId");
	if (thisObj.Status[itemId])
	{
		thisObj.Contents[itemId].style.display = "none";
		thisObj.Status[itemId] = false;
		thisObj.CollapseCnt++;
		if (thisObj.CollapseIcons[itemId])
			thisObj.CollapseIcons[itemId].src = thisObj.SinglePlus.src;
	}
	else
	{
		thisObj.Contents[itemId].style.display = thisObj.DisplayStyles[itemId];
		thisObj.Status[itemId] = true;
		thisObj.CollapseCnt--;
		if (thisObj.CollapseIcons[itemId])
			thisObj.CollapseIcons[itemId].src = thisObj.SingleMinus.src;
	}
	if (thisObj.CollapseCnt == 0)
		thisObj.isCollapse = false;
	else if (thisObj.CollapseCnt == thisObj.Titles.length)
		thisObj.isCollapse = true;
	//Container.Objects.Save(ObjName,thisObj)
}
BinhBK_CollapseMenu.prototype.AddItem = function(title,content)
{
	title.setAttribute("BinhBK_ItemId",this.Titles.length);
	this.Titles[this.Titles.length] = title;
	title.setAttribute("BinhBK_ObjId",this.Id);
	this.Contents[this.Contents.length] = content;
	this.Status[this.Status.length] = true;
	title.style.cursor="pointer";
	
	//Display Style
	if (title.tagName == "TBODY")
		this.DisplayStyles[this.DisplayStyles.length] = "table-row-group";
	else if (title.tagName == "DIV")
	{
		this.DisplayStyles[this.DisplayStyles.length] = "block";
		var content = title.innerHTML;
		
		icon = this.SingleMinus.cloneNode(true);
		this.CollapseIcons[this.Titles.length-1] = icon;
		title.innerHTML = "";
		title.appendChild(icon);
		title.appendChild(document.createTextNode(content));
	}
		
	Container.DOM.AddEventListener(title,"click",BinhBK_DoCollapseMenu);
}
BinhBK_CollapseMenu.prototype.CollapseAll = function()
{
	if (this.isCollapse)
	{
		for (var i=0;i<this.Contents.length;i++)
		{
			this.Contents[i].style.display = this.DisplayStyles[i];
			this.Status[i] = true;
			this.CollapseCnt = 0;
			if (this.CollapseIcons[i])
				this.CollapseIcons[i].src = this.SingleMinus.src;
		}
		this.isCollapse = false;
	}
	else
	{
		for (var i=0;i<this.Contents.length;i++)
		{
			this.Contents[i].style.display = "none";
			this.Status[i] = false;
			this.CollapseCnt = this.Status.length;
			if (this.CollapseIcons[i])
				this.CollapseIcons[i].src = this.SinglePlus.src;
		}
		this.isCollapse = true;
	}
}

BinhBK_CollapseMenu.prototype.CollapseSection = function(title)
{
	elem = document.getElementById(title);
	ObjName = elem.getAttribute("BinhBK_ObjId");
	thisObj = Container.Objects.GetObject(ObjName);
	itemId = elem.getAttribute("BinhBK_ItemId");
	
	if (thisObj.Status[itemId])
	{
		thisObj.Contents[itemId].style.display = "none";
		thisObj.Status[itemId] = false;
		thisObj.CollapseCnt++;
		if (thisObj.CollapseIcons[itemId])
			thisObj.CollapseIcons[itemId].src = thisObj.SinglePlus.src;
	}
	else
	{
		thisObj.Contents[itemId].style.display = thisObj.DisplayStyles[itemId];
		thisObj.Status[itemId] = true;
		thisObj.CollapseCnt--;
		if (thisObj.CollapseIcons[itemId])
			thisObj.CollapseIcons[itemId].src = thisObj.SingleMinus.src;
	}
	if (thisObj.CollapseCnt == 0)
		thisObj.isCollapse = false;
	else if (thisObj.CollapseCnt == thisObj.Titles.length)
		thisObj.isCollapse = true;
}
