slideSpeed = 3230;
icookieID=15325;

function initMenus(){
  tstr=readOurCookie('menu');
  cstr=tstr.split('|');
  if(!document.getElementsByTagName) return;
  slider=new Array();
  var divs = document.getElementsByTagName('div');
  for(var x=0;x<divs.length;x++){
	  divs[x].originalHeight = divs[x].offsetHeight;
		if(divs[x].className == 'menu') divs[x].speed = -1;
		if(divs[x].className == 'buttonx') divs[x].onclick = function() { toggle(this); }
		if(cstr[x]){
		   nstr=cstr[x].split('~');
		   divs[x].className = nstr[1];			 
		}
  }
  for(var x=0; x<divs.length; x++){
	  if(divs[x].className != 'menu') continue;
		divs[x].style.height = '1px';
		divs[x].style.display = 'none';
		if(cstr[x]){
		   nstr=cstr[x].split('~');
			 divs[x].style.height = nstr[0];
			 divs[x].style.display = nstr[2];
			 divs[x].speed=nstr[3];
		}
  }
}
function toggle(obj){
	obj.className = (obj.className == 'buttonx')?'pressedbutton':'buttonx';
	while(obj.nextSibling && (obj.className != 'menu')) obj = obj.nextSibling;
	obj.speed = -1 * obj.speed;
	
	if(obj.slideTimer) return;	//Already moving
	var x = slider.length;
	slider[x] = obj;
	slide(x);
}
function slide(x){
	var obj = slider[x];
	if(obj.style.display != 'block') obj.style.display = 'block';
	var height = obj.offsetHeight + obj.speed * slideSpeed;
	var targetHeight = getChildrensHeights(obj);
	if(height > targetHeight){
		obj.style.height = targetHeight + 'px';
		obj.slideTimer = false;
		resizeParents(obj, 0);
		saveState();
		return;
	}
	if(height <= 1){
		obj.style.height = '1px';
		obj.style.display = 'none';
		obj.slideTimer = false;
		resizeParents(obj, 0);
		saveState();
		return;
	}
	obj.style.height = height + 'px';
	obj.slideTimer = setTimeout('slide(' + x + ');', 50);
	resizeParents(obj, targetHeight - height);
}
function getChildrensHeights(obj){
	if(!obj.firstChild) return 0;
	if(!obj.tagName.match(/div/i)) return 0;
	var height = 0;
	tmp = obj;
	obj = obj.firstChild;
	do height += getChildrensHeights(obj);
	while(obj = obj.nextSibling);
	if(height == 0) height = tmp.offsetHeight;
	return height;
}
function resizeParents(obj,diff){
	if(obj.className == 'menucontainer') return;
	obj = obj.parentNode;
	height = getChildrensHeights(obj) - diff;
	obj.style.height = height + 'px';
	resizeParents(obj, diff);
}
function mmo(obj,bover){
  if(bover){
	   if(obj.className=='buttonx') 
		   obj.bgColor="Red";
		 else 
		   obj.bgColor="Blue";
	}
	else{
	   if(obj.className=='buttonx')
		   obj.bgColor="Orange";
		 else 
		   obj.bgColor="Pink";
	}
}
function saveState(){
  cstr='';
	var divs = document.getElementsByTagName('div');
	for(var x=0; x<divs.length; x++){
//	  if(divs[x].className=="buttonx" || divs[x].className=="buttonblank" || divs[x].className=="menucontainer" || divs[x].className=="menu" || divs[x].className=="border" || divs[x].className=="pressedbutton" || divs[x].className=="buttonstatic" || divs[x].className=="buttonholder"){
		cstr += divs[x].style.height + '~';
		cstr += divs[x].className  + '~';
		cstr += divs[x].style.display + '~';
		cstr += divs[x].speed + '~|';
//	  }
	}
 setOurCookie('menu',cstr);
}
function readOurCookie(cookiename){
  iStart = document.cookie.indexOf("b" + icookieID);
  iEnd = document.cookie.indexOf(";", iStart);
  if(iEnd == -1){ iEnd = document.cookie.length; }
  myCookie = document.cookie.substr(iStart,iEnd - iStart);
  if(myCookie.indexOf(cookiename)!= -1){
    iStart = myCookie.indexOf(cookiename);
    iEnd = myCookie.indexOf("&", iStart);
    if (iEnd == -1){iEnd = myCookie.length;}
    return myCookie.substr(iStart, iEnd - iStart).split("=") [1];
    }else{
    return "";
  }
}
function setOurCookie(cookiename, value){
  iStart = document.cookie.indexOf("b" + icookieID);
  if(iStart != -1){
    iEnd = document.cookie.indexOf(";", iStart);
  if(iEnd == -1){iEnd = document.cookie.length;}
  myCookie = document.cookie.substr(iStart, iEnd - iStart);
  if(myCookie.indexOf(cookiename) != -1 ){
    iStart = myCookie.indexOf(cookiename);
    iEnd = myCookie.indexOf("&", iStart);
    document.cookie = myCookie.substr(0, iStart) + cookiename + "=" + value + ( iEnd != -1 ? myCookie.substr(iEnd, myCookie.length - iEnd) : "" );
  }else{ document.cookie = myCookie + "&" + cookiename + "=" + value; }
    } else {
    document.cookie = "b" + icookieID + "=" + cookiename + "=" + value;
  }
}


