//---------------------------------------------------------------------------
// This script is based on the work of Dieter Bungers - http://www.infovation.de
// The original example for the "Cross Browser Expanding and Collapsing TOC"
// was published on http://www.siteexperts.com/tips/techniques/ts03/index.htm
//---------------------------------------------------------------------------

var tocTab = new Array();var ir=0;
tocTab[ir++] = new Array ("1", "AutoUpgrader - Overview", "overview.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("2", "Installation Instructions", "installationinstructions.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("3", "Registration Information", "registrationinformation.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("4", "License Agreement", "licenseagreement.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("5", "Frequently Asked Questions", "frequentlyaskedquestions.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("6", "Properties", "", "", "msdn_closedbook.gif", "msdn_openbook.gif");
tocTab[ir++] = new Array ("6.1", "Active", "active.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("6.2", "InfoFile", "infofile.htm", "", "msdn_closedbook.gif", "msdn_openbook.gif");
tocTab[ir++] = new Array ("6.2.1", "DlgCaption", "dlgcaption.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("6.2.2", "DlgMessage", "dlgmessage.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("6.2.3", "SoftwareURL", "softwareurl.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("6.2.4", "UpgradeMethod", "upgrademethod.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("6.3", "InfoFileURL", "infofileurl.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("6.4", "Password", "password.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("6.5", "Username", "username.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("6.6", "VersionControl", "versioncontrol.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("6.7", "VersionDate", "versiondate.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("6.8", "VersionDateAutoSet", "versiondateautoset.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("6.9", "VersionNumber", "versionnumber.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("7", "Methods", "", "", "msdn_closedbook.gif", "msdn_openbook.gif");
tocTab[ir++] = new Array ("7.1", "CheckUpdate", "checkupdate.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("7.2", "Abort", "abort.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("8", "Events", "", "", "msdn_closedbook.gif", "msdn_openbook.gif");
tocTab[ir++] = new Array ("8.1", "OnDone", "ondone.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("8.2", "OnError", "onerror.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("8.3", "OnNoUpdateAvailable", "onnoupdateavailable.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("8.4", "OnProgress", "onprogress.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("8.5", "OnUpgrade", "onupgrade.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("9", "Usage", "", "", "msdn_closedbook.gif", "msdn_openbook.gif");
tocTab[ir++] = new Array ("9.1", "Usage example", "autoupgraderexample.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("9.2", "InfoFile Designer", "infofiledesigner.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("9.3", "Info-file example", "info_fileexample.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("9.4", "Calculation of upgrades", "cgiexample.htm", "", "msdn_topic.gif", "");
tocTab[ir++] = new Array ("9.5", "Upgrading Mechanism", "upgradingmechanism.htm", "", "msdn_topic.gif", "");
showNumbers = false,
textSizes = new Array(1, 1, 0.7, 0.7),
tocBehaviour = new Array(1,1),
tocScroll=true,
tocLinks = new Array(1,0);
var isIE = navigator.appName.toLowerCase().indexOf("explorer") > -1;
var mdi = (isIE) ? textSizes[1]:textSizes[3];
var sml = (isIE) ? textSizes[2]:textSizes[4];
var oldCurrentNumber = "", oldLastVisitNumber = "";
var toDisplay = new Array();
for (ir=0; ir<tocTab.length; ir++) {
toDisplay[ir] = tocTab[ir][0].split(".").length==1;
}
function reDisplay(currentNumber,tocChange,noLink,e) {
if (e) {
ctrlKeyDown = (isIE) ? e.ctrlKey : (e.modifiers==2);
if (tocChange && ctrlKeyDown) tocChange = 2;
}
toc.document.clear();
toc.document.write("<html>\n\r<head></head>\n\r<style type=\"text/css\">\n\r       SPAN.heading1 { font-family: Arial,Helvetica; font-weight: normal; font-size: 10pt; color: #000000; text-decoration: none }\n\r       SPAN.heading2 { font-family: Arial,Helvetica; font-weight: normal; font-size: 9pt; color: #000000; text-decoration: none }\n\r       SPAN.heading3 { font-family: Arial,Helvetica; font-weight: normal; font-size: 8pt; color: #000000; text-decoration: none }\n\r       SPAN.heading4 { font-family: Arial,Helvetica; font-weight: normal; font-size: 8pt; color: #000000; text-decoration: none }\n\r       SPAN.heading5 { font-family: Arial,Helvetica; font-weight: normal; font-size: 8pt; color: #000000; text-decoration: none }\n\r       SPAN.heading6 { font-family: Arial,Helvetica; font-weight: normal; font-size: 8pt; color: #000000; text-decoration: none }\n\r\n\r       SPAN.hilight1 { font-family: Arial,Helvetica; font-weight: normal; font-size: 10pt; color: #FFFFFF; background: #002682; text-decoration: none }\n\r       SPAN.hilight2 { font-family: Arial,Helvetica; font-weight: normal; font-size: 9pt; color: #FFFFFF; background: #002682; text-decoration: none }\n\r       SPAN.hilight3 { font-family: Arial,Helvetica; font-weight: normal; font-size: 8pt; color: #FFFFFF; background: #002682; text-decoration: none }\n\r       SPAN.hilight4 { font-family: Arial,Helvetica; font-weight: normal; font-size: 8pt; color: #FFFFFF; background: #002682; text-decoration: none }\n\r       SPAN.hilight5 { font-family: Arial,Helvetica; font-weight: normal; font-size: 8pt; color: #FFFFFF; background: #002682; text-decoration: none }\n\r       SPAN.hilight6 { font-family: Arial,Helvetica; font-weight: normal; font-size: 8pt; color: #FFFFFF; background: #002682; text-decoration: none }\n\r</style>\n\r<body bgcolor=\"#FFFFFF\">\n\r  <font face=\"Arial,Helvetica\" size=\"4\"><b>\n\rAutoUpgrader\n\r  </b></font>\n\r  <br>\n\r\n\r  <!-- Place holder for the TOC, do not delete the line below -->\n\r  ");var currentNumArray = currentNumber.split(".");
var currentLevel = currentNumArray.length-1;
var currentIndex = 0;
if (currentNumber == "") currentNumber = top.location.href.substring(top.location.href.lastIndexOf("?")+1,top.location.href.length);
for (i=0; i<tocTab.length; i++) {
if (tocTab[i][2] == currentNumber && tocTab[i][2] != "") {
currentIndex = i;
break;
}
if (tocTab[i][0] == currentNumber) {
currentIndex = i;
break;
}
}
if (currentIndex < tocTab.length-1) {
nextLevel = tocTab[currentIndex+1][0].split(".").length-1;
currentIsExpanded = nextLevel > currentLevel && toDisplay[currentIndex+1];
}
else currentIsExpanded = false;
theHref = (noLink) ? "" : tocTab[currentIndex][2];
theTarget = tocTab[currentIndex][3];
for (i=1; i<tocTab.length; i++) {
if (tocChange) {
thisNumber = tocTab[i][0];
thisNumArray = thisNumber.split(".");
thisLevel = thisNumArray.length-1;
isOnPath = true;
if (thisLevel > 0) {
for (j=0; j<thisLevel; j++) {
isOnPath = (j>currentLevel) ? false : isOnPath && (thisNumArray[j] == currentNumArray[j]);
}
}
toDisplay[i] = (tocChange == 1) ? isOnPath : (isOnPath || toDisplay[i]);
if (thisNumber.indexOf(currentNumber+".")==0 && thisLevel > currentLevel) {
if (currentIsExpanded) toDisplay[i] = false;
else toDisplay[i] = (thisLevel == currentLevel+1);
}
}
}
var scrollY=0, addScroll=tocScroll;
for (i=0; i<tocTab.length; i++) {
if (toDisplay[i]) {
thisNumber = tocTab[i][0];
thisNumArray = thisNumber.split(".");
thisLevel = thisNumArray.length-1;
isCurrent = (i == currentIndex);
if (i < tocTab.length-1) {
nextLevel = tocTab[i+1][0].split(".").length-1;
img = (thisLevel >= nextLevel) ? tocTab[i][4] : ((toDisplay[i+1]) ? tocTab[i][5] : tocTab[i][4]);
}
else img = tocTab[i][4];
thisTextClass = ((thisNumber==currentNumber)?("hilight"):("heading"));
if (addScroll) scrollY+=((thisLevel<2)?mdi:sml)*25;
if (isCurrent) addScroll=false;
toc.document.write("<table border=0 cellspacing=0 cellpadding=2>");
toc.document.write("<tr><td width=" + ((thisLevel+1) * 20) + " align=right valign=top>");
toc.document.write("<a href=\"javaScript:history.go(0)\" onMouseDown=\"parent.reDisplay('" + thisNumber + "'," + tocBehaviour[0] + "," + tocLinks[0] + ",event)\">");
toc.document.write("<img src=\"" + img + "\" border=0></a>");
toc.document.write("</td><td align=left>");
toc.document.write("<a href=\"javaScript:history.go(0)\" onMouseDown=\"parent.reDisplay('" + thisNumber + "'," + tocBehaviour[1] + "," + tocLinks[1] + ",event)\">");
toc.document.write("<span class=\""  + thisTextClass + ((thisLevel>5) ? 6 : thisLevel+1) + "\">");
toc.document.write( ((showNumbers)?(thisNumber+" "):"") + tocTab[i][1]);
toc.document.write("</span></a>");
toc.document.writeln("</td></tr></table>");
}
}
if (!noLink) {
oldLastVisitNumber = oldCurrentNumber;
oldCurrentNumber = currentNumber;
}
toc.document.write("\n\r\n\r  <br>\n\r  <hr>\n\r  <font face=\"Arial,Helvetica\" size=\"1\">\n\rCopyright © 1998-2002, Utilmind Solutions. All Rights Reserved.\n\r  </font>\n\r</body>\n\r</html>");
toc.document.close();
if (tocScroll) toc.scroll(0,scrollY);
if (theHref)
if (theTarget=="top") top.location.href = theHref;
else if (theTarget=="parent") parent.location.href = theHref;
else if (theTarget=="blank") open(theHref,"");
else content.location.href = theHref;
}

