var temp, temp2, cookieArray, cookieArray2, cookieCount;

function getCookieVal(offset){
	var endstr=document.cookie.indexOf (";", offset);
	if (endstr==-1) endstr=document.cookie.length;
	return unescape(document.cookie.substring(offset, endstr));
}
function ReadCookie(nom){
	var arg=nom+"=";
	var alen=arg.length;
	var clen=document.cookie.length;
	var i=0;
	while (i<clen){
		var j=i+alen;
		if (document.cookie.substring(i, j)==arg) return getCookieVal(j);
		i=document.cookie.indexOf(" ",i)+1;
		if (i==0) break;
	}
	return null;
}

function WriteCookie(nom, valeur){
	var argv=WriteCookie.arguments;
	var argc=WriteCookie.arguments.length;
	var expires=(argc > 2) ? argv[2] : null;
	var path=(argc > 3) ? argv[3] : null;
	var domain=(argc > 4) ? argv[4] : null;
	var secure=(argc > 5) ? argv[5] : false;
	document.cookie=nom+"="+escape(valeur)+
	((expires==null) ? "" : ("; expires="+expires.toGMTString()))+
	((path==null) ? "" : ("; path="+path))+
	((domain==null) ? "" : ("; domain="+domain))+
	((secure==true) ? "; secure" : "");
}

function ClearCookie(nom){
	date=new Date;
	date.setFullYear(date.getFullYear()-1);
	WriteCookie(nom,null,date);
}

function initiate(){
  cookieCount=0;
  
  
  cookieArray=new Array();
  var mData = ReadCookie("state");
  if(mData!=null){
	for(var i=0;i<mData.length;i++){
		cookieArray[i] = mData.charAt(i);
	}
  }
  temp=document.getElementById("menuContainer");

  for(var o=0;o<temp.getElementsByTagName("li").length;o++){
    if(temp.getElementsByTagName("li")[o].getElementsByTagName("ul").length>0){

      temp.getElementsByTagName("li")[o].getElementsByTagName("ul")[0].style.display = "none";
      if(cookieArray[cookieCount]=="y"){
        showhide(temp.getElementsByTagName("li")[o]);
      }
      temp2 = temp.getElementsByTagName("li")[o].getElementsByTagName("div")[0];

      temp2.onclick=function(){
        showhide(this.parentNode);
        SetMenuCookie();
		AssignMenuOffsets();
      }

      cookieCount++;
    }
  }
  AssignMenuOffsets();
}

function showhide(el){
  el.getElementsByTagName("ul")[0].style.display=(el.getElementsByTagName("ul")[0].style.display=="block")?"none":"block";
}

function SetMenuCookie(){ // 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();
  temp=document.getElementById("menuContainer");
  for(var q=0;q<temp.getElementsByTagName("li").length;q++){
    if(temp.getElementsByTagName("li")[q].getElementsByTagName("ul").length>0){
      cookieArray[cookieArray.length]=((temp.getElementsByTagName("li")[q].getElementsByTagName("ul")[0].style.display=="block")?"y":"n")	;
    }
  }
  
  date=new Date;
  date.setMonth(date.getMonth()+1);	
  WriteCookie("state",cookieArray.join(""),date,"/");
}

function AssignMenuOffsets(){

	var offsetArray = new Array(7,16,22,27,30,33,34,34,33,32,29,25,19,13,3);
	var cnt = 0;
	var temp=document.getElementById("menuContainer");
	var val;
	for(var i=0;i<temp.getElementsByTagName("li").length;i++){
		var liElem  = temp.getElementsByTagName("li")[i];
		if(liElem.getElementsByTagName("div").length>0){
			if(liElem.getElementsByTagName("div")[0].className=="homeMenuItem"){
				var divElem = liElem.getElementsByTagName("div")[0];			
				divElem.style.left = offsetArray[cnt]+"px";
				divElem.style.top  = "40px";
				cnt++;
			}
		}
		
		if(liElem.getElementsByTagName("ul").length>0){
			if(liElem.getElementsByTagName("ul")[0].style.display=="block"){
				for(var j=0;j<liElem.getElementsByTagName("li").length;j++){
					var liElem2  = liElem.getElementsByTagName("li")[j];
					if(liElem2.getElementsByTagName("div").length>0){
						if(liElem2.getElementsByTagName("div")[0].className=="homeMenuSubItem"){
							var divElem2 = liElem2.getElementsByTagName("div")[0];			
							divElem2.style.left = (offsetArray[cnt]+10)+"px";
							divElem2.style.top  = "40px";
							cnt++;
						}
					}
				}
			}
		}
	}
	
}