
if (document.layers) {
  //Netscape 4 specific code
  pre = 'document.';
  post = '';
}

if (document.getElementById) {
  //Netscape 6 specific code
  pre = 'document.getElementById("';
  post = '").style'; 
}

if (document.all) {
  //IE4+ specific code
  pre = 'document.all.';
  post = '.style'; 
}

function layer_exists(layer) {
   try {
      eval(pre + layer + post);
      return true; 
	}
   catch (error) {
      return false; 
	}
}

function show_layer(layer) {
   eval(pre + layer + post).position = 'relative'; 
   eval(pre + layer + post).visibility = 'visible'; 
}

function hide_layer(layer) {
   eval(pre + layer + post).visibility = 'hidden';
   eval(pre + layer + post).position = 'absolute'; 
}

function hide_folder(folder) {
    hide_folding_layer(folder)
    scrollBy(0,0); // This is a work around to make it work in Browsers (Explorer, Mozilla)
}

function show_folder(folder) {

    show_layer('fold'+folder);

    scrollBy(0,0); // This is a work around to make it work in Browsers (Explorer, Mozilla)
}
function show_folder_completely(folder) {

    show_layer('fold'+folder);

    scrollBy(0,0); // This is a work around to make it work in Browsers (Explorer, Mozilla)
    var i;
    for (i=1; layer_exists('fold'+folder+'_'+i); ++i) 
	{
       show_folder_completely(folder+'_'+i);
	}
}


function hide_folding_layer(folder) {
   var i;
   for (i=1; layer_exists('fold'+folder+'_'+i); ++i) 
   {
       hide_folding_layer(folder+'_'+i); 
   }

   hide_layer('fold'+folder);

   scrollBy(0,0); // This is a work around to make it work in Browsers (Explorer, Mozilla)
}

function fold_document() {
   var i;
   var folder = '1';
   for (i=1; layer_exists('fold'+folder+'_'+i); ++i)
   {
       hide_folder(folder+'_'+i); 
   }
}

function unfold_document() {
   var i;
   var folder = '1';
   for (i=1; layer_exists('fold'+folder+'_'+i); ++i)
   {
       show_folder_completely(folder+'_'+i);
   }
}
