| 
     
  
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
 
<html> 
<head> 
  <title>DHTML Tree samples. dhtmlXTree - Initialize object on page</title> 
</head> 
<style> 
  body {font-size:12px} 
  .{font-family:arial;font-size:12px} 
  h1 {cursor:hand;font-size:16px;margin-left:10px;line-height:10px} 
  xmp {color:green;font-size:12px;margin:0px;font-family:courier;background-color:#e6e6fa;padding:2px} 
</style> 
<body> 
  <h1>Initialize object on page</h1> 
  <!-- dhtmlXTree.css --> 
  <style rel="STYLESHEET" type="text/css"> 
.defaultTreeTable{ 
      margin : 0; 
      padding : 0; 
      border : 0; 
} 
.containerTableStyle { overflow : auto;} 
.standartTreeRow{  font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;   font-size : 12px; -moz-user-select: none; } 
.selectedTreeRow{ background-color : navy; color:white; font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;     font-size : 12px;  -moz-user-select: none;  } 
.standartTreeImage{ width:18px; height:18px;  overflow:hidden; border:0; padding:0; margin:0; } 
.hiddenRow { width:1px;   overflow:hidden;  } 
.dragSpanDiv{   font-size : 12px;   border: thin solid 1 1 1 1; } 
   
  </style> 
  <!-- dhtmlXCommon.js --> 
  <script> 
  
function dtmlXMLLoaderObject(funcObject,dhtmlObject){ 
 this.xmlDoc=""; 
 this.onloadAction=funcObject||null; 
 this.mainObject=dhtmlObject||null; 
 return this; 
}; 
  
 dtmlXMLLoaderObject.prototype.waitLoadFunction=function(dhtmlObject){ 
 this.check=function(){ 
 if(!dhtmlObject.xmlDoc.readyState)dhtmlObject.onloadAction(dhtmlObject.mainObject); 
 else{ 
 if(dhtmlObject.xmlDoc.readyState != 4)return false; 
 else dhtmlObject.onloadAction(dhtmlObject.mainObject);} 
}; 
 return this.check; 
}; 
  
  
 dtmlXMLLoaderObject.prototype.getXMLTopNode=function(tagName){ 
 if(this.xmlDoc.responseXML){var temp=this.xmlDoc.responseXML.getElementsByTagName(tagName);var z=temp[0];} 
 else var z=this.xmlDoc.documentElement; 
 if(z)return z; 
 alert("Incorrect XML"); 
 return document.createElement("DIV"); 
}; 
  
  
 dtmlXMLLoaderObject.prototype.loadXMLString=function(xmlString){ 
 try  
{ 
 var parser = new DOMParser(); 
 this.xmlDoc = parser.parseFromString(xmlString,"text/xml"); 
} 
 catch(e){ 
 this.xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); 
 this.xmlDoc.loadXML(xmlString); 
} 
 this.onloadAction(this.mainObject); 
} 
 dtmlXMLLoaderObject.prototype.loadXML=function(filePath){ 
 try  
{ 
 this.xmlDoc = new XMLHttpRequest(); 
 this.xmlDoc.open("GET",filePath,true); 
 this.xmlDoc.onreadystatechange=new this.waitLoadFunction(this); 
 this.xmlDoc.send(null); 
} 
 catch(e){ 
 
 if(document.implementation && document.implementation.createDocument) 
{ 
 this.xmlDoc = document.implementation.createDocument("","",null); 
 this.xmlDoc.onload = new this.waitLoadFunction(this); 
} 
 else 
{ 
 this.xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); 
 this.xmlDoc.async="true"; 
 this.xmlDoc.onreadystatechange=new this.waitLoadFunction(this); 
} 
 this.xmlDoc.load(filePath); 
} 
}; 
  
  
function callerFunction(funcObject,dhtmlObject){ 
 this.handler=function(e){ 
 if(!e)e=event; 
 funcObject(e,dhtmlObject); 
 return true; 
}; 
 return this.handler; 
}; 
 
  
function getAbsoluteLeft(htmlObject){ 
 var xPos = htmlObject.offsetLeft; 
 var temp = htmlObject.offsetParent; 
 while(temp != null){ 
 xPos+= temp.offsetLeft; 
 temp = temp.offsetParent; 
} 
 return xPos; 
} 
  
function getAbsoluteTop(htmlObject){ 
 var yPos = htmlObject.offsetTop; 
 var temp = htmlObject.offsetParent; 
 while(temp != null){ 
 yPos+= temp.offsetTop; 
 temp = temp.offsetParent; 
} 
 return yPos; 
} 
  
  
  
function convertStringToBoolean(inputString){if(typeof(inputString)=="string")inputString=inputString.toLowerCase(); 
 switch(inputString){ 
 case "1": 
 case "true": 
 case "yes": 
 case "y": 
 case 1:  
 case true:  
 return true; 
 break; 
 default: return false; 
} 
} 
 
  
function getUrlSymbol(str){ 
 if(str.indexOf("?")!=-1) 
 return "&" 
 else 
 return "?" 
} 
  
  
function dhtmlDragAndDropObject(){ 
 this.lastLanding=0; 
 this.dragNode=0; 
 this.dragStartNode=0; 
 this.dragStartObject=0; 
 this.tempDOMU=null; 
 this.tempDOMM=null; 
 this.waitDrag=0; 
 if(window.dhtmlDragAndDrop)return window.dhtmlDragAndDrop; 
 window.dhtmlDragAndDrop=this; 
 return this; 
}; 
  
 dhtmlDragAndDropObject.prototype.removeDraggableItem=function(htmlNode){ 
 htmlNode.onmousedown=null; 
 htmlNode.dragStarter=null; 
 htmlNode.dragLanding=null; 
} 
 dhtmlDragAndDropObject.prototype.addDraggableItem=function(htmlNode,dhtmlObject){ 
 htmlNode.onmousedown=this.preCreateDragCopy; 
 htmlNode.dragStarter=dhtmlObject; 
 this.addDragLanding(htmlNode,dhtmlObject); 
} 
 dhtmlDragAndDropObject.prototype.addDragLanding=function(htmlNode,dhtmlObject){ 
 htmlNode.dragLanding=dhtmlObject; 
} 
 dhtmlDragAndDropObject.prototype.preCreateDragCopy=function(e) 
{ 
 if(window.dhtmlDragAndDrop.waitDrag){ 
 window.dhtmlDragAndDrop.waitDrag=0; 
 document.body.onmouseup=window.dhtmlDragAndDrop.tempDOMU; 
 document.body.onmousemove=window.dhtmlDragAndDrop.tempDOMM; 
 return; 
} 
  
 window.dhtmlDragAndDrop.waitDrag=1; 
 window.dhtmlDragAndDrop.tempDOMU=document.body.onmouseup; 
 window.dhtmlDragAndDrop.tempDOMM=document.body.onmousemove; 
 window.dhtmlDragAndDrop.dragStartNode=this; 
 window.dhtmlDragAndDrop.dragStartObject=this.dragStarter; 
 document.body.onmouseup=window.dhtmlDragAndDrop.preCreateDragCopy; 
 document.body.onmousemove=window.dhtmlDragAndDrop.callDrag; 
}; 
 dhtmlDragAndDropObject.prototype.callDrag=function(e){ 
 if(!e)e=window.event; 
 dragger=window.dhtmlDragAndDrop; 
 if(!dragger.dragNode){ 
 dragger.dragNode=dragger.dragStartObject._createDragNode(dragger.dragStartNode); 
 document.body.appendChild(dragger.dragNode); 
 document.body.onmouseup=dragger.stopDrag; 
 dragger.waitDrag=0; 
} 
 
 dragger.dragNode.style.left=e.clientX+15+document.body.scrollLeft;dragger.dragNode.style.top=e.clientY+3+document.body.scrollTop; 
 
 if(!e.srcElement)var z=e.target;else z=e.srcElement; 
 dragger.checkLanding(z); 
} 
 dhtmlDragAndDropObject.prototype.checkLanding=function(htmlObject){ 
 if(htmlObject.dragLanding){if(this.lastLanding)this.lastLanding.dragLanding._dragOut(this.lastLanding); 
 this.lastLanding=htmlObject;this.lastLanding=this.lastLanding.dragLanding._dragIn(this.lastLanding,this.dragStartNode);} 
 else{ 
 if(htmlObject.tagName!="BODY")this.checkLanding(htmlObject.parentNode); 
 else{if(this.lastLanding)this.lastLanding.dragLanding._dragOut(this.lastLanding);this.lastLanding=0;} 
} 
} 
 dhtmlDragAndDropObject.prototype.stopDrag=function(e){ 
 dragger=window.dhtmlDragAndDrop; 
 if(dragger.lastLanding)dragger.lastLanding.dragLanding._drag(dragger.dragStartNode,dragger.dragStartObject,dragger.lastLanding); 
 dragger.lastLanding=0; 
 dragger.dragNode.parentNode.removeChild(dragger.dragNode); 
 dragger.dragNode=0; 
 dragger.dragStartNode=0; 
 dragger.dragStartObject=0; 
 document.body.onmouseup=dragger.tempDOMU; 
 document.body.onmousemove=dragger.tempDOMM; 
 dragger.tempDOMU=null; 
 dragger.tempDOMM=null; 
 dragger.waitDrag=0; 
} 
   
  </script> 
  <!-- dhtmlXTree.js --> 
  <script> 
  
 
  
