function setcookie(name,value,expire) // ms
{ var exp=new Date(); var cookieexpire=exp.getTime()+expire; exp.setTime(cookieexpire);
  document.cookie=name+"="+value+";expires="+exp.toGMTString();
}

function getcookie(name)
{ var search=name+"="; if(document.cookie.length>0) // exist
  { offset=document.cookie.indexOf(search)
    if(offset!=-1) // exist name
    { offset+=search.length; end=document.cookie.indexOf(";",offset);
      if(end==-1){ end=document.cookie.length
                 } return unescape(document.cookie.substring(offset, end))
  } }
}

function myfindobj(n, d) {
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=myfindobj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function myshowhidelayer() {
  var i,p,v,obj,args=myshowhidelayer.arguments;
  for (i=0; i<(args.length-1); i+=2) if ((obj=myfindobj(args[i]))!=null)
   { v=args[i+1]; if (obj.style) { obj=obj.style; } obj.visibility=v; }
}

var mytimeroff, mytimeron; var mylastmenu;

function showLayer(mymenu)
{ if (mylastmenu) myshowhidelayer(mylastmenu,'hidden');
  if (mytimeroff) clearTimeout(mytimeroff);  myshowhidelayer(mymenu,'visible'); }

function hideLayer(mymenu)
{ myshowhidelayer(mymenu,'hidden') }

function myshowmenu(i,mymenu)
{ if (0<i) { mytimeron  = setTimeout("showLayer('"+mymenu+"')", 200); } else {showLayer(mymenu);} }

function myhidemenu(i,mymenu)
{ if (mytimeron) clearTimeout(mytimeron); mylastmenu = mymenu;
  i=1;
  if (0<i) { mytimeroff = setTimeout("hideLayer('"+mymenu+"')", 250); } else {hideLayer(mymenu);} }

function changeVis(elemId)
{ if (document.getElementById(elemId).style.display == "none")
    {document.getElementById(elemId).style.display = ""; v = 'o'; }
  else { document.getElementById(elemId).style.display = "none"; v = 'n'; }
  setcookie('vis_'+elemId, v, 365*24*3600*1000);
}

function preVis(elemId)
{ var i=getcookie('vis_'+elemId); if((i)&&(i=='o')) { changeVis(elemId); } }
