<% dim conn,rs,s,cls,href
dim nodeid
nodeid=request.querystring("id")
set conn = Server.CreateObject("ADODB.Connection")
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.mappath("tree.mdb") & ";Persist Security Info=False"
set rs = Server.CreateObject("ADODB.Recordset")
rs.Open "select *,(select count(*) from deeptree where parentid = T.id) as children from deeptree T where parentid="&nodeid&" and id<>"&CInt(nodeid),conn,1,3
dim node_html
node_html="<table id='t"&nodeid&"' border='0' style='position:relative;left:18' cellspacing='0' cellpadding='0'>"
do while not rs.eof
if rs("id")<>rs("parentid") then
if rs("children")=0 then
s="."
cls="dirNode"
else
s="+"
cls="dirclose"
end if
end if
node_html=node_html&"<tr><td id='node"&rs("id")&"' class='td_node'><span class='"&cls&"' id='dir"&rs("id")&"' onclick='expand("&rs("id")&")'>"&s&"</span><span class='node' id='s"&rs("id")&"' onclick='expand("&rs("id")&")' title='"&rs("content")&"' href='"&rs("link")&"'>"&rs("content")&"</span></td></tr>"
if rs("children")>0 then
node_html=node_html&"<tr id='load_"&rs("id")&"' style='display:none'><td class='td_node'><table border='0' cellspacing='0' cellpadding='0' style='position:relative;left:18;top:0'><tr><td class='td_node'><span class='dirNode'>.</span><span class='load'>Loading...</span></td></tr></table></td></tr>"
end if
rs.movenext
loop
node_html=node_html&"</table>"
set rs=nothing
set rs = Server.CreateObject("ADODB.Recordset")
rs.open "select link from deeptree where id="&nodeid,conn,1,3
%>
<script>
if(parent.document.getElementById("load_"+"<%=nodeid%>")){
parent.document.getElementById("load_"+"<%=nodeid%>").style.display="none"
parent.document.getElementById("node"+<%=nodeid%>).innerHTML+="<%=node_html%>"
}
</script>
<% set rs=nothing
set conn=nothing
%>
<%
rs.MoveNext
loop
rs.Close:set rs=nothing
cn.Close:set cn=nothing
function checkid(x)
dim Tempnum
Tempnum=0
for i=1 to len(x)
if mid(x,i,1)="_" then
Tempnum=Tempnum+1
end if
next
checkid=Tempnum
end function
%>
<script language=VBS>
sub subtree(Client_para)
if instr(Client_para,"|")=0 then exit sub
Myarray=split(Client_para,"|")
Mytext=eval("R" & Myarray(0) & ".innertext")
select case Mytext
case "+"
document.all.item("R" & Myarray(0)).innertext="-"
for i=1 to ubound(Myarray)
if eval("T" & Myarray(i) & ".summary")-eval("T" & Myarray(0) & ".summary")=1 then
document.all.item("T" & Myarray(i)).style.display="block"
end if
if eval("T" & Myarray(i) & ".summary")-eval("T" & Myarray(0) & ".summary")>1 then
document.all.item("T" & Myarray(i)).style.display="none"
end if
next
case "-"
document.all.item("R" & Myarray(0)).innertext="+"
for i=1 to ubound(Myarray)
if eval("T" & Myarray(i) & ".summary")-eval("T" & Myarray(0) & ".summary")>=1 then
document.all.item("T" & Myarray(i)).style.display="none"
if eval("R" & Myarray(i) & ".innertext")="-" then
document.all.item("R" & Myarray(i)).innertext="+"
end if
end if
next
end select
set Myarray=nothing
end sub
Sub document_onselectstart
document.selection.clear
End Sub
if isobject(eval("T1")) then
subtree document.all("T1").abbr
subtree document.all("T1").abbr
end if
</script>