function dhtmlXTreeObject(htmlObject,width,height,rootId){ 
 if(typeof(htmlObject)!="object") 
 this.parentObject=document.getElementById(htmlObject); 
 else 
 this.parentObject=htmlObject; 
 this.mytype="tree"; 
 this.width=width; 
 this.height=height; 
 this.rootId=rootId; 
  
 this.style_pointer="pointer"; 
 if(navigator.appName == 'Microsoft Internet Explorer')this.style_pointer="hand"; 
  
 this.hfMode=0; 
 this.nodeCut=0; 
 this.XMLsource=0; 
 this.XMLloadingWarning=0; 
 this._globalIdStorage=new Array(); 
 this.globalNodeStorage=new Array(); 
 this._globalIdStorageSize=0; 
 this.treeLinesOn=true; 
 this.checkFuncHandler=0; 
 this.openFuncHandler=0; 
 this.dblclickFuncHandler=0; 
 this.tscheck=false; 
 this.timgen=true; 
  
 this.imPath="treeGfx/"; 
 this.checkArray=new Array("iconUnCheckAll.gif","iconCheckAll.gif","iconCheckGray.gif"); 
 this.lineArray=new Array("line2.gif","line3.gif","line4.gif","blank.gif","blank.gif"); 
 this.minusArray=new Array("minus2.gif","minus3.gif","minus4.gif","minus.gif","minus5.gif"); 
 this.plusArray=new Array("plus2.gif","plus3.gif","plus4.gif","plus.gif","plus5.gif"); 
 this.imageArray=new Array("leaf.gif","folderOpen.gif","folderClosed.gif"); 
 this.cutImg= new Array(0,0,0); 
 this.cutImage="but_cut.gif"; 
  
 this.dragger= new dhtmlDragAndDropObject(); 
 this.htmlNode=new dhtmlXTreeItemObject(this.rootId,"",0,this); 
 this.htmlNode.htmlNode.childNodes[0].childNodes[0].style.display="none"; 
 this.htmlNode.htmlNode.childNodes[0].childNodes[0].childNodes[0].className="hiddenRow"; 
 this.allTree=this._createSelf(); 
 this.allTree.appendChild(this.htmlNode.htmlNode); 
 this.allTree.onselectstart=new Function("return false;"); 
 this.XMLLoader=new dtmlXMLLoaderObject(this._parseXMLTree,this); 
  
 this.dragger.addDragLanding(this.allTree,this); 
 return this; 
}; 
 
  
function dhtmlXTreeItemObject(itemId,itemText,parentObject,treeObject,actionHandler,mode){ 
 this.htmlNode=""; 
 this.acolor=""; 
 this.scolor=""; 
 this.tr=0; 
 this.childsCount=0; 
 this.tempDOMM=0; 
 this.tempDOMU=0; 
 this.dragSpan=0; 
 this.dragMove=0; 
 this.span=0; 
 this.closeble=1; 
 this.childNodes=new Array(); 
 
 this.checkstate=0; 
 this.treeNod=treeObject; 
 this.label=itemText; 
 this.parentObject=parentObject; 
 this.actionHandler=actionHandler; 
 this.images=new Array(treeObject.imageArray[0],treeObject.imageArray[1],treeObject.imageArray[2]); 
 
 
 this.id=treeObject._globalIdStorageAdd(itemId,this); 
 if(this.treeNod.checkBoxOff)this.htmlNode=this.treeNod._createItem(1,this,mode); 
 else this.htmlNode=this.treeNod._createItem(0,this,mode); 
 this.htmlNode.objBelong=this; 
 return this; 
}; 
  
  
  
 dhtmlXTreeObject.prototype._globalIdStorageAdd=function(itemId,itemObject){ 
 if(this._globalIdStorageFind(itemId)){d=new Date();itemId=d.valueOf()+"_"+itemId;return this._globalIdStorageAdd(itemId,itemObject);} 
 this._globalIdStorage[this._globalIdStorageSize]=itemId; 
 this.globalNodeStorage[this._globalIdStorageSize]=itemObject; 
 this._globalIdStorageSize++; 
 return itemId; 
}; 
  
 dhtmlXTreeObject.prototype._globalIdStorageSub=function(itemId){ 
 for(var i=0;i<this._globalIdStorageSize;i++) 
 if(this._globalIdStorage[i]==itemId) 
{ 
 this._globalIdStorage[i]=this._globalIdStorage[this._globalIdStorageSize-1]; 
 this.globalNodeStorage[i]=this.globalNodeStorage[this._globalIdStorageSize-1]; 
 this._globalIdStorageSize--; 
 this._globalIdStorage[this._globalIdStorageSize]=0; 
 this.globalNodeStorage[this._globalIdStorageSize]=0; 
} 
}; 
  
  
 dhtmlXTreeObject.prototype._globalIdStorageFind=function(itemId){ 
 for(var i=0;i<this._globalIdStorageSize;i++) 
 if(this._globalIdStorage[i]==itemId) 
 return this.globalNodeStorage[i]; 
 return 0; 
}; 
 
 
  
  
 dhtmlXTreeObject.prototype._drawNewTr=function(htmlObject) 
{ 
 var tr =document.createElement('tr'); 
 var td1=document.createElement('td'); 
 var td2=document.createElement('td'); 
 td1.appendChild(document.createTextNode(" ")); 
 td2.colSpan=3;td2.appendChild(htmlObject);tr.appendChild(td1);tr.appendChild(td2); 
 return tr; 
}; 
  
 dhtmlXTreeObject.prototype.loadXMLString=function(xmlString){this.XMLLoader.loadXMLString(xmlString);}; 
  
 dhtmlXTreeObject.prototype.loadXML=function(file){this.XMLLoader.loadXML(file);}; 
  
 dhtmlXTreeObject.prototype._attachChildNode=function(parentObject,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,childs,beforeNode){ 
 if(beforeNode)parentObject=beforeNode.parentObject; 
 if(((parentObject.XMLload==0)&&(this.XMLsource))&&(!this.XMLloadingWarning)) 
{ 
 parentObject.XMLload=1;this.loadXML(this.XMLsource+getUrlSymbol(this.XMLsource)+"itemId="+escape(parentObject.itemId)); 
} 
  
 var Count=parentObject.childsCount; 
 var Nodes=parentObject.childNodes; 
  
 if((!itemActionHandler)&&(this.aFunc))itemActionHandler=this.aFunc; 
 Nodes[Count]=new dhtmlXTreeItemObject(itemId,itemText,parentObject,this,itemActionHandler,1); 
  
 if(image1)Nodes[Count].images[0]=image1; 
 if(image2)Nodes[Count].images[1]=image2; 
 if(image3)Nodes[Count].images[2]=image3; 
  
 parentObject.childsCount++; 
 var tr=this._drawNewTr(Nodes[Count].htmlNode); 
 if(this.XMLloadingWarning) 
 Nodes[Count].htmlNode.parentNode.parentNode.style.display="none"; 
  
 if(optionStr){ 
 var tempStr=optionStr.split(","); 
 for(var i=0;i<tempStr.length;i++) 
{ 
 switch(tempStr[i]) 
{ 
 case "TOP": if(parentObject.childsCount>1)beforeNode=parentObject.htmlNode.childNodes[0].childNodes[1].nodem.previousSibling;break; 
} 
}; 
}; 
  
 if((beforeNode)&&(beforeNode.tr.nextSibling)) 
 parentObject.htmlNode.childNodes[0].insertBefore(tr,beforeNode.tr.nextSibling); 
 else 
 parentObject.htmlNode.childNodes[0].appendChild(tr); 
 
 if(this.XMLsource)if((childs)&&(childs!=0))Nodes[Count].XMLload=0;else Nodes[Count].XMLload=1; 
 
 Nodes[Count].tr=tr; 
 tr.nodem=Nodes[Count]; 
 
 if(parentObject.itemId==0) 
 tr.childNodes[0].className="hitemIddenRow"; 
  
 if(optionStr){ 
 var tempStr=optionStr.split(","); 
 for(var i=0;i<tempStr.length;i++) 
{ 
 switch(tempStr[i]) 
{ 
 case "SELECT": this.selectItem(itemId,false);break; 
 case "CALL": this.selectItem(itemId,true);break; 
 case "CHILD": Nodes[Count].XMLload=0;break; 
 case "CHECKED":  
 if(this.XMLloadingWarning) 
 this.setCheckList+=itemId; 
 else 
 this.setCheck(itemId,1); 
 break; 
 case "OPEN": Nodes[Count].openMe=1;break; 
} 
}; 
}; 
 
 if(!this.XMLloadingWarning) 
{ 
 if(this._getOpenState(parentObject)<0) 
 this.openItem(parentObject.id); 
  
 if(beforeNode) 
{ 
 this._correctPlus(beforeNode); 
 this._correctLine(beforeNode); 
} 
 this._correctPlus(parentObject); 
 this._correctLine(parentObject); 
 this._correctPlus(Nodes[Count]); 
 if(parentObject.childsCount>=2) 
{ 
 this._correctPlus(Nodes[parentObject.childsCount-2]); 
 this._correctLine(Nodes[parentObject.childsCount-2]); 
} 
 if(parentObject.childsCount!=2)this._correctPlus(Nodes[0]); 
 if(this.tscheck)this._correctCheckStates(parentObject); 
} 
  
 return Nodes[Count]; 
}; 
 
  
 dhtmlXTreeObject.prototype.insertNewItem=function(parentId,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,childs){ 
 var parentObject=this._globalIdStorageFind(parentId); 
 if(!parentObject)return(-1); 
 return this._attachChildNode(parentObject,itemId,itemText,itemActionHandler,image1,image2,image3,optionStr,childs); 
}; 
  
 dhtmlXTreeObject.prototype._parseXMLTree=function(dhtmlObject,node,parentId,level){ 
 dhtmlObject.XMLloadingWarning=1; 
 var nodeAskingCall=""; 
 if(!node){ 
 node=dhtmlObject.XMLLoader.getXMLTopNode("tree"); 
 parentId=node.getAttribute("id"); 
 dhtmlObject.setCheckList=""; 
} 
 
 for(var i=0;i<node.childNodes.length;i++) 
{ 
 if((node.childNodes[i].nodeType==1)&&(node.childNodes[i].tagName == "item")) 
{ 
 var name=node.childNodes[i].getAttribute("text"); 
 var cId=node.childNodes[i].getAttribute("id"); 
  
 var im0=node.childNodes[i].getAttribute("im0"); 
 var im1=node.childNodes[i].getAttribute("im1"); 
 var im2=node.childNodes[i].getAttribute("im2"); 
  
 var aColor=node.childNodes[i].getAttribute("aCol"); 
 var sColor=node.childNodes[i].getAttribute("sCol"); 
  
 var chd=node.childNodes[i].getAttribute("child"); 
  
 var atop=node.childNodes[i].getAttribute("top"); 
 var aopen=node.childNodes[i].getAttribute("open"); 
 var aselect=node.childNodes[i].getAttribute("select"); 
 var acall=node.childNodes[i].getAttribute("call"); 
 var achecked=node.childNodes[i].getAttribute("checked"); 
 var closeable=node.childNodes[i].getAttribute("closeable"); 
  
 var zST=""; 
 if(aselect)zST+=",SELECT"; 
 if(atop)zST+=",TOP"; 
 if(acall)nodeAskingCall=cId; 
 if(achecked)zST+=",CHECKED"; 
 if((aopen)&&(aopen!="0"))zST+=",OPEN"; 
  
 var temp=dhtmlObject._globalIdStorageFind(parentId); 
 temp.XMLload=1; 
 dhtmlObject.insertNewItem(parentId,cId,name,0,im0,im1,im2,zST,chd); 
 if(dhtmlObject.parserExtension)dhtmlObject.parserExtension._parseExtension(node.childNodes[i],dhtmlObject.parserExtension,cId,parentId); 
 dhtmlObject.setItemColor(cId,aColor,sColor); 
 if((closeable=="0")||(closeable=="1"))dhtmlObject.setItemCloseable(cId,closeable); 
 var zcall=dhtmlObject._parseXMLTree(dhtmlObject,node.childNodes[i],cId,1); 
 if(zcall!="")nodeAskingCall=zcall; 
} 
 else 
 if((node.childNodes[i].nodeType==1)&&(node.childNodes[i].tagName == "userdata")) 
{ 
 var name=node.childNodes[i].getAttribute("name"); 
 if((name)&&(node.childNodes[i].childNodes[0])){ 
 dhtmlObject.setUserData(parentId,name,node.childNodes[i].childNodes[0].data); 
}; 
}; 
}; 
 
 if(!level){ 
 dhtmlObject.lastLoadedXMLId=parentId; 
 dhtmlObject._redrawFrom(dhtmlObject); 
 dhtmlObject.XMLloadingWarning=0; 
 var chArr=dhtmlObject.setCheckList.split(","); 
 for(var n=0;n<chArr.length;n++) 
 if(chArr[n])dhtmlObject.setCheck(chArr[n],1); 
 if(nodeAskingCall!="")dhtmlObject.selectItem(nodeAskingCall,true); 
} 
 return nodeAskingCall; 
}; 
  
  
 dhtmlXTreeObject.prototype._redrawFrom=function(dhtmlObject,itemObject){ 
 if(!itemObject){ 
 var tempx=dhtmlObject._globalIdStorageFind(dhtmlObject.lastLoadedXMLId); 
 dhtmlObject.lastLoadedXMLId=-1; 
 if(!tempx)return 0; 
} 
 else tempx=itemObject; 
 for(var i=0;i<tempx.childsCount;i++) 
{ 
 if(!itemObject)tempx.childNodes[i].htmlNode.parentNode.parentNode.style.display=""; 
 if(tempx.childNodes[i].openMe==1) 
 for(var zy=0;zy<tempx.childNodes[i].childNodes.length;zy++) 
 tempx.childNodes[i].htmlNode.childNodes[0].childNodes[zy+1].style.display=""; 
 dhtmlObject._redrawFrom(dhtmlObject,tempx.childNodes[i]); 
 dhtmlObject._correctLine(tempx.childNodes[i]); 
 dhtmlObject._correctPlus(tempx.childNodes[i]); 
}; 
 dhtmlObject._correctLine(tempx); 
 dhtmlObject._correctPlus(tempx); 
}; 
 
  
 dhtmlXTreeObject.prototype._createSelf=function(){ 
 var div=document.createElement('div'); 
 div.className="containerTableStyle"; 
 div.style.width=this.width; 
 div.style.height=this.height; 
 this.parentObject.appendChild(div); 
 return div; 
}; 
 
  
 dhtmlXTreeObject.prototype._xcloseAll=function(itemObject) 
{ 
 if(this.rootId!=itemObject.id)this._HideShow(itemObject,1); 
 for(var i=0;i<itemObject.childsCount;i++) 
 this._xcloseAll(itemObject.childNodes[i]); 
}; 
  
 dhtmlXTreeObject.prototype._xopenAll=function(itemObject) 
{ 
 this._HideShow(itemObject,2); 
 for(var i=0;i<itemObject.childsCount;i++) 
 this._xopenAll(itemObject.childNodes[i]); 
}; 
  
 dhtmlXTreeObject.prototype._correctPlus=function(itemObject){ 
 var workArray=this.lineArray; 
 if((this.XMLsource)&&(!itemObject.XMLload)) 
{ 
 var workArray=this.plusArray; 
 itemObject.htmlNode.childNodes[0].childNodes[0].childNodes[2].childNodes[0].src=this.imPath+itemObject.images[2]; 
} 
 else 
try{ 
 if(itemObject.childsCount) 
{ 
 if(itemObject.htmlNode.childNodes[0].childNodes[1].style.display!="none") 
{ 
 var workArray=this.minusArray; 
 itemObject.htmlNode.childNodes[0].childNodes[0].childNodes[2].childNodes[0].src=this.imPath+itemObject.images[1]; 
} 
 else 
{ 
 var workArray=this.plusArray; 
 itemObject.htmlNode.childNodes[0].childNodes[0].childNodes[2].childNodes[0].src=this.imPath+itemObject.images[2]; 
} 
} 
 else 
{ 
 itemObject.htmlNode.childNodes[0].childNodes[0].childNodes[2].childNodes[0].src=this.imPath+itemObject.images[0]; 
} 
} 
 catch(e){}; 
  
 var tempNum=2; 
 if(!itemObject.treeNod.treeLinesOn)itemObject.htmlNode.childNodes[0].childNodes[0].childNodes[0].childNodes[0].src=this.imPath+workArray[3]; 
 else{ 
 if(itemObject.parentObject)tempNum=this._getCountStatus(itemObject.id,itemObject.parentObject); 
 itemObject.htmlNode.childNodes[0].childNodes[0].childNodes[0].childNodes[0].src=this.imPath+workArray[tempNum]; 
} 
}; 
  
 dhtmlXTreeObject.prototype._correctLine=function(itemObject){ 
 var sNode=itemObject.parentObject; 
 try{ 
 if(sNode) 
 if((this._getLineStatus(itemObject.id,sNode)==0)||(!this.treeLinesOn)) 
{ 
 for(var i=1;i<=itemObject.childsCount;i++) 
{ 
 itemObject.htmlNode.childNodes[0].childNodes[i].childNodes[0].style.backgroundImage=""; 
 itemObject.htmlNode.childNodes[0].childNodes[i].childNodes[0].style.backgroundRepeat=""; 
} 
} 
 else 
 for(var i=1;i<=itemObject.childsCount;i++) 
{ 
 itemObject.htmlNode.childNodes[0].childNodes[i].childNodes[0].style.backgroundImage="url("+this.imPath+"line1.gif)"; 
 itemObject.htmlNode.childNodes[0].childNodes[i].childNodes[0].style.backgroundRepeat="repeat-y"; 
} 
} 
 catch(e){}; 
}; 
  
 dhtmlXTreeObject.prototype._getCountStatus=function(itemId,itemObject){ 
 try{ 
 if(itemObject.childsCount<=1){if(itemObject.id==this.rootId)return 4;else return 0;} 
  
 if(itemObject.htmlNode.childNodes[0].childNodes[1].nodem.id==itemId)if(!itemObject.id)return 2;else return 1; 
 if(itemObject.htmlNode.childNodes[0].childNodes[itemObject.childsCount].nodem.id==itemId)return 0; 
} 
 catch(e){}; 
 return 1; 
}; 
  
 dhtmlXTreeObject.prototype._getLineStatus =function(itemId,itemObject){ 
 if(itemObject.htmlNode.childNodes[0].childNodes[itemObject.childsCount].nodem.id==itemId)return 0; 
 return 1; 
} 
 
  
 dhtmlXTreeObject.prototype._HideShow=function(itemObject,mode){ 
 if(((this.XMLsource)&&(!itemObject.XMLload))&&(!mode)){itemObject.XMLload=1;this.loadXML(this.XMLsource+getUrlSymbol(this.XMLsource)+"id="+escape(itemObject.id));return;}; 
 var Nodes=itemObject.htmlNode.childNodes[0].childNodes;var Count=Nodes.length; 
 if(Count>1){ 
 if(((Nodes[1].style.display!="none")||(mode==1))&&(mode!=2))nodestyle="none";else nodestyle=""; 
 for(var i=1;i<Count;i++) 
 Nodes[i].style.display=nodestyle; 
} 
 this._correctPlus(itemObject); 
} 
  
 dhtmlXTreeObject.prototype._getOpenState=function(itemObject){ 
 var z=itemObject.htmlNode.childNodes[0].childNodes; 
 if(z.length<=1)return 0; 
 if(z[1].style.display!="none")return 1; 
 else return -1; 
} 
 
  
  
  
 dhtmlXTreeObject.prototype.onRowClick2=function(){ 
 if(this.parentObject.treeNod.dblclickFuncHandler)if(!this.parentObject.treeNod.dblclickFuncHandler(this.parentObject.id))return 0; 
 if((this.parentObject.closeble)&&(this.parentObject.closeble!="0")) 
 this.parentObject.treeNod._HideShow(this.parentObject); 
 else 
 this.parentObject.treeNod._HideShow(this.parentObject,2); 
}; 
  
 dhtmlXTreeObject.prototype.onRowClick=function(){ 
 if(this.parentObject.treeNod.openFuncHandler)if(!this.parentObject.treeNod.openFuncHandler(this.parentObject.id,this.parentObject.treeNod._getOpenState(this.parentObject)))return 0; 
 if((this.parentObject.closeble)&&(this.parentObject.closeble!="0")) 
 this.parentObject.treeNod._HideShow(this.parentObject); 
 else 
 this.parentObject.treeNod._HideShow(this.parentObject,2); 
}; 
  
  
 dhtmlXTreeObject.prototype.onRowSelect=function(e,htmlObject,mode){ 
 if(!htmlObject)htmlObject=this; 
 htmlObject.childNodes[0].className="selectedTreeRow"; 
 if(htmlObject.parentObject.scolor)htmlObject.parentObject.span.style.color=htmlObject.parentObject.scolor; 
 if((htmlObject.parentObject.treeNod.lastSelected)&&(htmlObject.parentObject.treeNod.lastSelected!=htmlObject)) 
{ 
 htmlObject.parentObject.treeNod.lastSelected.childNodes[0].className="standartTreeRow"; 
 if(htmlObject.parentObject.treeNod.lastSelected.parentObject.acolor)htmlObject.parentObject.treeNod.lastSelected.parentObject.span.style.color=htmlObject.parentObject.treeNod.lastSelected.parentObject.acolor; 
} 
 htmlObject.parentObject.treeNod.lastSelected=htmlObject; 
 if(!mode){if(htmlObject.parentObject.actionHandler)htmlObject.parentObject.actionHandler(htmlObject.parentObject.id);} 
}; 
  
 
 
 
  
  
dhtmlXTreeObject.prototype._correctCheckStates=function(dhtmlObject){ 
 if(!this.tscheck)return; 
 if(dhtmlObject.id==this.rootId)return; 
 var act=dhtmlObject.htmlNode.childNodes[0].childNodes; 
 var flag1=0;var flag2=0; 
 if(act.length<2)return; 
 for(var i=1;i<act.length;i++) 
 if(act[i].nodem.checkstate==0)flag1=1; 
 else if(act[i].nodem.checkstate==1)flag2=1; 
 else{flag1=1;flag2=1;break;} 
 
 if((flag1)&&(flag2))this._setCheck(dhtmlObject,"notsure"); 
 else if(flag1)this._setCheck(dhtmlObject,false); 
 else this._setCheck(dhtmlObject,true); 
  
 this._correctCheckStates(dhtmlObject.parentObject); 
} 
  
  
 dhtmlXTreeObject.prototype.onCheckBoxClick=function(e){ 
 if(this.treeNod.tscheck) 
 if(this.parentObject.checkstate==1)this.treeNod._setSubChecked(false,this.parentObject); 
 else this.treeNod._setSubChecked(true,this.parentObject); 
 else 
 if(this.parentObject.checkstate==1)this.treeNod._setCheck(this.parentObject,false); 
 else this.treeNod._setCheck(this.parentObject,true); 
 this.treeNod._correctCheckStates(this.parentObject.parentObject); 
 if(this.treeNod.checkFuncHandler)return(this.treeNod.checkFuncHandler(this.parentObject.id,this.parentObject.checkstate)); 
 else return true; 
}; 
  
 dhtmlXTreeObject.prototype._createItem=function(acheck,itemObject,mode){ 
 var table=document.createElement('table'); 
 table.cellSpacing=0;table.cellPadding=0; 
 table.border=0; 
 if(this.hfMode)table.style.tableLayout="fixed"; 
 table.style.margin=0;table.style.padding=0; 
  
 var tbody=document.createElement('tbody'); 
 var tr=document.createElement('tr'); 
 var td1=document.createElement('td'); 
 td1.className="standartTreeImage"; 
 var img0=document.createElement("img"); 
 img0.border="0";td1.appendChild(img0);img0.style.padding=0; 
  
 var td11=document.createElement('td'); 
 var inp=document.createElement("img");inp.checked=0;inp.src=this.imPath+this.checkArray[0];inp.style.width="16px";inp.style.height="16px"; 
 
 if(!acheck)inp.style.display="none"; 
 td11.appendChild(inp); 
 td11.width="16px"; 
 inp.onclick=this.onCheckBoxClick; 
 inp.treeNod=this; 
 inp.parentObject=itemObject; 
 
 var td12=document.createElement('td'); 
 td12.className="standartTreeImage"; 
 var img=document.createElement("img");img.onmousedown=this._preventNsDrag; 
 img.border="0"; 
 if(!mode)img.src=this.imPath+this.imageArray[0]; 
 td12.appendChild(img);img.style.padding=0;img.style.margin=0; 
 if(this.timgen) 
{img.style.width="18px";img.style.height="18px";} 
 else 
{img.style.width="0px";img.style.height="0px";} 
 
  
 var td2=document.createElement('td'); 
 td2.noWrap=true; 
 itemObject.span=document.createElement('span'); 
 itemObject.span.className="standartTreeRow"; 
 td2.style.width="100%"; 
 itemObject.span.appendChild(document.createTextNode(itemObject.label)); 
 td2.appendChild(itemObject.span); 
 td2.parentObject=itemObject;td1.parentObject=itemObject; 
 td2.onclick=this.onRowSelect;td1.onclick=this.onRowClick;td2.ondblclick=this.onRowClick2; 
  
 if(this.dragAndDropOff)this.dragger.addDraggableItem(td2,this); 
  
 td2.style.verticalAlign=""; 
 td2.style.cursor=this.style_pointer; 
 tr.appendChild(td1);tr.appendChild(td11);tr.appendChild(td12); 
 tr.appendChild(td2); 
 tbody.appendChild(tr); 
 table.appendChild(tbody); 
 return table; 
}; 
  
  
  
 dhtmlXTreeObject.prototype.setImagePath=function(newPath){this.imPath=newPath;}; 
  
  
  
 dhtmlXTreeObject.prototype.setOnClickHandler=function(func){if(typeof(func)=="function")this.aFunc=func;else this.aFunc=eval(func);}; 
  
  
 dhtmlXTreeObject.prototype.setXMLAutoLoading=function(filePath){this.XMLsource=filePath;}; 
  
 dhtmlXTreeObject.prototype.setOnCheckHandler=function(func){if(typeof(func)=="function")this.checkFuncHandler=func;else this.checkFuncHandler=eval(func);}; 
  
  
  
 dhtmlXTreeObject.prototype.setOnOpenHandler=function(func){if(typeof(func)=="function")this.openFuncHandler=func;else this.openFuncHandler=eval(func);}; 
  
  
 dhtmlXTreeObject.prototype.setOnDblClickHandler=function(func){if(typeof(func)=="function")this.dblclickFuncHandler=func;else this.dblclickFuncHandler=eval(func);}; 
  
  
  
  
 
 
 
 
 
  
 dhtmlXTreeObject.prototype.openAllItems=function(itemId) 
{ 
 var temp=this._globalIdStorageFind(itemId); 
 if(!temp)return 0; 
 this._xopenAll(temp); 
}; 
  
  
 dhtmlXTreeObject.prototype.getOpenState=function(itemId){ 
 var temp=this._globalIdStorageFind(itemId); 
 if(!temp)return ""; 
 return this._getOpenState(temp); 
}; 
  
  
 dhtmlXTreeObject.prototype.closeAllItems=function(itemId) 
{ 
 var temp=this._globalIdStorageFind(itemId); 
 if(!temp)return 0; 
 this._xcloseAll(temp); 
}; 
  
  
  
 dhtmlXTreeObject.prototype.setUserData=function(itemId,name,value){ 
 var sNode=this._globalIdStorageFind(itemId); 
 if(!sNode)return; 
 if(name=="hint")sNode.htmlNode.childNodes[0].childNodes[0].title=value; 
 sNode[name]=value; 
}; 
  
  
 dhtmlXTreeObject.prototype.getUserData=function(itemId,name){ 
 var sNode=this._globalIdStorageFind(itemId); 
 if(!sNode)return; 
 return eval("sNode."+name); 
}; 
  
  
 dhtmlXTreeObject.prototype.getSelectedItemId=function() 
{ 
 if(this.lastSelected) 
 if(this._globalIdStorageFind(this.lastSelected.parentObject.id)) 
 return this.lastSelected.parentObject.id; 
 return(""); 
}; 
  
  
 dhtmlXTreeObject.prototype.getItemColor=function(itemId) 
{ 
 var temp=this._globalIdStorageFind(itemId); 
 if(!temp)return 0; 
 
 var res= new Object(); 
 if(temp.acolor)res.acolor=temp.acolor; 
 if(temp.acolor)res.scolor=temp.scolor; 
 return res; 
}; 
  
 dhtmlXTreeObject.prototype.setItemColor=function(itemId,defaultColor,selectedColor) 
{ 
 var temp=this._globalIdStorageFind(itemId); 
 if(!temp)return 0; 
 else{ 
 if((this.lastSelected)&&(temp.tr==this.lastSelected.parentObject.tr)) 
{if(selectedColor)temp.span.style.color=selectedColor;} 
 else  
{if(defaultColor)temp.span.style.color=defaultColor;} 
  
 if(selectedColor)temp.scolor=selectedColor; 
 if(defaultColor)temp.acolor=defaultColor; 
} 
}; 
  
  
 dhtmlXTreeObject.prototype.getItemText=function(itemId) 
{ 
 var temp=this._globalIdStorageFind(itemId); 
 if(!temp)return 0; 
 return(temp.htmlNode.childNodes[0].childNodes[0].childNodes[3].childNodes[0].innerHTML); 
}; 
  
 dhtmlXTreeObject.prototype.getParentId=function(itemId) 
{ 
 var temp=this._globalIdStorageFind(itemId); 
 if((!temp)||(!temp.parentObject))return ""; 
 return temp.parentObject.id; 
}; 
 
 
 
  
 dhtmlXTreeObject.prototype.changeItemId=function(itemId,newItemId) 
{ 
 var temp=this._globalIdStorageFind(itemId); 
 if(!temp)return 0; 
 temp.id=newItemId; 
 for(var i=0;i<this._globalIdStorageSize;i++) 
 if(this._globalIdStorage[i]==itemId) 
{ 
 this._globalIdStorage[i]=newItemId; 
} 
}; 
 
  
  
 dhtmlXTreeObject.prototype.doCut=function(){ 
 if(this.nodeCut)this.clearCut(); 
 this.nodeCut=this.lastSelected; 
 if(this.nodeCut) 
{ 
 var tempa=this.nodeCut.parentObject; 
 this.cutImg[0]=tempa.images[0]; 
 this.cutImg[1]=tempa.images[1]; 
 this.cutImg[2]=tempa.images[2]; 
 tempa.images[0]=tempa.images[1]=tempa.images[2]=this.cutImage; 
 this._correctPlus(tempa); 
} 
}; 
  
  
 dhtmlXTreeObject.prototype.doPaste=function(itemId){ 
 var temp=this._globalIdStorageFind(itemId); 
 if(!temp)return 0; 
 if(this.nodeCut){ 
 if((!this._checkParenNodes(this.nodeCut.parentObject.id,temp))&&(id!=this.nodeCut.parentObject.parentObject.id)) 
 this._moveNode(temp,this.nodeCut.parentObject); 
 this.clearCut(); 
} 
}; 
  
  
 dhtmlXTreeObject.prototype.clearCut=function(){ 
 if(this.nodeCut) 
{ 
 var tempa=this.nodeCut.parentObject; 
 tempa.images[0]=this.cutImg[0]; 
 tempa.images[1]=this.cutImg[1]; 
 tempa.images[2]=this.cutImg[2]; 
 if(tempa.parentObject)this._correctPlus(tempa); 
 if(tempa.parentObject)this._correctLine(tempa); 
 this.nodeCut=0; 
} 
}; 
  
 
 
  
 dhtmlXTreeObject.prototype._moveNode=function(itemObject,targetObject){ 
 if(this.dragFunc)if(!this.dragFunc(itemObject.id,targetObject.id))return false; 
 if((targetObject.XMLload==0)&&(this.XMLsource)) 
{ 
 targetObject.XMLload=1;this.loadXML(this.XMLsource+getUrlSymbol(this.XMLsource)+"id="+escape(targetObject.id)); 
} 
 this.openItem(targetObject.id); 
 var oldTree=itemObject.treeNod; 
 var c=itemObject.parentObject.childsCount; 
 var z=itemObject.parentObject; 
 var Count=targetObject.childsCount;var Nodes=targetObject.childNodes; 
 Nodes[Count]=itemObject; 
 itemObject.treeNod=targetObject.treeNod; 
 targetObject.childsCount++; 
  
 var tr=this._drawNewTr(Nodes[Count].htmlNode); 
 targetObject.htmlNode.childNodes[0].appendChild(tr); 
  
 itemObject.parentObject.htmlNode.childNodes[0].removeChild(itemObject.tr); 
  
 
 for(var i=0;i<z.childsCount;i++) 
 if(z.childNodes[i].id==itemObject.id){ 
 z.childNodes[i]=0; 
 break;} 
 oldTree._compressChildList(z.childsCount,z.childNodes); 
 z.childsCount--; 
 itemObject.tr=tr; 
 tr.nodem=itemObject; 
 
 itemObject.parentObject=targetObject; 
 if(oldTree!=targetObject.treeNod){if(itemObject.treeNod._registerBranch(itemObject,oldTree))return;this._clearStyles(itemObject);}; 
  
  
 if(c>1){oldTree._correctPlus(z.childNodes[c-2]); 
 oldTree._correctLine(z.childNodes[c-2]);} 
 this._correctPlus(targetObject); 
 this._correctLine(targetObject); 
 oldTree._correctPlus(z); 
 this._correctLine(itemObject); 
 this._correctPlus(Nodes[Count]); 
 if(targetObject.childsCount>=2) 
{ 
 this._correctPlus(Nodes[targetObject.childsCount-2]); 
 this._correctLine(Nodes[targetObject.childsCount-2]); 
} 
 if(this.tscheck)this._correctCheckStates(targetObject); 
 if(oldTree.tscheck)oldTree._correctCheckStates(z); 
 return true; 
}; 
  
  
dhtmlXTreeObject.prototype._checkParenNodes=function(itemId,htmlObject,shtmlObject){ 
 if(shtmlObject){if(shtmlObject.parentObject.id==htmlObject.id)return 1;} 
 if(htmlObject.id==itemId)return 1; 
 if(htmlObject.parentObject)return this._checkParenNodes(itemId,htmlObject.parentObject);else return 0; 
}; 
  
  
  
  
 dhtmlXTreeObject.prototype._clearStyles=function(itemObject){ 
 var td1=itemObject.htmlNode.childNodes[0].childNodes[0].childNodes[1]; 
 var td3=td1.nextSibling.nextSibling; 
  
 if(this.checkBoxOff){td1.childNodes[0].style.display="";td1.childNodes[0].onclick=this.onCheckBoxClick;} 
 else td1.childNodes[0].style.display="none"; 
 td1.childNodes[0].treeNod=this; 
  
 this.dragger.removeDraggableItem(td3); 
 if(this.dragAndDropOff)this.dragger.addDraggableItem(td3,this); 
 td3.childNodes[0].className="standartTreeRow"; 
 td3.onclick=this.onRowSelect;td3.ondblclick=this.onRowClick2; 
 td1.previousSibling.onclick=this.onRowClick; 
 
 
 this._correctLine(itemObject); 
 this._correctPlus(itemObject); 
 for(var i=0;i<itemObject.childsCount;i++)this._clearStyles(itemObject.childNodes[i]); 
}; 
  
 dhtmlXTreeObject.prototype._registerBranch=function(itemObject,oldTree){ 
  
 itemObject.id=this._globalIdStorageAdd(itemObject.id,itemObject); 
 itemObject.treeNod=this; 
 if(oldTree)oldTree._globalIdStorageSub(itemObject.id); 
 for(var i=0;i<itemObject.childsCount;i++) 
 this._registerBranch(itemObject.childNodes[i],oldTree); 
 return 0; 
}; 
  
  
  
 dhtmlXTreeObject.prototype.enableThreeStateCheckboxes=function(mode){this.tscheck=convertStringToBoolean(mode);}; 
  
  
 dhtmlXTreeObject.prototype.enableTreeImages=function(mode){this.timgen=convertStringToBoolean(mode);}; 
  
  
  
 dhtmlXTreeObject.prototype.enableFixedMode=function(mode){this.hfMode=convertStringToBoolean(mode);}; 
  
  
 dhtmlXTreeObject.prototype.enableCheckBoxes=function(mode){this.checkBoxOff=convertStringToBoolean(mode);}; 
  
 dhtmlXTreeObject.prototype.setStdImages=function(image1,image2,image3){ 
 this.imageArray[0]=image1;this.imageArray[1]=image2;this.imageArray[2]=image3;}; 
 
  
 dhtmlXTreeObject.prototype.enableTreeLines=function(mode){ 
 this.treeLinesOn=convertStringToBoolean(mode); 
} 
 
  
 dhtmlXTreeObject.prototype.setImageArrays=function(arrayName,image1,image2,image3,image4,image5){ 
 switch(arrayName){ 
 case "plus": this.plusArray[0]=image1;this.plusArray[1]=image2;this.plusArray[2]=image3;this.plusArray[3]=image4;this.plusArray[4]=image5;break; 
 case "minus": this.minusArray[0]=image1;this.minusArray[1]=image2;this.minusArray[2]=image3;this.minusArray[3]=image4;this.minusArray[4]=image5;break; 
} 
}; 
  
  
 dhtmlXTreeObject.prototype.openItem=function(itemId){ 
 var temp=this._globalIdStorageFind(itemId); 
 if(!temp)return 0; 
 this._HideShow(temp,2); 
 if((temp.parentObject)&&(this._getOpenState(temp.parentObject)<0)) 
 this.openItem(temp.parentObject.id); 
}; 
  
  
 dhtmlXTreeObject.prototype.closeItem=function(itemId){ 
 if(this.rootId==itemId)return 0; 
 var temp=this._globalIdStorageFind(itemId); 
 if(!temp)return 0; 
 if(temp.closeble) 
 this._HideShow(temp,1); 
}; 
 
 dhtmlXTreeObject.prototype.getLevel=function(itemId){ 
 var temp=this._globalIdStorageFind(itemId); 
 if(!temp)return 0; 
 return this._getNodeLevel(temp,0); 
}; 
  
  
 
  
 dhtmlXTreeObject.prototype.setItemCloseable=function(itemId,flag) 
{ 
 flag=convertStringToBoolean(flag); 
 var temp=this._globalIdStorageFind(itemId); 
 if(!temp)return 0; 
 temp.closeble=flag; 
}; 
  
  
 dhtmlXTreeObject.prototype._getNodeLevel=function(itemObject,count){ 
 if(itemObject.parentObject)return this._getNodeLevel(itemObject.parentObject,count+1); 
 return(count); 
}; 
  
  
 dhtmlXTreeObject.prototype.hasChildren=function(itemId){ 
 var temp=this._globalIdStorageFind(itemId); 
 if(!temp)return 0; 
 else  
{ 
 if((this.XMLsource)&&(!temp.XMLload))return true; 
 else  
 return temp.childsCount; 
}; 
}; 
  
  
  
 dhtmlXTreeObject.prototype.setItemText=function(itemId,newLabel) 
{ 
 var temp=this._globalIdStorageFind(itemId); 
 if(!temp)return 0; 
 temp.label=newLabel; 
 temp.htmlNode.childNodes[0].childNodes[0].childNodes[3].childNodes[0].innerHTML=newLabel; 
}; 
  
 dhtmlXTreeObject.prototype.refreshItem=function(itemId){ 
 if(!itemId)itemId=this.rootId; 
 var temp=this._globalIdStorageFind(itemId); 
 this.deleteChildItems(itemId); 
 this.loadXML(this.XMLsource+getUrlSymbol(this.XMLsource)+"id="+escape(itemId)); 
}; 
  
  
 dhtmlXTreeObject.prototype.setItemImage2=function(itemId,image1,image2,image3){ 
 var temp=this._globalIdStorageFind(itemId); 
 if(!temp)return 0; 
 temp.images[1]=image2; 
 temp.images[2]=image3; 
 temp.images[0]=image1; 
 this._correctPlus(temp); 
}; 
  
 dhtmlXTreeObject.prototype.setItemImage=function(itemId,image1,image2) 
{ 
 var temp=this._globalIdStorageFind(itemId); 
 if(!temp)return 0; 
 if(image2) 
{ 
 temp.images[1]=image1; 
 temp.images[2]=image2; 
} 
 else temp.images[0]=image1; 
 this._correctPlus(temp); 
}; 
  
  
  
 dhtmlXTreeObject.prototype.getSubItems =function(itemId) 
{ 
 var temp=this._globalIdStorageFind(itemId); 
 if(!temp)return 0; 
 
 var z=""; 
 for(i=0;i<temp.childsCount;i++) 
 if(!z)z=temp.childNodes[i].id; 
 else z+=","+temp.childNodes[i].id; 
 return z; 
}; 
  
 dhtmlXTreeObject.prototype.getAllSubItems =function(itemId){ 
 return this._getAllSubItems(itemId); 
} 
  
  
 dhtmlXTreeObject.prototype._getAllSubItems =function(itemId,z,node) 
{ 
 if(node)temp=node; 
 else{ 
 var temp=this._globalIdStorageFind(itemId); 
}; 
 if(!temp)return 0; 
  
 z=""; 
 for(var i=0;i<temp.childsCount;i++) 
{ 
 if(!z)z=temp.childNodes[i].id; 
 else z+=","+temp.childNodes[i].id; 
 var zb=this._getAllSubItems(0,z,temp.childNodes[i]) 
 if(zb)z+=","+zb; 
} 
 return z; 
}; 
  
 
  
  
 dhtmlXTreeObject.prototype.selectItem=function(itemId,mode){ 
 mode=convertStringToBoolean(mode); 
 var temp=this._globalIdStorageFind(itemId); 
 if(!temp)return 0; 
 if(this._getOpenState(temp.parentObject)==-1) 
 this.openItem(itemId); 
 if(mode) 
 this.onRowSelect(0,temp.htmlNode.childNodes[0].childNodes[0].childNodes[3],false); 
 else 
 this.onRowSelect(0,temp.htmlNode.childNodes[0].childNodes[0].childNodes[3],true); 
}; 
  
  
 dhtmlXTreeObject.prototype.getSelectedItemText=function() 
{ 
 if(this.lastSelected) 
 return this.lastSelected.parentObject.htmlNode.childNodes[0].childNodes[0].childNodes[3].childNodes[0].innerHTML; 
 else return(""); 
}; 
 
 
 
 
  
 dhtmlXTreeObject.prototype._compressChildList=function(Count,Nodes) 
{ 
 Count--; 
 for(var i=0;i<Count;i++) 
{ 
 if(Nodes[i]==0){Nodes[i]=Nodes[i+1];Nodes[i+1]=0;} 
}; 
}; 
  
 dhtmlXTreeObject.prototype._deleteNode=function(itemId,htmlObject,skip){ 
 
 if(!skip){ 
 this._globalIdStorageRecSub(htmlObject); 
} 
  
 if((!htmlObject)||(!htmlObject.parentObject))return 0; 
 var tempos=0;var tempos2=0; 
 if(htmlObject.tr.nextSibling)tempos=htmlObject.tr.nextSibling.nodem; 
 if(htmlObject.tr.previousSibling)tempos2=htmlObject.tr.previousSibling.nodem; 
  
 var sN=htmlObject.parentObject; 
 var Count=sN.childsCount; 
 var Nodes=sN.childNodes; 
 for(var i=0;i<Count;i++) 
{ 
 if(Nodes[i].id==itemId){ 
 if(!skip)sN.htmlNode.childNodes[0].removeChild(Nodes[i].tr); 
 Nodes[i]=0; 
 break; 
} 
} 
 this._compressChildList(Count,Nodes); 
 if(!skip){ 
 sN.childsCount--; 
} 
 
 if(tempos){ 
 this._correctPlus(tempos); 
 this._correctLine(tempos); 
} 
 if(tempos2){ 
 this._correctPlus(tempos2); 
 this._correctLine(tempos2); 
} 
 if(this.tscheck)this._correctCheckStates(sN); 
}; 
  
 dhtmlXTreeObject.prototype.setCheck=function(itemId,state){ 
 state=convertStringToBoolean(state); 
 var sNode=this._globalIdStorageFind(itemId); 
 if(!sNode)return; 
 if(!this.tscheck)return this._setSubChecked(state,sNode); 
 else this._setCheck(sNode,state); 
 this._correctCheckStates(sNode.parentObject); 
}; 
  
 dhtmlXTreeObject.prototype._setCheck=function(sNode,state){ 
 var z=sNode.htmlNode.childNodes[0].childNodes[0].childNodes[1].childNodes[0]; 
 if(state=="notsure")sNode.checkstate=2; 
 else if(state)sNode.checkstate=1;else sNode.checkstate=0; 
  
 z.src=this.imPath+this.checkArray[sNode.checkstate]; 
}; 
  
  
dhtmlXTreeObject.prototype.setSubChecked=function(itemId,state){ 
 var sNode=this._globalIdStorageFind(itemId); 
 this._setSubChecked(state,sNode); 
 this._correctCheckStates(sNode.parentObject); 
} 
  
 dhtmlXTreeObject.prototype._setSubChecked=function(state,sNode){ 
 state=convertStringToBoolean(state); 
 if(!sNode)return; 
 for(var i=0;i<sNode.childsCount;i++) 
{ 
 this._setSubChecked(state,sNode.childNodes[i]); 
}; 
 var z=sNode.htmlNode.childNodes[0].childNodes[0].childNodes[1].childNodes[0]; 
 if(state)sNode.checkstate=1; 
 else sNode.checkstate=0; 
 z.src=this.imPath+this.checkArray[sNode.checkstate]; 
}; 
 
  
 dhtmlXTreeObject.prototype.isItemChecked=function(itemId){ 
 var sNode=this._globalIdStorageFind(itemId); 
 if(!sNode)return; 
 return sNode.checkstate; 
}; 
  
 
 
 
 
  
 dhtmlXTreeObject.prototype.getAllChecked=function(){ 
 return this._getAllChecked("","",1); 
} 
  
 dhtmlXTreeObject.prototype.getAllCheckedBranches=function(){ 
 return this._getAllChecked("","",0); 
} 
  
  
 dhtmlXTreeObject.prototype._getAllChecked=function(htmlNode,list,mode){ 
 if(!htmlNode)htmlNode=this.htmlNode; 
 if(((mode)&&(htmlNode.checkstate==1))||((!mode)&&(htmlNode.checkstate>0))){if(list)list+=","+htmlNode.id;else list=htmlNode.id;} 
 var j=htmlNode.childsCount; 
 for(var i=0;i<j;i++) 
{ 
 list=this._getAllChecked(htmlNode.childNodes[i],list,mode); 
}; 
 if(list)return list;else return ""; 
}; 
  
 dhtmlXTreeObject.prototype.deleteChildItems=function(itemId) 
{ 
 var sNode=this._globalIdStorageFind(itemId); 
 if(!sNode)return; 
 var j=sNode.childsCount; 
 for(var i=0;i<j;i++) 
{ 
 this._deleteNode(sNode.childNodes[0].id,sNode.childNodes[0]); 
}; 
}; 
  
  
dhtmlXTreeObject.prototype.deleteItem=function(itemId,selectParent){ 
 this._deleteItem(itemId,selectParent); 
} 
  
