//free JavaScripts on http://www.ScriptBreaker.com

  var height = 20; // height of the menu headers
//  var iheight = 15; // height of the menu_items
  var iheight = 16; // height of the menu_items
  var width = 130; // width of the menu headers
  var iwidth = 130; // width of the menu_item
  
  var bgc = "lightyellow" // background color of the item
  var tc = "black" // text color of the item
  
  var over_bgc = "silver";
  var over_tc = "#FF6600";

  var set_bgc = "#FFCC99";
  var set_tc = "black";
  
  var speed = 1;
  var timerID = "";
  var N = (document.all) ? 0 : 1;

  var self_menu = new Array();

  var item_set = "d1"; //menu item van de huidige pagina
  var menu = 0; //geeft aan welk menu uitgevouwen is (initieel geen)
  var item_down = false;  //er zijn geen menu items uitgevouwen (initieel geen)
  var next = 0; //het uit te vouwen menu

function write_menu()
{
  smc = 0; // count the position of the self_menu
  document.write("<div style='position:absolute'>");
  mn = 0;
  mni = 1;
  start = -1;
  
  for(i=0;i<Link.length;i++)
  {
   la = Link[i].split("|");
   if (la[0] == "0")
   {
    if(start == 0) 
     {
      document.write("</div>");
      h =  csmc * iheight;
      tmn = mn; //-h
      self_menu[smc] = new Array(tmn,h,0,-2);
      smc++;
      mn--;
     }
     csmc = 0;
    image = setimage(i);
    //document.write("<div class='menu' style='top:"+mn+";height:"+height+";width:"+width+"' id='down"+smc+"' onclick='pull_down("+smc+","+mni+")'>&nbsp;"+image+"&nbsp;"+ la[1] + "</div>");
    document.write("<div class='menu' style='top:"+mn+";height:"+height+";width:"+width+"' id='down"+smc+"' onclick='changemenu("+mni+")'>&nbsp;"+image+"&nbsp;"+ la[1] + "</div>");
    self_menu[smc] = new Array(mn,height,0,mni);
    smc++;
    mni++;
    mn+=height;
    start = 1;
   }
   else
   {
    if(start == 1) 
     {
      if(N)mn+=2;
       document.write("<div class='item_panel' id='down"+smc+"' style='top:"+mn+"'>");
       start = 0;
     }
    
    document.write("<a href='"+la[2]+"'");
    if (la[3] != "")document.write(" target='" + la[3] + "' ");
    document.write("><div class='item' id='d"+i+"' style='height:"+iheight);
    if (N) document.write(";width:128");
    image = setimage(i);
    document.write("' onmouseover='color(this.id)' onmouseout='uncolor(this.id)' onclick='setcheck(this.id)'>&nbsp;&nbsp;"+image+"&nbsp;"+ la[1] + "</div></a>");
    csmc++;
   }
  }
  if (start == 0) 
   {
     document.write("</div>");
     h =  csmc * iheight;
     tmn = mn + 5; //-h
     self_menu[smc] = new Array(tmn,h,0);
     name = "down" + (self_menu.length-1);
     obj = document.getElementById(name);
     obj.style.borderBottomColor = "black";
     obj.style.borderBottomWidth = 1;
     obj.style.borderBottomStyle = "solid";
   }
  document.write("</div>");
}
 
function color(obj)
{
 if(item_set == obj)
 {
  document.getElementById(obj).style.backgroundColor = set_bgc;
  document.getElementById(obj).style.color = set_tc;
 }
 else
 {
 document.getElementById(obj).style.backgroundColor = over_bgc;
 document.getElementById(obj).style.color = over_tc;
 }
}

function uncolor(obj)
{
 if(item_set != obj){
  document.getElementById(obj).style.backgroundColor = bgc;
  document.getElementById(obj).style.color = tc;
 }
}

