diff -r 000000000000 -r 083966fa9d9d java/sql-vyuka/web/strom.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/java/sql-vyuka/web/strom.js Tue Jul 14 16:51:24 2009 +0200 @@ -0,0 +1,145 @@ +/** Strom je načítaný AJAXem až po načtení stránky, takže je potřeba funkci zavolat ručně */ +//pridejUdalost(window,"load",sestavStromy); + +function pridejUdalost(o, e, f) { + if (o.addEventListener) { + o.addEventListener(e,f,true); + return true; + } else if (o.attachEvent) { + return o.attachEvent("on" + e, f); + } else { + return false; + } +} + +function nastavKonstantu(name, val) { + if (typeof(window[name]) == "undefined" || window[name] == null) { + window[name] = val; + } +} + +function rozbalStrom(treeId) { + var ul = document.getElementById(treeId); + if (ul == null) { + return false; + } + rozbalSbalSeznam(ul, nodeOpenClass); +} + +function sbalStrom(treeId) { + var ul = document.getElementById(treeId); + if (ul == null) { + return false; + } + rozbalSbalSeznam(ul, nodeClosedClass); +} + +function rozbalAzNaPolozku(treeId, itemId) { + var ul = document.getElementById(treeId); + if (ul == null) { + return false; + } + var ret = rozbalSbalSeznam(ul, nodeOpenClass, itemId); + if (ret) { + var o = document.getElementById(itemId); + if (o.scrollIntoView) { + o.scrollIntoView(false); + } + } +} + +function rozbalSbalSeznam(ul, cName, itemId) { + if(!ul.childNodes || ul.childNodes.length==0) { + return false; + } + for (var itemi = 0; itemi < ul.childNodes.length; itemi++) { + var item = ul.childNodes[itemi]; + + if (itemId != null && item.id == itemId) { + return true; + } + + if (item.nodeName == "LI") { + var subLists = false; + for (var sitemi = 0; sitemi