
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;
	//if (this.parentObject != null) {
	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];
			}
			this.allTree.childNodes[0].border = "1";
			this.allTree.childNodes[0].border = "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;
	img0.style.width = "14px";
	var td11 = document.createElement("td");
	var inp = document.createElement("img");
	inp.checked = 0;
	inp.src = this.imPath + this.checkArray[0];
	inp.style.width = "14px";
	inp.style.height = "16px";
	inp.border = "0";
	if (!acheck) {
		inp.style.display = "none";
	}
	td11.appendChild(inp);
	td11.width = "14px";
	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";}
		img.style.width = "0px";
		img.style.height = "0px";
	} 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);
	}
};


