var menuCache={};
var contentCache={};
var treeCache={};
var treeBackground=null;

var initialize=function()
{
//	passwordEditor.initialize();
	photoViewer.initialize();

	menuCache["home"]=null;
	menuCache["research"]=document.getElementById("researchMenu");
	menuCache["teaching"]=document.getElementById("teachingMenu");
	menuCache["personal"]=null;
	menuCache["vita"]=null;
	menuCache["mba"]=document.getElementById("mbaMenu");
	menuCache["phd"]=document.getElementById("phdMenu");
	menuCache["undergraduate"]=document.getElementById("undergraduateMenu");
	menuCache["others"]=null;

	contentCache["home"]=document.getElementById("homeContent");
	contentCache["researchHome"]=document.getElementById("researchHomeContent");
	contentCache["paperProjects"]=document.getElementById("paperProjectsContent");
	contentCache["datasets"]=document.getElementById("datasetsContent");
	contentCache["seminarsConferences"]=document.getElementById("seminarsConferencesContent");
	contentCache["researchGrants"]=document.getElementById("researchGrantsContent");
//	contentCache["internationalMBA"]=document.getElementById("internationalMBAContent");
//	contentCache["graduateCourses"]=document.getElementById("graduateCoursesContent");
//	contentCache["undergraduateCourses"]=document.getElementById("undergraduateCoursesContent");
	contentCache["teachingHome"]=document.getElementById("teachingHomeContent");
	contentCache["course001"]=document.getElementById("course001Content");
	contentCache["course002"]=document.getElementById("course002Content");
	contentCache["course003"]=document.getElementById("course003Content");
	contentCache["course004"]=document.getElementById("course004Content");
	contentCache["course005"]=document.getElementById("course005Content");
	contentCache["course006"]=document.getElementById("course006Content");
	contentCache["course007"]=document.getElementById("course007Content");
	contentCache["otherLectures"]=document.getElementById("otherLecturesContent");
	contentCache["personal"]=document.getElementById("personalContent");
	contentCache["vita"]=document.getElementById("vitaContent");
	contentCache["conference"]=document.getElementById("conference");
	contentCache["conferenceSchedule"]=document.getElementById("conferenceSchedule");
	contentCache["conferenceMap"]=document.getElementById("conferenceMap");

	treeCache["home"]=null;
	treeCache["research"]=document.getElementById("researchTree");
	treeCache["teaching"]=document.getElementById("teachingTree");
	treeCache["personal"]=null;
	treeCache["vita"]=null;

	treeBackground=document.getElementById("treeBackground");

	showContent("home","home");
};

var barMouseOver=function(tabName)
{
	var tab=document.getElementById(tabName+"Tab");
	if(tab!=null)
		tab.className="barOnStyle";
	showMenu(tabName);
};

var barMouseOut=function(tabName)
{
	var tab=document.getElementById(tabName+"Tab");
	if(tab!=null)
		tab.className="barStyle";
	hideMenu(tabName);
};

var showMenu=function(tabName)
{
	if(menuCache[tabName]!=null)
	{
		var menu=menuCache[tabName];
		menu.style.visibility="visible";
	}
};

var hideMenu=function(tabName)
{
	if(menuCache[tabName]!=null)
	{
		var menu=menuCache[tabName];
		menu.style.visibility="hidden";
	}
};

var showContent=function(tabName,menuName,smallTabName)
{
	clearContents();
	clearTrees();
	var contentTable=document.getElementById("contentTable");
	var menuContent=contentCache[menuName];
	contentTable.appendChild(menuContent);
	showTree(tabName);
	hideMenu(tabName);
	if(smallTabName!=null)
		hideMenu(smallTabName);
	treeBackground.style.backgroundImage="url('images/content/"+tabName+".png')";
	photoViewer.showPhoto();
};

var clearContents=function()
{
	var contentTable=document.getElementById("contentTable");
	while(contentTable.hasChildNodes())
		contentTable.removeChild(contentTable.lastChild);
};

var showTree=function(tabName)
{
	if(treeCache[tabName]!=null)
	{
		var treeTable=document.getElementById("treeTable");
		var tree=treeCache[tabName];
		treeTable.appendChild(tree);
	}
};

var clearTrees=function()
{
	var treeTable=document.getElementById("treeTable");
	while(treeTable.hasChildNodes())
		treeTable.removeChild(treeTable.lastChild);
};