/*-------------------------------------------------------------------
Author's Statement:
This script is based on ideas of the author.
You may copy, modify and use it for any purpose. The only condition is that if you publish web pages that use this script you point to its author at a suitable place and don't remove this Statement from it.
It's your responsibility to handle possible bugs even if you didn't modify anything. I cannot promise any support.
Dieter Bungers
GMD (www.gmd.de) and infovation (www.infovation.de)
--------------------------------------------------------------------*/
var cookieRetVal = ''
var cookieName = ''

function setCookie2 (name, value) {
	var argv = setCookie2.arguments;
	var argc = setCookie2.arguments.length;
	var expires = (argc > 2) ? argv[2] : null;
	var path = (argc > 3) ? argv[3] : null;
	var domain = (argc > 4) ? argv[4] : null;
	var secure = (argc > 5) ? argv[5] : false;
	document.cookie = name + "=" + escape (value) + ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + ((path == null) ? "" : ("; path=" + path)) + ((domain == null) ? "" : ("; domain=" + domain)) + ((secure == true) ? "; secure" : "");
}

function getCookie2 (retName) {

	var cLoc = document.cookie.indexOf(retName + "=");
	var nLength = (cLoc + retName.length + 1);
    	if ((!cLoc) && (retName != document.cookie.substring(0,retName.length))){
		return null;
		}
     	if (cLoc == -1){
		return null;
		}
	var cEnd = document.cookie.indexOf(";",nLength);

   	if (cEnd == -1)
		cEnd = document.cookie.length;

	cookieRetVal = unescape(document.cookie.substring(nLength, cEnd));
	cookieName = retName;
	return unescape(document.cookie.substring(nLength, cEnd));

}


function impCookie(name,tOrF){
	anch= '';
	setCookie2('place',name);
	setCookie2('boorl',tOrF);
}

if (navigator.appName.toLowerCase().indexOf("explorer") > -1) {
	var mdi=textSizes[1], sml=textSizes[2];
}
else {
	var mdi=textSizes[3], sml=textSizes[4];
}

function reDisplay(currentNumber,currentIsExpanded) {
// this first gets a cookie to see where the user has been before if they're coming from another page:
	anch = '';
	tOrF = ''
	anch = getCookie2("place");
		if (anch == null){
			anch="0";
		}
	tOrF = getCookie2("boorl");

		if (tOrF == null){
			tOrF=0;
		}

//this begins writing the table for the frame on the left
	toc.document.open();
	toc.document.write("<html>\n<head>\n<title>Artistic Archives</title>\n</head>\n<body bgcolor='#000000'>\n<table border=0 cellspacing=1 cellpadding=0>\n<tr>");
	var currentNumArray = currentNumber.split(".");
	var scrollY=0, addScroll=true, theHref="";
	for (i=0; i<tocTab.length; i++) {
		thisNumber = tocTab[i][0];

		if (currentNumber ==0){
		currentNumber = anch;
		currentIsExpanded = tOrF;
		var isCurrentNumber = (thisNumber == currentNumber);
		currentNumArray = anch.split(".");
		theHref = ("archs.htm#" + anch);
		var currentLevel = currentNumArray.length-1;
		}
		else{
		var isCurrentNumber = (thisNumber == currentNumber);
		if (isCurrentNumber ) theHref=tocTab[i][2];
		var currentLevel = currentNumArray.length-1;
		}

		var thisNumArray = thisNumber.split(".");
		var thisLevel = thisNumArray.length-1;
		var toDisplay = true;

		if (thisLevel > 0) {
			for (j=0; j<thisLevel; j++) {
				toDisplay = (j>currentLevel)?false:toDisplay && (thisNumArray[j] == currentNumArray[j]);
			}
		}

		thisIsExpanded = toDisplay && (thisNumArray[thisLevel] == currentNumArray[thisLevel]);

		if (currentIsExpanded ) {
			toDisplay = toDisplay && (thisLevel<=currentLevel);
			if (isCurrentNumber) thisIsExpanded = false;
		}



		if (toDisplay) {
			if (i==0){
				toc.document.writeln("\n<td colspan=" + (nCols+1) + "><a href=\"javaScript:\parent.reDisplay('" + thisNumber + "'," + thisIsExpanded + ")\" onClick=\"javaScript:\parent.impCookie('" + thisNumber + "')\" style=\"font-family: " + fontTitle + "; font-weight:bold; font-size:" + textSizes[0] + "em; color:" + titleColor  + "; text-decoration:none\">" + tocTab[i][1] + "</a></td></tr>");
				for (k=0; k<nCols; k++) {
					toc.document.write("<td>&nbsp;</td>");
				}
				toc.document.write("<td width=240>&nbsp;</td></tr>");
				}
			else {
if (isCurrentNumber){

}
				if (addScroll) scrollY+=((thisLevel<2)?mdi:sml)*25;
				if (isCurrentNumber) addScroll=false;
				var isLeaf = (i==tocTab.length-1) || (thisLevel >= tocTab[i+1][0].split(".").length-1);
				img = (isLeaf)?"leaf":(thisIsExpanded)?"minus":"plus";
				toc.document.writeln("<tr>");
				for (k=1; k<=thisLevel; k++) {
					toc.document.writeln("<td>&nbsp;</td>");
				}

				toc.document.writeln("<td valign=top><a href=\"javaScript:parent.reDisplay('" + thisNumber + "'," + thisIsExpanded + ");\" onClick=\"javaScript:\parent.impCookie('" + thisNumber + "')\"><img src=\"Images/" + img + ".gif\" width=13 height=12 border=0></a></td> <td colspan=" + (nCols-thisLevel) + "><a href=\"javaScript:\parent.reDisplay('" + thisNumber + "'," + thisIsExpanded + ")\" onClick=\"javaScript:\parent.impCookie('" + thisNumber + "'," + thisIsExpanded + ")\" style=\"font-family: " + fontLines + ";" + ((thisLevel<=mLevel)?"font-weight:bold":"") +  "; font-size:" + ((thisLevel<=mLevel)?mdi:sml) + "em; color: " + ((isCurrentNumber)?'yellow':'white') + "; text-decoration:none\">" + ((showNumbers)?(thisNumber+" "):"") + tocTab[i][1] + "</a></td></tr>");
			}
		}


}
	toc.document.writeln("</table></body>");
	toc.document.close();
	if (theHref != "" ){
		 content.location.href = theHref;
	}

}