dhtmlXTreeObject.prototype._deleteItem=function(itemId,selectParent,skip){ 
 selectParent=convertStringToBoolean(selectParent); 
 var sNode=this._globalIdStorageFind(itemId); 
 if(!sNode)return; 
 if(selectParent)this.selectItem(this.getParentId(this.getSelectedItemId()),1); 
 if(!skip){ 
 this._globalIdStorageRecSub(sNode); 
}; 
 var zTemp=sNode.parentObject; 
 this._deleteNode(itemId,sNode,skip); 
 this._correctPlus(zTemp); 
 this._correctLine(zTemp); 
}; 
  
  
 dhtmlXTreeObject.prototype._globalIdStorageRecSub=function(itemObject){ 
 for(var i=0;i<itemObject.childsCount;i++) 
{ 
 this._globalIdStorageRecSub(itemObject.childNodes[i]); 
 this._globalIdStorageSub(itemObject.childNodes[i].id); 
}; 
 this._globalIdStorageSub(itemObject.id); 
}; 
  
  
 dhtmlXTreeObject.prototype.insertNewNext=function(parentItemId,itemId,itemName,itemActionHandler,image1,image2,image3,optionStr,childs){ 
 var sNode=this._globalIdStorageFind(parentItemId); 
 if(!sNode)return(0); 
 this._attachChildNode(0,itemId,itemName,itemActionHandler,image1,image2,image3,optionStr,childs,sNode); 
}; 
 
  
  
  
 dhtmlXTreeObject.prototype.getItemIdByIndex=function(itemId,index){ 
 var z=this._globalIdStorageFind(itemId); 
 if(!z)return 0; 
 var temp=z.htmlNode.childNodes[0].childNodes[0]; 
 while(index>0) 
{ 
 temp=temp.nextSibling; 
 if((!temp)||(!temp.nodem))return 0; 
 index--; 
} 
 return temp.nodem.id; 
}; 
  
 dhtmlXTreeObject.prototype.getChildItemIdByIndex=function(itemId,index){ 
 var sNode=this._globalIdStorageFind(itemId); 
 if(!sNode)return(0); 
 if(this.hasChildren(itemId)<index)return 0; 
 return sNode.htmlNode.childNodes[0].childNodes[index].nodem.id; 
}; 
 
 
  
  
 
  
 dhtmlXTreeObject.prototype.setDragHandler=function(func){if(typeof(func)=="function")this.dragFunc=func;else this.dragFunc=eval(func);}; 
  
  
 dhtmlXTreeObject.prototype._clearMove=function(htmlNode){ 
 if(htmlNode.parentObject.span){ 
 htmlNode.parentObject.span.className='standartTreeRow'; 
 if(htmlNode.parentObject.acolor)htmlNode.parentObject.span.style.color=htmlNode.parentObject.acolor; 
} 
}; 
  
  
 dhtmlXTreeObject.prototype.enableDragAndDrop=function(mode){this.dragAndDropOff=convertStringToBoolean(mode);}; 
  
  
 dhtmlXTreeObject.prototype._setMove=function(htmlNode){ 
 if(htmlNode.parentObject.span){ 
 htmlNode.parentObject.span.className='selectedTreeRow'; 
 if(htmlNode.parentObject.scolor)htmlNode.parentObject.span.style.color=htmlNode.parentObject.scolor; 
} 
}; 
  
  
  
