var active = ''
function showProps(obj,objName) {
	var result = ""
	for (var i in obj) result += objName + "." + i + " = " + obj[i] + "<br/>"
	monitor=window.open();
	monitor.document.write(result)
}/**/

function chk(a){
	if(document.getElementById(active)) removeClass(document.getElementById(active).mast ,'current')
	if(this.id != active) {
		appendClass(this.mast ,'current')
		active = this.id;
	} else active = '';
	return false
}
function toggle()	{toggler(this)}
function toggler(span){
	a = span.parentNode;
	a.toggle = true
	li = a.parentNode;
	if(li.sub.style.display=='block' || li.sub.className == 'current')	{
		li.sub.style.display = 'none'; 
		removeClass(li.sub ,'current')
		removeClass(li ,'current')
		span.innerHTML = '+'
	}	else {
		li.sub.style.display = 'block'
		appendClass(li.sub ,'current')
		appendClass(li ,'current')
		span.innerHTML = '-'
	}
	a.blur()
	return false;
}

function jTree_setup(id){
	jTree=document.getElementById(id)
	var as = jTree.getElementsByTagName('a')
	for (var i=0,len=as.length;i<len;i++) as[i].onclick = function()	{	
		if(this.toggle) {
			this.toggle = false;
			return false
		} else {
			this.blur();
			return true
		}
	}
	var lis = jTree.getElementsByTagName('li')
	for (var i=0,len=lis.length;i<len;i++){
		var li=lis[i]
		var uls = li.getElementsByTagName('ul')
		if (!uls || uls.length==0) continue;
		var ul=uls[0]
		//if(ul.className!= null && ul.className == 'current') continue
		li.sub=ul
		li.a = li.getElementsByTagName('a')[0]
		var arrow=document.createElement('span');
		t_arr = ul.className == 'current'? "-" : "+";
		arrow.appendChild(document.createTextNode(t_arr))
		li.a.insertBefore(arrow, li.a.firstChild)
		li.a.arrow = arrow
		li.a.arrow.onclick = toggle
	}
}
document.getElementsByClassName = function ( c, t, a ) {
	t = t? t : "*"; bar = a? a : new Array(); exp = new RegExp("\\b"+c+"\\b");
	foo = document.getElementsByTagName(t)
	for(i=0; i<foo.length; i++)	if(foo[i].className && exp.test(foo[i].className)) bar[bar.length] = foo[i];
	return bar
}
function appendClass(obj, name){ return obj.className=((obj.className==null || obj.className=='')? '' : obj.className+' ')+name; }
function removeClass(obj, name){ return obj.className=obj.className.toString().replace(name,''); }
function initTree(id) {
	if(!document.getElementById(id)) return
	jTree_setup(id)
}
