var countTree = function () {
	var id = 0;
	$treelis = $S('#menu li').each(function(element) {
		id++;
		element.id = id;
	});
}

var buildTree = function(nodeid) {	
	
	document.getElementsByClassName('info').each( 
		function(element) {
            element.fx = new fx.Combo(element, {
                duration: 250,
                onComplete: function() {
                    var img = element.parentNode.firstChild.firstChild;
                    if (element.offsetHeight > 0) {
                        element.style.height = "auto";
                        img.src = img.src.replace(/_[^_\.]+.gif$/, '_minus.gif')
                    } else {
                        img.src = img.src.replace(/_[^_\.]+.gif$/, '_plus.gif')
                    }
                }
            });
            element.fx.hide();
            var img = element.parentNode.firstChild.firstChild;
            img.src = img.src.replace(/_[^_\.]+.gif$/, '_plus.gif');
		}
	);
//
// if a menu item to initially display is specified, open the parent menu(s) to expose it
//
	if (nodeid != "") {
		$nodes = $S('#menu li').each(function(el) {
			if (el.id == nodeid) {
				el.firstChild.id = 'selectedItem';
				el = el.parentNode;
				while( el.id != 'menu' && el.parentNode.id != 'menu' ) {
					el.fx.toggle();
					el = el.parentNode.parentNode;
				}
			}
		});	
	}

	document.getElementsByClassName('toggleinfo').each(
		function(element) { 
			element.onclick = function() {
                Element.find(Element.find(element, 'parentNode'), 'nextSibling').fx.toggle();
			}	
		}
	);
	
};

function menuOver(el) {
    el = el.firstChild;
    var src = el.src;
    el.src = src.replace(/_..gif$/, '_i.gif');
}

function menuOut(el) {
    el = el.firstChild;
    var src = el.src;
    el.src = src.replace(/_..gif$/, '_o.gif');
}

function addEvent(obj, evType, fn, useCapture) {
    if (obj.addEventListener) {
        obj.addEventListener(evType, fn, useCapture);
        return true;
    } else if (obj.attachEvent) {
        var r = obj.attachEvent("on"+evType, fn);
        return r;
    } else if (evType == 'load') {
        obj.onload = fn;
    } else {
        alert("Handler could not be attached");
    }
};
