var zd_parent, zd_child, zd_ck, zd_ck2, zd_count;
function initiate( path ){
  zd_count=0;
  if(document.cookie){
    zd_ck=document.cookie.split(";");
    zd_ck2=new Array();
    for(i in zd_ck){
      zd_ck2[zd_ck[i].split("=")[0].replace(/ /g,"")]=zd_ck[i].split("=")[1].replace(/ /g,"");
    }
  }
  zd_ck=(document.cookie.indexOf("state=")>=0)?zd_ck2["state"].split(","):new Array();
  zd_parent=document.getElementById("zd_container");
  for(var o=0;o<zd_parent.getElementsByTagName("li").length;o++){
    if(zd_parent.getElementsByTagName("li")[o].getElementsByTagName("ul").length>0){
      zd_child = document.createElement("span");
      zd_child.className = "symbols";
      zd_child.style.backgroundImage	= (zd_ck.length>0)?((zd_ck[zd_count]=="true")?"url("+path+"minus.gif)":"url("+path+"plus.gif)"):"url("+path+"plus.gif)";
      zd_child.onclick=function(){
        showhide(this.parentNode,path);
        writeCookie();
      }
      zd_parent.getElementsByTagName("li")[o].insertBefore(zd_child,zd_parent.getElementsByTagName("li")[o].firstChild)
      zd_parent.getElementsByTagName("li")[o].getElementsByTagName("ul")[0].style.display = "none";
      if(zd_ck[zd_count]=="true"){
        showhide(zd_parent.getElementsByTagName("li")[o],path);
      }
      zd_count++;
    }
/*    else{
      zd_child = document.createElement("span");
      zd_child.className = "symbols";
      zd_child.style.backgroundImage	= "url(tree/page.gif)";
      zd_parent.getElementsByTagName("li")[o].insertBefore(zd_child,zd_parent.getElementsByTagName("li")[o].firstChild);
    }
*/
  }
}

function showhide(el,path){
  el.getElementsByTagName("ul")[0].style.display=(el.getElementsByTagName("ul")[0].style.display=="block")?"none":"block";
  el.getElementsByTagName("span")[0].style.backgroundImage=(el.getElementsByTagName("ul")[0].style.display=="block")?"url("+path+"minus.gif)":"url("+path+"plus.gif)";
}

function writeCookie(){
  zd_ck=new Array()
  for(var q=0;q<zd_parent.getElementsByTagName("li").length;q++){
    if(zd_parent.getElementsByTagName("li")[q].childNodes.length>0){
      if(zd_parent.getElementsByTagName("li")[q].childNodes[0].nodeName=="SPAN" && zd_parent.getElementsByTagName("li")[q].getElementsByTagName("ul").length>0){
        zd_ck[zd_ck.length]=(zd_parent.getElementsByTagName("li")[q].getElementsByTagName("ul")[0].style.display=="block");
      }
    }
  }
  document.cookie="state="+zd_ck.join(",")+";expires="+new Date(new Date().getTime() + 365*24*3600).toGMTString();
}