var ie=document.all;
var ns=document.getElementById && !document.all;
var hidden = true;

function captureHover(e) {
	var el = ns ? e.target : event.srcElement;
    while (el.className != "level1" && el.className != "level1 hover")
       el = el.parentNode;
    el.className = (el.className == "level1" ? "level1 hover" : "level1");
}

function captureClick(e) {
	var el = ns ? e.target : event.srcElement;
	doCollapse(el);
}
    
function doCollapse(el) {   
    if (expand == null || typeof(expand) != "string")
       var expand = "expand.gif";
    if (collapse == null || typeof(collapse) != "string")
       var collapse = "collapse.gif";
    
    while (el.className != "expand") {
      if (el.className == "noexpand" || el.id == "noexpand")
         return;
      el = el.parentNode;            
    }
                         
	 if (el.className == "expand") {
       var l = el.nextSibling;
       while (l.nodeType != 1)
          l = l.nextSibling;
      
       var images = el.getElementsByTagName('img');
       for (var i in images) {
           if (images[i].src != null && (images[i].src.indexOf(collapse) != -1 ||images[i].src.indexOf(expand) != -1)) {
               var image = images[i];
               break;
           }
       }
    
       if ((hidden && l.style.display == "") || l.style.display == "none") {
          l.style.display = "block";
          if (image != null) 
             image.src = "./images/" + collapse;
       } else if ((!hidden && l.style.display == "") || l.style.display == "block") {
          l.style.display = "none";
          if (image != null) 
             image.src = "./images/" + expand;
	    }
	 }
}

function setCollapsers(defaultHidden) {
   hidden = (defaultHidden != null ? defaultHidden : hidden);
   var els=document.getElementsByTagName("DIV");
   for (var i=0; i<els.length; i++) {
       if (els[i].className == "expand") {
           els[i].onclick=captureClick;
       } else if (els[i].className == "level1") {
           els[i].onmouseover=captureHover;
           els[i].onmouseout=captureHover;
       }
   }
}