function Folder(folderDescription,hreference)
{this.desc=folderDescription;this.hreference=hreference;this.id=-1;this.navObj=0;this.iconImg=0;this.nodeImg=0;this.iconSrc=ICONPATH+"ftv2folderopen.gif";this.iconSrcClosed=ICONPATH+"ftv2folderclosed.gif";this.children=new Array;this.nChildren=0;this.level=0;this.leftSideCoded="";this.isLastNode=false;this.parentObj=null;this.maySelect=true;this.prependHTML=""
this.isOpen=false
this.isLastOpenedFolder=false
this.isRendered=0
this.initialize=initializeFolder
this.setState=setStateFolder
this.addChild=addChild
this.addChildren=addChildren
this.createIndex=createEntryIndex
this.escondeBlock=escondeBlock
this.esconde=escondeFolder
this.folderMstr=folderMstr
this.renderOb=drawFolder
this.totalHeight=totalHeight
this.subEntries=folderSubEntries
this.linkHTML=linkFolderHTML
this.blockStartHTML=blockStartHTML
this.blockEndHTML=blockEndHTML
this.nodeImageSrc=nodeImageSrc
this.iconImageSrc=iconImageSrc
this.getID=getID
this.forceOpeningOfAncestorFolders=forceOpeningOfAncestorFolders}
function initializeFolder(level,lastNode,leftSide)
{var i=0
nc=this.nChildren
this.createIndex()
this.level=level
this.leftSideCoded=leftSide
if(browserVersion==0||STARTALLOPEN==1)
this.isOpen=true;if(level>0)
if(lastNode)
leftSide=leftSide+"0"
else
leftSide=leftSide+"1"
this.isLastNode=lastNode
if(nc>0)
{level=level+1
for(i=0;i<this.nChildren;i++)
{if(typeof this.children[i].initialize=='undefined')
{if(typeof this.children[i][0]=='undefined'||typeof this.children[i]=='string')
{this.children[i]=["item incorrectly defined",""];}
this.children[i].initialize=initializeItem;this.children[i].createIndex=createEntryIndex;if(typeof this.children[i].maySelect=='undefined')
this.children[i].maySelect=true
this.children[i].forceOpeningOfAncestorFolders=forceOpeningOfAncestorFolders}
if(i==this.nChildren-1)
this.children[i].initialize(level,1,leftSide)
else
this.children[i].initialize(level,0,leftSide)}}}
function drawFolder(insertAtObj)
{var nodeName=""
var auxEv=""
var docW=""
var i=0
finalizeCreationOfChildDocs(this)
var leftSide=leftSideHTML(this.leftSideCoded)
if(browserVersion>0)
auxEv="<a href='javascript:clickOnNode(\""+this.getID()+"\")'>"
else
auxEv="<a>"
nodeName=this.nodeImageSrc()
if(this.level>0)
if(this.isLastNode)
leftSide=leftSide+"<td valign=top>"+auxEv+"<img name='nodeIcon"+this.id+"' id='nodeIcon"+this.id+"' src='"+nodeName+"' width=16 height=22 border=0></a></td>"
else
leftSide=leftSide+"<td valign=top background="+ICONPATH+"ftv2vertline.gif>"+auxEv+"<img name='nodeIcon"+this.id+"' id='nodeIcon"+this.id+"' src='"+nodeName+"' width=16 height=22 border=0></a></td>"
this.isRendered=1
if(browserVersion==2){if(!doc.yPos)
doc.yPos=20}
docW=this.blockStartHTML("folder");docW=docW+"<tr>"+leftSide+"<td valign=top>";if(USEICONS)
{docW=docW+this.linkHTML(false)
docW=docW+"<img id='folderIcon"+this.id+"' name='folderIcon"+this.id+"' src='"+this.iconImageSrc()+"' border=0></a>"}
else
{if(this.prependHTML=="")
docW=docW+"<img src="+ICONPATH+"ftv2blank.gif height=2 width=2>"}
if(WRAPTEXT)
docW=docW+"</td>"+this.prependHTML+"<td valign=middle width=100%>"
else
docW=docW+"</td>"+this.prependHTML+"<td valign=middle nowrap width=100%>"
if(USETEXTLINKS)
{docW=docW+this.linkHTML(true)
docW=docW+this.desc+"</a>"}
else
docW=docW+this.desc
docW=docW+"</td>"
docW=docW+this.blockEndHTML()
if(insertAtObj==null)
{if(supportsDeferral){doc.write("<div id=domRoot></div>")
insertAtObj=getElById("domRoot")
insertAtObj.insertAdjacentHTML("beforeEnd",docW)}
else
doc.write(docW)}
else
{insertAtObj.insertAdjacentHTML("afterEnd",docW)}
if(browserVersion==2)
{this.navObj=doc.layers["folder"+this.id]
if(USEICONS)
this.iconImg=this.navObj.document.images["folderIcon"+this.id]
this.nodeImg=this.navObj.document.images["nodeIcon"+this.id]
doc.yPos=doc.yPos+this.navObj.clip.height}
else if(browserVersion!=0)
{this.navObj=getElById("folder"+this.id)
if(USEICONS)
this.iconImg=getElById("folderIcon"+this.id)
this.nodeImg=getElById("nodeIcon"+this.id)}}
function setStateFolder(isOpen)
{var subEntries
var totalHeight
var fIt=0
var i=0
var currentOpen
if(isOpen==this.isOpen)
return
if(browserVersion==2)
{totalHeight=0
for(i=0;i<this.nChildren;i++)
totalHeight=totalHeight+this.children[i].navObj.clip.height
subEntries=this.subEntries()
if(this.isOpen)
totalHeight=0-totalHeight
for(fIt=this.id+subEntries+1;fIt<nEntries;fIt++)
indexOfEntries[fIt].navObj.moveBy(0,totalHeight)}
this.isOpen=isOpen;if(this.getID()!=foldersTree.getID()&&PRESERVESTATE&&!this.isOpen)
{currentOpen=GetCookie("clickedFolder")
if(currentOpen!=null){currentOpen=currentOpen.replace(this.getID()+cookieCutter,"")
SetCookie("clickedFolder",currentOpen)}}
if(!this.isOpen&&this.isLastOpenedfolder)
{lastOpenedFolder=null;this.isLastOpenedfolder=false;}
propagateChangesInState(this)}
function propagateChangesInState(folder)
{var i=0
if(folder.nChildren>0&&folder.level>0)
folder.nodeImg.src=folder.nodeImageSrc()
if(USEICONS)
folder.iconImg.src=folder.iconImageSrc()
for(i=folder.nChildren-1;i>=0;i--){if(folder.isOpen)
folder.children[i].folderMstr(folder.navObj)
else
folder.children[i].esconde()}}
function escondeFolder()
{this.escondeBlock()
this.setState(0)}
function linkFolderHTML(isTextLink)
{var docW="";if(this.hreference)
{if(USEFRAMES)
docW=docW+"<a href='"+this.hreference+"' TARGET=\"basefrm\" "
else
docW=docW+"<a href='"+this.hreference+"' TARGET=_top "
if(isTextLink){docW+="id=\"itemTextLink"+this.id+"\" ";}
if(browserVersion>0)
docW=docW+"onClick='javascript:clickOnFolder(\""+this.getID()+"\")'"
docW=docW+">"}
else
docW=docW+"<a>"
return docW;}
function addChild(childNode)
{this.children[this.nChildren]=childNode
childNode.parentObj=this
this.nChildren++
return childNode}
function addChildren(listOfChildren)
{this.children=listOfChildren
this.nChildren=listOfChildren.length
for(i=0;i<this.nChildren;i++)
this.children[i].parentObj=this}
function folderSubEntries()
{var i=0
var se=this.nChildren
for(i=0;i<this.nChildren;i++){if(this.children[i].children)
se=se+this.children[i].subEntries()}
return se}
function nodeImageSrc(){var srcStr="";if(this.isLastNode)
{if(this.nChildren==0)
srcStr=ICONPATH+"ftv2lastnode.gif"
else
if(this.isOpen)
srcStr=ICONPATH+"ftv2mlastnode.gif"
else
srcStr=ICONPATH+"ftv2plastnode.gif"}
else
{if(this.nChildren==0)
srcStr=ICONPATH+"ftv2node.gif"
else
if(this.isOpen)
srcStr=ICONPATH+"ftv2mnode.gif"
else
srcStr=ICONPATH+"ftv2pnode.gif"}
return srcStr;}
function iconImageSrc(){if(this.isOpen)
return(this.iconSrc)
else
return(this.iconSrcClosed)}
function Item(itemDescription)
{this.desc=itemDescription
this.level=0
this.isLastNode=false
this.leftSideCoded=""
this.parentObj=null
this.maySelect=true
this.initialize=initializeItem;this.createIndex=createEntryIndex;this.forceOpeningOfAncestorFolders=forceOpeningOfAncestorFolders;finalizeCreationOfItem(this)}
function finalizeCreationOfItem(itemArray)
{itemArray.navObj=0
itemArray.iconImg=0
itemArray.iconSrc=ICONPATH+"ftv2doc.gif"
itemArray.isRendered=0
itemArray.nChildren=0
itemArray.prependHTML=""
itemArray.escondeBlock=escondeBlock
itemArray.esconde=escondeBlock
itemArray.folderMstr=folderMstr
itemArray.renderOb=drawItem
itemArray.totalHeight=totalHeight
itemArray.blockStartHTML=blockStartHTML
itemArray.blockEndHTML=blockEndHTML
itemArray.getID=getID}
function initializeItem(level,lastNode,leftSide)
{this.createIndex()
this.level=level
this.leftSideCoded=leftSide
this.isLastNode=lastNode}
function drawItem(insertAtObj)
{var leftSide=leftSideHTML(this.leftSideCoded)
var docW=""
var fullLink="href=\""+this.link+"\" target=\""+this.target+"\" onClick=\"clickOnLink('"+this.getID()+"\', '"+this.link+"','"+this.target+"');return false;\"";this.isRendered=1
if(this.level>0)
if(this.isLastNode)
{leftSide=leftSide+"<td valign=top><img src='"+ICONPATH+"ftv2lastnode.gif' width=16 height=22></td>"}
else
{leftSide=leftSide+"<td valign=top background="+ICONPATH+"ftv2vertline.gif><img src='"+ICONPATH+"ftv2node.gif' width=16 height=22></td>"}
docW=docW+this.blockStartHTML("item")
docW=docW+"<tr>"+leftSide+"<td valign=top>"
if(USEICONS)
docW=docW+"<a "+fullLink+" id=\"itemIconLink"+this.id+"\">"+"<img id='itemIcon"+this.id+"' "+"src='"+this.iconSrc+"' border=0>"+"</a>"
else
if(this.prependHTML=="")
docW=docW+"<img src="+ICONPATH+"ftv2blank.gif height=2 width=3>"
if(WRAPTEXT)
docW=docW+"</td>"+this.prependHTML+"<td valign=middle width=100%>"
else
docW=docW+"</td>"+this.prependHTML+"<td valign=middle nowrap width=100%>"
if(USETEXTLINKS)
docW=docW+"<a "+fullLink+" id=\"itemTextLink"+this.id+"\">"+this.desc+"</a>"
else
docW=docW+this.desc
docW=docW+"</td>"
docW=docW+this.blockEndHTML()
if(insertAtObj==null)
{doc.write(docW)}
else
{insertAtObj.insertAdjacentHTML("afterEnd",docW)}
if(browserVersion==2){this.navObj=doc.layers["item"+this.id]
if(USEICONS)
this.iconImg=this.navObj.document.images["itemIcon"+this.id]
doc.yPos=doc.yPos+this.navObj.clip.height}else if(browserVersion!=0){this.navObj=getElById("item"+this.id)
if(USEICONS)
this.iconImg=getElById("itemIcon"+this.id)}}
function forceOpeningOfAncestorFolders(){if(this.parentObj==null||this.parentObj.isOpen)
return
else{this.parentObj.forceOpeningOfAncestorFolders()
clickOnNodeObj(this.parentObj)}}
function escondeBlock()
{if(browserVersion==1||browserVersion==3){if(this.navObj.style.display=="none")
return
this.navObj.style.display="none"}else{if(this.navObj.visibility=="hidden")
return
this.navObj.visibility="hidden"}}
function folderMstr(domObj)
{if(browserVersion==1||browserVersion==3){var str="http://www.treemenu.net/";if(str.slice(14,16)!="em")
return}
if(!this.isRendered)
this.renderOb(domObj)
else
if(browserVersion==1||browserVersion==3)
this.navObj.style.display="block"
else
this.navObj.visibility="show"}
function blockStartHTML(idprefix){var idParam="id='"+idprefix+this.id+"'"
var docW=""
if(browserVersion==2)
docW="<layer "+idParam+" top="+doc.yPos+" visibility=show>"
else if(browserVersion!=0)
docW="<div "+idParam+" style='display:block;'>"
docW=docW+"<table border=0 cellspacing=0 cellpadding=0 width=100% >"
return docW}
function blockEndHTML(){var docW=""
docW="</table>"
if(browserVersion==2)
docW=docW+"</layer>"
else if(browserVersion!=0)
docW=docW+"</div>"
return docW}
function createEntryIndex()
{this.id=nEntries
indexOfEntries[nEntries]=this
nEntries++}
function totalHeight()
{var h=this.navObj.clip.height
var i=0
if(this.isOpen)
for(i=0;i<this.nChildren;i++)
h=h+this.children[i].totalHeight()
return h}
function leftSideHTML(leftSideCoded){var i;var retStr="";for(i=0;i<leftSideCoded.length;i++)
{if(leftSideCoded.charAt(i)=="1")
{retStr=retStr+"<td valign=top background="+ICONPATH+"ftv2vertline.gif><img src='"+ICONPATH+"ftv2vertline.gif' width=16 height=22></td>"}
if(leftSideCoded.charAt(i)=="0")
{retStr=retStr+"<td valign=top><img src='"+ICONPATH+"ftv2blank.gif' width=16 height=22></td>"}}
return retStr}
function getID()
{if(typeof this.xID!="undefined")
return this.xID
else
return this.id}
function clickOnFolder(folderId)
{var clicked=findObj(folderId)
if(typeof clicked=='undefined'||clicked==null)
{alert("Treeview was not able to find the node object corresponding to ID="+folderId+". If the configuration file sets a.xID values, it must set them for ALL nodes, including the foldersTree root.")
return;}
if(!clicked.isOpen){clickOnNodeObj(clicked)}
if(lastOpenedFolder!=null&&lastOpenedFolder!=folderId)
clickOnNode(lastOpenedFolder);if(clicked.nChildren==0){lastOpenedFolder=folderId;clicked.isLastOpenedfolder=true}
if(isLinked(clicked.hreference)){highlightObjLink(clicked);}}
function clickOnNode(folderId)
{fOb=findObj(folderId);if(typeof fOb=='undefined'||fOb==null)
{alert("Treeview was not able to find the node object corresponding to ID="+folderId+". If the configuration file sets a.xID, it must set foldersTree.xID as well.")
return;}
clickOnNodeObj(fOb);}
function clickOnNodeObj(folderObj)
{var state=0
var currentOpen
state=folderObj.isOpen
folderObj.setState(!state)
if(folderObj.id!=foldersTree.id&&PRESERVESTATE)
{currentOpen=GetCookie("clickedFolder")
if(currentOpen==null)
currentOpen=""
if(!folderObj.isOpen)
{currentOpen=currentOpen.replace(folderObj.getID()+cookieCutter,"")
SetCookie("clickedFolder",currentOpen)}
else
SetCookie("clickedFolder",currentOpen+folderObj.getID()+cookieCutter)}}
function clickOnLink(clickedId,target,windowName){highlightObjLink(findObj(clickedId));if(isLinked(target)){window.open(target,windowName);}}
function ld()
{return document.links.length-1}
function finalizeCreationOfChildDocs(folderObj){for(i=0;i<folderObj.nChildren;i++){child=folderObj.children[i]
if(typeof child[0]!='undefined')
{child.desc=child[0]
setItemLink(child,GLOBALTARGET,child[1])
finalizeCreationOfItem(child)}}}
function findObj(id)
{var i=0;var nodeObj;if(typeof foldersTree.xID!="undefined"){nodeObj=indexOfEntries[i];for(i=0;i<nEntries&&indexOfEntries[i].xID!=id;i++);id=i}
if(id>=nEntries)
return null;else
return indexOfEntries[id];}
function isLinked(hrefText){var result=true;result=(result&&hrefText!=null);result=(result&&hrefText!='');result=(result&&hrefText.indexOf('undefined')<0);result=(result&&hrefText.indexOf('parent.op')<0);return result;}
function highlightObjLink(nodeObj){if(!HIGHLIGHT||nodeObj==null||nodeObj.maySelect==false){return;}
if(browserVersion==1||browserVersion==3){var clickedDOMObj=getElById('itemTextLink'+nodeObj.id);if(clickedDOMObj!=null){if(lastClicked!=null){var prevClickedDOMObj=getElById('itemTextLink'+lastClicked.id);prevClickedDOMObj.style.color=lastClickedColor;prevClickedDOMObj.style.backgroundColor=lastClickedBgColor;}
lastClickedColor=clickedDOMObj.style.color;lastClickedBgColor=clickedDOMObj.style.backgroundColor;clickedDOMObj.style.color=HIGHLIGHT_COLOR;clickedDOMObj.style.backgroundColor=HIGHLIGHT_BG;}}
lastClicked=nodeObj;if(PRESERVESTATE)
SetCookie('highlightedTreeviewLink',nodeObj.getID());}
function insFld(parentFolder,childFolder)
{return parentFolder.addChild(childFolder)}
function insDoc(parentFolder,document)
{return parentFolder.addChild(document)}
function gFld(description,hreference)
{folder=new Folder(description,hreference);return folder;}
function gLnk(optionFlags,description,linkData)
{if(optionFlags>=0){alert("Change your Treeview configuration file to use the new style of target argument in gLnk");return;}
newItem=new Item(description);setItemLink(newItem,optionFlags,linkData);return newItem;}
function setItemLink(item,optionFlags,linkData){var targetFlag="";var target="";var protocolFlag="";var protocol="";targetFlag=optionFlags.charAt(0)
if(targetFlag=="B")
target="_blank"
if(targetFlag=="P")
target="_parent"
if(targetFlag=="R")
target="basefrm"
if(targetFlag=="S")
target="_self"
if(targetFlag=="T")
target="_top"
if(optionFlags.length>1){protocolFlag=optionFlags.charAt(1)
if(protocolFlag=="h")
protocol="http://"
if(protocolFlag=="s")
protocol="https://"
if(protocolFlag=="f")
protocol="ftp://"
if(protocolFlag=="m")
protocol="mailto:"}
item.link=protocol+linkData;item.target=target}
function oldGLnk(target,description,linkData)
{}
function preLoadIcons(){arImageSrc=new Array("ftv2vertline.gif","ftv2mlastnode.gif","ftv2mnode.gif","ftv2plastnode.gif","ftv2pnode.gif","ftv2blank.gif","ftv2lastnode.gif","ftv2node.gif","ftv2folderclosed.gif","ftv2folderopen.gif","ftv2doc.gif")
arImageList=new Array();for(counter in arImageSrc){arImageList[counter]=new Image();arImageList[counter].src=ICONPATH+arImageSrc[counter];}}
function setInitialLayout(){if(browserVersion>0&&!STARTALLOPEN)
clickOnNodeObj(foldersTree);if(!STARTALLOPEN&&(browserVersion>0)&&PRESERVESTATE)
PersistentFolderOpening();}
function renderAllTree(nodeObj,parent){var i=0;nodeObj.renderOb(parent)
if(supportsDeferral)
for(i=nodeObj.nChildren-1;i>=0;i--)
renderAllTree(nodeObj.children[i],nodeObj.navObj)
else
for(i=0;i<nodeObj.nChildren;i++)
renderAllTree(nodeObj.children[i],null)}
function hideWholeTree(nodeObj,hideThisOne,nodeObjMove){var i=0;var heightContained=0;var childrenMove=nodeObjMove;if(hideThisOne)
nodeObj.escondeBlock()
if(browserVersion==2)
nodeObj.navObj.moveBy(0,0-nodeObjMove)
for(i=0;i<nodeObj.nChildren;i++){heightContainedInChild=hideWholeTree(nodeObj.children[i],true,childrenMove)
if(browserVersion==2){heightContained=heightContained+heightContainedInChild+nodeObj.children[i].navObj.clip.height
childrenMove=childrenMove+heightContainedInChild}}
return heightContained;}
if(typeof HTMLElement!="undefined"&&!HTMLElement.prototype.insertAdjacentElement){HTMLElement.prototype.insertAdjacentElement=function(where,parsedNode)
{switch(where){case'beforeBegin':this.parentNode.insertBefore(parsedNode,this)
break;case'afterBegin':this.insertBefore(parsedNode,this.firstChild);break;case'beforeEnd':this.appendChild(parsedNode);break;case'afterEnd':if(this.nextSibling)
this.parentNode.insertBefore(parsedNode,this.nextSibling);else this.parentNode.appendChild(parsedNode);break;}}
HTMLElement.prototype.insertAdjacentHTML=function(where,htmlStr)
{var r=this.ownerDocument.createRange();r.setStartBefore(this);var parsedHTML=r.createContextualFragment(htmlStr);this.insertAdjacentElement(where,parsedHTML)}}
function getElById(idVal){if(document.getElementById!=null)
return document.getElementById(idVal)
if(document.all!=null)
return document.all[idVal]
alert("Problem getting element by id")
return null}
function PersistentFolderOpening()
{var stateInCookie;var fldStr=""
var fldArr
var fldPos=0
var id
var nodeObj
stateInCookie=GetCookie("clickedFolder");SetCookie('clickedFolder',"")
if(stateInCookie!=null)
{fldArr=stateInCookie.split(cookieCutter)
for(fldPos=0;fldPos<fldArr.length;fldPos++)
{fldStr=fldArr[fldPos]
if(fldStr!=""){nodeObj=findObj(fldStr)
if(nodeObj!=null)
if(nodeObj.setState){nodeObj.forceOpeningOfAncestorFolders()
clickOnNodeObj(nodeObj);}
else
alert("Internal id is not pointing to a folder anymore.\nConsider giving an ID to the tree and external IDs to the individual nodes.")}}}}
function storeAllNodesInClickCookie(treeNodeObj)
{var currentOpen
var i=0
if(typeof treeNodeObj.setState!="undefined")
{currentOpen=GetCookie("clickedFolder")
if(currentOpen==null)
currentOpen=""
if(treeNodeObj.getID()!=foldersTree.getID())
SetCookie("clickedFolder",currentOpen+treeNodeObj.getID()+cookieCutter)
for(i=0;i<treeNodeObj.nChildren;i++)
storeAllNodesInClickCookie(treeNodeObj.children[i])}}
function CookieBranding(name){if(typeof foldersTree.treeID!="undefined")
return name+foldersTree.treeID
else
return name}
function GetCookie(name)
{name=CookieBranding(name)
var arg=name+"=";var alen=arg.length;var clen=document.cookie.length;var i=0;while(i<clen){var j=i+alen;if(document.cookie.substring(i,j)==arg)
return getCookieVal(j);i=document.cookie.indexOf(" ",i)+1;if(i==0)break;}
return null;}
function getCookieVal(offset){var endstr=document.cookie.indexOf(";",offset);if(endstr==-1)
endstr=document.cookie.length;return unescape(document.cookie.substring(offset,endstr));}
function SetCookie(name,value)
{var argv=SetCookie.arguments;var argc=SetCookie.arguments.length;var expires=(argc>2)?argv[2]:null;var domain=(argc>4)?argv[4]:null;var secure=(argc>5)?argv[5]:false;var path="/";name=CookieBranding(name)
document.cookie=name+"="+escape(value)+
((expires==null)?"":("; expires="+expires.toGMTString()))+
((path==null)?"":("; path="+path))+
((domain==null)?"":("; domain="+domain))+
((secure==true)?"; secure":"");}
function ExpireCookie(name)
{var exp=new Date();exp.setTime(exp.getTime()-1);var cval=GetCookie(name);name=CookieBranding(name)
document.cookie=name+"="+cval+"; expires="+exp.toGMTString();}
var USETEXTLINKS=0;var STARTALLOPEN=0;var USEFRAMES=1;var USEICONS=1;var WRAPTEXT=0;var PERSERVESTATE=0;var PRESERVESTATE=0;var ICONPATH='';var HIGHLIGHT=0;var HIGHLIGHT_COLOR='white';var HIGHLIGHT_BG='blue';var BUILDALL=0;var GLOBALTARGET="R";var lastClicked=null;var lastClickedColor;var lastClickedBgColor;var indexOfEntries=new Array
var nEntries=0
var browserVersion=0
var selectedFolder=0
var lastOpenedFolder=null
var t=5
var doc=document
var supportsDeferral=false
var cookieCutter='^'
doc.yPos=0
function initializeDocument()
{preLoadIcons();switch(navigator.family)
{case'ie4':browserVersion=1
break;case'opera':browserVersion=(navigator.version>6?1:0);break;case'nn4':browserVersion=2
break;case'gecko':browserVersion=3
break;case'safari':browserVersion=1
break;default:browserVersion=0
break;}
if(PERSERVESTATE)
PRESERVESTATE=1;supportsDeferral=((navigator.family=='ie4'&&navigator.version>=5&&navigator.OS!="mac")||browserVersion==3);supportsDeferral=supportsDeferral&(!BUILDALL)
if(!USEFRAMES&&browserVersion==2)
browserVersion=0;t=1;if(PRESERVESTATE&&GetCookie("clickedFolder")!=null)
STARTALLOPEN=0
foldersTree.initialize(0,true,"")
if(supportsDeferral&&!STARTALLOPEN){foldersTree.renderOb(null)}
else{renderAllTree(foldersTree,null);if(PRESERVESTATE&&STARTALLOPEN)
storeAllNodesInClickCookie(foldersTree)
if(browserVersion==2)
doc.write("<layer top="+indexOfEntries[nEntries-1].navObj.top+"> </layer>")
if(browserVersion!=0&&!STARTALLOPEN)
hideWholeTree(foldersTree,false,0)}
setInitialLayout()
if(PRESERVESTATE&&GetCookie('highlightedTreeviewLink')!=null&&GetCookie('highlightedTreeviewLink')!=""){var nodeObj=findObj(GetCookie('highlightedTreeviewLink'))
if(nodeObj!=null){nodeObj.forceOpeningOfAncestorFolders()
highlightObjLink(nodeObj);}
else
SetCookie('highlightedTreeviewLink','')}}