var openImg = new Image();
openImg.src = "open.gif";
var closedImg = new Image();
closedImg.src = "closed.gif";
var blocked = 1;

function tree(){
	this.branches = new Array();
	this.add = addBranch;
	this.write = writeTree;
}

function branch(id, imgsrc){
	this.id = id;
	this.imgsrc = imgsrc;
	this.write = writeBranch;
	this.add = addLeaf;
	this.leaves = new Array();
}

function leaf(link, imgsrc){
	this.link = link;
	this.imgsrc = imgsrc;
	this.write = writeLeaf;
}

function writeTree(){
	var treeString = '';
	var numBranches = this.branches.length;
	for(var i=0;i<numBranches;i++)
		treeString += this.branches[i].write();
	document.write(treeString);
}

function addBranch(branch){
	this.branches[this.branches.length] = branch;
}

function writeBranch(){
	var branchString = '<div class="branch" onClick="showBranch(\'' + this.id + '\')"';
	branchString += '><img src="' + this.imgsrc + '" id="I' + this.id + '">';
	branchString += '</div>';
	branchString += '<div class="leaf" id="';
	branchString += this.id + '">';
	var numLeaves = this.leaves.length;
	for(var j=0;j<numLeaves;j++)
		branchString += this.leaves[j].write();
	branchString += '</div>';
	return branchString;
}

function addLeaf(leaf){
	this.leaves[this.leaves.length] = leaf;
}

function writeLeaf(){
	var leafString = '<a href="' + this.link + '">';
	leafString += '<img src="' + this.imgsrc + '" border="0">';
	leafString += '</a><br>';
	return leafString;
}

function showBranch(branch){
	var objBranch = document.getElementById(branch).style;
	
	// dont allow Products branch to be collapsed
	if (objBranch.display == "block" && branch != "branch1")
		objBranch.display = "none";
	else
		objBranch.display = "block";
}
