4
Copyright DHTMLX LTD. http://www.dhtmlx.com
5
You allowed to use this component or parts of it under GPL terms
6
To use it on other terms or get Professional edition of the component please contact us at sales@dhtmlx.com
8
function dhtmlXTreeFromHTML(obj){
9
if (typeof(obj)!="object")
10
obj=document.getElementById(obj);
16
for (var j=0; j<obj.childNodes.length; j++)
17
if (obj.childNodes[j].nodeType=="1"){
18
if (obj.childNodes[j].tagName=="XMP"){
19
var cHead=obj.childNodes[j];
20
for (var m=0; m<cHead.childNodes.length; m++)
21
cont+=cHead.childNodes[m].data;
24
else if (obj.childNodes[j].tagName.toLowerCase()=="ul")
25
cont=dhx_li2trees(obj.childNodes[j],new Array(),0);
31
var t=new dhtmlXTreeObject(obj,"100%","100%",0);
32
var z_all=new Array();
34
z_all[b.toLowerCase()]=b;
36
var atr=obj.attributes;
37
for (var a=0; a<atr.length; a++)
38
if ((atr[a].name.indexOf("set")==0)||(atr[a].name.indexOf("enable")==0)){
41
an=z_all[atr[a].name];
42
t[an].apply(t,atr[a].value.split(","));
45
if (typeof(cont)=="object"){
46
t.XMLloadingWarning=1;
47
for (var i=0; i<cont.length; i++){
48
var n=t.insertNewItem(cont[i][0],cont[i][3],cont[i][1]);
49
if (cont[i][2]) t._setCheck(n,cont[i][2]);
51
t.XMLloadingWarning=0;
56
t.loadXMLString("<tree id='0'>"+cont+"</tree>");
61
function dhx_init_trees(){
62
var z=document.getElementsByTagName("div");
63
for (var i=0; i<z.length; i++)
64
if (z[i].className=="dhtmlxTree")
65
dhtmlXTreeFromHTML(z[i])
68
function dhx_li2trees(tag,data,ind){
69
for (var i=0; i<tag.childNodes.length; i++){
70
var z=tag.childNodes[i];
71
if ((z.nodeType==1)&&(z.tagName.toLowerCase()=="li")){
72
var c=""; var ul=null;
73
var check=z.getAttribute("checked");
74
for (var j=0; j<z.childNodes.length; j++){
75
var zc=z.childNodes[j];
76
if (zc.nodeType==3) c+=zc.data;
77
else if (zc.tagName.toLowerCase()!="ul") c+=dhx_outer_html(zc);
81
data[data.length]=[ind,c,check,(z.id||(data.length+1))];
83
data=dhx_li2trees(ul,data,(z.id||data.length));
89
function dhx_outer_html(node){
90
if (node.outerHTML) return node.outerHTML;
91
var temp=document.createElement("DIV");
92
temp.appendChild(node.cloneNode(true));
97
if (window.addEventListener) window.addEventListener("load",dhx_init_trees,false);
98
else if (window.attachEvent) window.attachEvent("onload",dhx_init_trees);
99
//(c)dhtmlx ltd. www.dhtmlx.com