dhtmlXTreeObject.prototype._createDragNode=function(htmlObject){ 
 dhtmlObject=htmlObject.parentObject; 
 if(this.lastSelected)this._clearMove(this.lastSelected); 
 var dragSpan=document.createElement('div'); 
 dragSpan.appendChild(document.createTextNode(dhtmlObject.label)); 
 dragSpan.style.position="absolute"; 
 dragSpan.className="dragSpanDiv"; 
 return dragSpan; 
} 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
  
dhtmlXTreeObject.prototype._preventNsDrag=function(e){ 
 if((e)&&(e.preventDefault)){e.preventDefault();return false;} 
} 
 
dhtmlXTreeObject.prototype._drag=function(sourceHtmlObject,dhtmlObject,targetHtmlObject){ 
 if(!targetHtmlObject.parentObject){targetHtmlObject=this.htmlNode.htmlNode.childNodes[0].childNodes[0].childNodes[1].childNodes[0];} 
 else this._clearMove(targetHtmlObject); 
 if(dhtmlObject.lastSelected)dhtmlObject._setMove(dhtmlObject.lastSelected); 
 if((!this.dragMove)||(this.dragMove()))this._moveNode(sourceHtmlObject.parentObject,targetHtmlObject.parentObject); 
 
} 
 
dhtmlXTreeObject.prototype._dragIn=function(htmlObject,shtmlObject){ 
 if(!htmlObject.parentObject) 
{ 
  
 return htmlObject; 
} 
 if((!this._checkParenNodes(shtmlObject.parentObject.id,htmlObject.parentObject,shtmlObject.parentObject))&&(htmlObject.parentObject.id!=shtmlObject.parentObject.id)) 
{ 
 this._setMove(htmlObject); 
 if(this._getOpenState(htmlObject.parentObject)<0) 
 this._autoOpenTimer=window.setTimeout(new callerFunction(this._autoOpenItem,this),1000); 
 this._autoOpenId=htmlObject.parentObject.id; 
 return htmlObject; 
} 
 else return 0; 
} 
dhtmlXTreeObject.prototype._autoOpenItem=function(e,treeObject){ 
 treeObject.openItem(treeObject._autoOpenId); 
}; 
dhtmlXTreeObject.prototype._dragOut=function(htmlObject){ 
 if(!htmlObject.parentObject)return 0; 
this._clearMove(htmlObject);if(this._autoOpenTimer)clearTimeout(this._autoOpenTimer);} 
 
 
 
  </script>     
  <table> 
    <tr> 
      <td> 
        <div id="treeboxbox_tree" style="width:250; height:218;background-color:#f5f5f5;border :1px solid Silver;; overflow:auto;"/> 
      </td> 
      <td rowspan="2" style="padding-left:25" valign="top"> 
    </div> 
      </td> 
    </tr> 
    <tr> 
      <td> </td> 
    </tr> 
  </table> 
<hr> 
<XMP> 
<div id="treeboxbox_tree" style="width:200;height:200"></div> 
<script> 
  tree=new dhtmlXTreeObject("treeboxbox_tree","100%","100%",0); 
    tree.setImagePath("treeImgs/"); 
    tree.loadXML("treeImgs/tree3.xml") 
</script> 
</XMP> 
    Parameters passed to the constructor are: 
      <li>object to attach tree to (should be loaded before calling constructor)</li> 
      <li>width of the tree</li> 
      <li>height of the tree</li> 
      <li>identifier of level parent to tree root level</li><br> 
    Specify Additional parameters of the tree: 
      <li>setImagePath(url) - method specifies the path to the folder with tree icons</li> 
      <li>loadXML("tree.xml") - load tree items from XML</li> 
  <script> 
      tree=new dhtmlXTreeObject("treeboxbox_tree","100%","100%",0); 
      tree.setImagePath("treeImgs/"); 
      tree.loadXML("treeImgs/tree3.xml") 
  </script> 
<br><br> 
 
</body> 
</html> 
 
 
            
          
   
    
    |