var temp, temp2, cookieArray, cookieArray2, cookieCount;
function initiate(){
  cookieCount=0;
  if(document.cookie){
    //cookieArray=document.cookie.split(";");
    cookieArray2=new Array();
    var cookieVal = readCookie('navstate');
    if (cookieVal)
    {
    	var cookieSplit = cookieVal.toString().split("="); 
    	cookieArray2[cookieSplit[0].replace(/ /g,"")] = cookieSplit[1].replace(/ /g,"");
	    /*
	    for(i in cookieArray){
	      var cookieVal = cookieArray[i];
	      alert(cookieVal);
	      var cookieSplit = cookieVal.toString().split("="); 
	      cookieArray2[cookieSplit[0].replace(/ /g,"")] = cookieSplit[1].replace(/ /g,"");
	    }
	    */
	 }
  }
  cookieArray=(document.cookie.indexOf("navstate=")>=0)?cookieArray2["navstate"].split(","):new Array();
  temp=document.getElementById("lh-left-nav-ul");
  for(var o=0;o<temp.getElementsByTagName("li").length;o++){
    if(temp.getElementsByTagName("li")[o].getElementsByTagName("ul").length>0){
      temp2 = document.createElement("span");
      temp2.className = "symbols";
      temp2.style.backgroundImage = (cookieArray.length>0)?((cookieArray[cookieCount]=="true")?"url(/images/minus.png)":"url(/images/plus.png)"):"url(/images/plus.png)";
      temp2.onclick=function(){
        showhide(this.parentNode);
        writeCookie();
      }
      temp.getElementsByTagName("li")[o].insertBefore(temp2,temp.getElementsByTagName("li")[o].firstChild)
      temp.getElementsByTagName("li")[o].getElementsByTagName("ul")[0].style.display = "none";
      if(cookieArray[cookieCount]=="true"){
        showhide(temp.getElementsByTagName("li")[o]);
      }
      cookieCount++;
    }
    else{
      temp2 = document.createElement("span");
      temp2.className = "symbols";
      temp2.style.backgroundImage = "url(/images/page.png)";
      temp.getElementsByTagName("li")[o].insertBefore(temp2,temp.getElementsByTagName("li")[o].firstChild);
    }
  }
}

function readCookie(name) {
  var nameEQ = name;
  var ca = document.cookie.split(';');
  for(var i=0;i < ca.length;i++) {
    var c = ca[i];
    while (c.charAt(0)==' ') c = c.substring(1,c.length);
    //if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
    if (c.indexOf(nameEQ) == 0) return c;
  }
  return null;
}
function showhide(el){
  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(/images/minus.png)":"url(/images/plus.png)";
}

function writeCookie(){ // Runs through the menu and puts the "states" of each nested list into an array, the array is then joined together and assigned to a cookie.
  cookieArray=new Array()
  for(var q=0;q<temp.getElementsByTagName("li").length;q++){
    if(temp.getElementsByTagName("li")[q].childNodes.length>0){
      if(temp.getElementsByTagName("li")[q].childNodes[0].nodeName=="SPAN" && temp.getElementsByTagName("li")[q].getElementsByTagName("ul").length>0){
        cookieArray[cookieArray.length]=(temp.getElementsByTagName("li")[q].getElementsByTagName("ul")[0].style.display=="block");
      }
    }
  }
  document.cookie="navstate="+cookieArray.join(",")+";expires="+new Date(new Date().getTime() + 365*24*60*60*1000).toGMTString()+"; path=/";
}