function pull_down(nr,c)
{
 if (timerID == "")
 {
 to = self_menu[nr+1][1]                   //eind van item lijst bepalen
 begin = nr + 2;
 if (timerID != "") clearTimeout(timerID); //eventuele eerdere/andere timers afsluiten
 if (self_menu[nr+1][2] == 0)              //wanneer ingevouwen
 {
  self_menu[nr+1][2] = 1;                  //als uitgevouwen zetten in array
  if(nr == self_menu.length-2) {to++;}
  epull_down(begin,to,0);
 }
 else
 {
  to = 0;
  self_menu[nr+1][2] = 0;                  //als ingevouwen zetten
  name = "down"+(nr+2);
  open_item = 0;
  for(i=0;i<nr;i++)
  {
   if(self_menu[i][2] == 1) 
    {open_item += self_menu[i][1];
    }
  }
  if (N == false) {open_item-= (c*1)};
  if (nr== self_menu.length-2) {val = self_menu[self_menu.length-1][1];to=-1;}
  else  val = parseInt(document.getElementById(name).style.top) -(open_item)-(c*height);
  epull_up(begin,to,val);
 }
 }
}

function epull_down(nr,to,nowv)
{
 name = "down" + (nr-1);
 obj = document.getElementById(name).style.clip = "rect(0,"+iwidth+","+(nowv+1)+",0)";
 for (i=nr;i<self_menu.length;i++)
 {
  name = "down" + i;
  obj = document.getElementById(name);
  obj.style.top = parseInt(obj.style.top)+1;
 }
 nowv++;
 if(nowv < to) timerID = setTimeout("epull_down("+nr+","+to+","+nowv+")",speed); //wanneer menu nog niet klaar is met schuiven: opnieuw timer setten en eigen functie bij volgende timer-event laten aanroepen
 else
  {
   timerID = "";								 //wanneer menu klaar is met schuiven
   item_down = true;
  }
}

function epull_up(nr,to,nowv)
{
 name = "down" + (nr-1);
 obj = document.getElementById(name).style.clip = "rect(0,"+iwidth+","+nowv+",0)";
 for (i=nr;i<self_menu.length;i++)
 {
  name = "down" + i;
  obj = document.getElementById(name);
  obj.style.top = parseInt(obj.style.top)-1;
 }
 nowv--;
 if(nowv > to) timerID = setTimeout("epull_up("+nr+","+to+","+nowv+")",speed);
 else
 {
  timerID = "";
  item_down = false;
  changemenu(next);
 }
}

function setimage(i)
{
 a = Link[i].split("|");
 b = HighLight.split("|");
 if (a[0] == "0")
 {
  if(a[1] == b[0])
   return "<img border='0' src='menu_bestanden/arrow.gif' width='7' height='9'>&nbsp;";
  else
   return "<img border='0' src='menu_bestanden/arrow(down).gif' width='9' height='9'>";
 }
 else
 {
  if(a[1] == b[1])
   return "&nbsp;&nbsp;<img border='0' src='menu_bestanden/arrow.gif' width='7' height='9'>";
  else
   return "&nbsp;&nbsp;<img border='0' src='menu_bestanden/arrow(s).gif' width='7' height='9'>";
 }
}

function setcheck(obj)
{
 reset = item_set;
 item_set = obj;
 if(reset != "")uncolor(reset);
 color(item_set);
}

function changemenu(nr)
{
 if (nr !=0)
 {
  next = nr;
  if(item_down == false) menu = nr;
  for(i=0;i<self_menu.length;i++)
  {
   if(self_menu[i][3] == menu)
   {
    pull_down(i,menu);
    i=self_menu.length;
   }
  }
 }
}

function startup(nr)
{
 menu = nr;
 write_menu();
 color(item_set);
 if (nr != 0)
 {
  for(i=0;i<self_menu.length;i++)
  {
   if(self_menu[i][3] == nr)
   {
    pull_down(i,nr);
    i=self_menu.length;
   }
  }
 }
}
