function collapse_all()
{
  index_tags=document.getElementById('index').getElementsByTagName('ul');
  for(it=0;it<index_tags.length;it++)
    index_tags[it].style.display='none';
  index_tags=document.getElementById('index').getElementsByTagName('img');
  for(it=0;it<index_tags.length;it++)
    if(index_tags[it].className=='folder')
    {
      index_tags[it].src='plus.gif';
		  index_tags[it].title='Uitvouwen';
		  index_tags[it].alt='+';
		}
}


function create_index()
{                                 
  nr_open_folders=1;
  
  index_tags=document.getElementById('index').getElementsByTagName('ul');
  for(i=0;i<index_tags.length;i++)
  { 
		index_tags[i].style.display='block';
    index_img=document.createElement('img');
		index_img.src='min.gif';
		index_img.alt='-';
		index_img.title='Samenvouwen';
		index_img.className='folder';
    index_img.onclick=function()
    {
      if(this.parentNode.getElementsByTagName('ul')[0].style.display=='block')
      {
        this.src='plus.gif';
        this.parentNode.getElementsByTagName('ul')[0].style.display='none';
		    this.title='Uitvouwen';
		    this.alt='+';
      }
      else
      { 
        this.src='min.gif';
        this.parentNode.getElementsByTagName('ul')[0].style.display='block';
		    this.title='Samenvouwen';
		    this.alt='-';
      }
    }
		index_tags[i].parentNode.insertBefore(index_img,index_tags[i].parentNode.firstChild);
		index_tags[i].parentNode.className='folder';
  }

  depth_max=2*nr_open_folders-1;
  depth=0;
  index_children=new Array();
  index_children[depth]=document.getElementById('index').childNodes;
  i=new Array();
  i[depth]=0;
  while(depth>=0)
  {
    if((index_children[depth][i[depth]].tagName=='li')||(index_children[depth][i[depth]].tagName=='LI')||(index_children[depth][i[depth]].tagName=='ul')||(index_children[depth][i[depth]].tagName=='UL'))
      if(depth==depth_max)
      {
        index_tags=index_children[depth][i[depth]].getElementsByTagName('ul');
        for(it=0;it<index_tags.length;it++)
          index_tags[it].style.display='none';
        index_tags=index_children[depth][i[depth]].getElementsByTagName('img');
        for(it=0;it<index_tags.length;it++)
          if(index_tags[it].className=='folder')
          {
            index_tags[it].src='plus.gif';
		        index_tags[it].title='Uitvouwen';
		        index_tags[it].alt='+';
		      }
            
        while((i[depth]>=index_children[depth].length-1)&&(depth>0))
          depth--;
        if((i[depth]>=index_children[depth].length-1)&&(depth==0))
          depth--;
        else
          i[depth]++;
      }
      else
      {
        index_children[depth+1]=index_children[depth][i[depth]].childNodes;

        depth++;
        i[depth]=0;
      }
    else
    {
      while((i[depth]>=index_children[depth].length-1)&&(depth>0))
        depth--;
      if((i[depth]>=index_children[depth].length-1)&&(depth==0))
        depth--;
      else
        i[depth]++;
    }
  }           

  index_tags=document.getElementById('index').getElementsByTagName('img');
  for(i=0;i<index_tags.length;i++)
  { 
    if(index_tags[i].src.substring(index_tags[i].src.lastIndexOf('/')+1)=='key.gif')
  		index_tags[i].parentNode.style.display='none';
  }
  
  document.getElementById('index').style.display='block';


  menu_div=document.getElementById('menu');
                              
  expand_link=document.createElement('a');  
  expand_link.href='#';
  expand_link.onclick=function(){expand_all(); return false;}
  expand_link.innerHTML='<img src="plus.gif" alt="+"> Alles uitvouwen';  
  menu_div.appendChild(expand_link);  

  collapse_link=document.createElement('a');  
  collapse_link.href='#';
  collapse_link.onclick=function(){collapse_all(); return false;}
  collapse_link.innerHTML='<img src="min.gif" alt="+"> Alles samenvouwen'
  menu_div.appendChild(collapse_link);

  authorized_link=document.createElement('a');  
  authorized_link.href='#';
  authorized_link.onclick=function(){show_authorized_sites(this); return false;}
  authorized_link.innerHTML='<img src="key.gif" alt=""> <span>Beveiligde sites tonen</span>'
  menu_div.appendChild(authorized_link);  
}


function expand_all()
{
  index_tags=document.getElementById('index').getElementsByTagName('ul');
  for(it=0;it<index_tags.length;it++)
    index_tags[it].style.display='block';
  index_tags=document.getElementById('index').getElementsByTagName('img');
  for(it=0;it<index_tags.length;it++)
    if(index_tags[it].className=='folder')
    {
      index_tags[it].src='min.gif';
		  index_tags[it].title='Samenvouwen';
		  index_tags[it].alt='-';
		}
}


function hide_authorized_sites(that)
{                                                                    
  index_tags=document.getElementById('index').getElementsByTagName('img');
  for(i=0;i<index_tags.length;i++)
  { 
    if(index_tags[i].src.substring(index_tags[i].src.lastIndexOf('/')+1)=='key.gif')
  		index_tags[i].parentNode.style.display='none';
  }
  
  that.getElementsByTagName('span')[0].innerHTML='Beveiligde sites tonen';
  that.onclick=function(){show_authorized_sites(this); return false;}
}


function show_authorized_sites(that)
{                                   
  index_tags=document.getElementById('index').getElementsByTagName('img');
  for(i=0;i<index_tags.length;i++)
  { 
    if(index_tags[i].src.substring(index_tags[i].src.lastIndexOf('/')+1)=='key.gif')
  		index_tags[i].parentNode.style.display='block';
  }
  
  that.getElementsByTagName('span')[0].innerHTML='Beveiligde sites verbergen';
  that.onclick=function(){hide_authorized_sites(this); return false;}
}
