
function resetStates(parents,states,clicked) {	
	for (var i=0;i<states.length;i++) {
		states[i] = 0;		
	}
	i = clicked;
	while (parents[i] > -1 ) {
		states[i] = 1;
		i = parents[i];
	}
}

function resetColors(parents,colors,color,selcolor,selected) {		
	for (var i=0;i<colors.length;i++) {
		colors[i] = color;		
	}
	i=selected;
	while (i >= 0 ) {
		colors[i] = selcolor;
		i = parents[i];
	}
}

function getCookie(name){
	var start = document.cookie.indexOf(name+"=");
	if (start > -1 ) {
			start = start + name.length+1;
			var end = document.cookie.indexOf(";",start);
			if (end == -1) end = document.cookie.length;
			return unescape(document.cookie.substring(start,end));
	} else {
		return -1;	
	}	
}

function setCookie(name,value) {
		document.cookie=name+"="+escape(value);
}

function getNavigationText(titles,linklist,parents,states,leafs,colors,overcolor,parent,text,clicked) {		

	var src_attr='';
	var href_attr='';
	var col_attr='';
	var image_path='../images';
	i = selected;
	
	/* store clicked as cookie*/	
	text = text + '<table class="menu_main_menu" valign="top">';
	
	for (var i=0; i<titles.length; i++) {
		if (parents[i] == parent) {			
			if (i == clicked)  {
				states[i] = (states[i] +1 )% 2;
			}
			if (linklist[i] != '') {
				href_attr='self.location.href=\''+linklist[i]+'\';';
			} else {
				href_attr='';
			}
			if (leafs[i] == 1) {
				src_attr='src="'+image_path+'/arrowht.gif"';
			} else {
				if (states[i] == 1) {
					src_attr='src="'+image_path+'/arrowh.gif"';
				} else {
					src_attr='src="'+image_path+'/arrowv.gif"';
				}
			}
			text = 
				text + '<tr height="30"><td width="15">'
					 + '<a class="menu" onClick="'+href_attr+'printNavigation(titles,linklist,parents,states,leafs, colors,overcolor,'+i+')">'
					 + '<img '+ src_attr+ '>&nbsp;&nbsp;</img>'
					 + '</a>'
					 + '</td><td>'
					 + '<a  class="menu" style="color:'+colors[i]+'" onClick="'+href_attr+'printNavigation(titles,linklist,parents,states,leafs, colors,overcolor,'+i+');" onMouseOver="this.style.color=0x'+overcolor.substring(1,overcolor.length)+';" onMouseOut="this.style.color=0x'+colors[i].substring(1,colors[i].length)+';" >'
 					 + titles[i]+'</a>'
					 + '</td></tr>';
			if (states[i] == 1) {
				text = text +'<tr><td colspan="2">'
							+ getNavigationText(titles,linklist,parents,states,leafs, colors,overcolor, i,'',clicked)
							+ '</td></tr>';
			}
		}
	}
	text = text + '</table>';
	return text; 
} // end function

function printNavigation(titles,linklist,parents,states,leafs,colors,overcolor, clicked ) {
	var id = -1;
	if (leafs[clicked]==1){
		id = parents[clicked];
	} else {		
		if (states[clicked]==0){
			id = clicked;
		} else {
			id = parents[clicked];
		}
	}
	resetStates(parents,states,id);
	resetColors(parents,colors,color,selcolor,clicked);
	setCookie("clicked",id);
	setCookie("selected",clicked);
		
	document.getElementById('div1').innerHTML=getNavigationText(titles,linklist,parents,states,leafs,colors,overcolor,-1,'',id);		
}