// -*-c-*-

var n = 0;
var animtid;
var rotertid;
var prevhl = 0;

function rotate_layers(){
     set_visible(-1);   
     start_anim_layers();      
}

function start_anim_layers(){
     stop_anim_layers();
     animtid = setInterval(toggle_lag, 300);
}

function stop_anim_layers(){
     clearInterval(animtid);
     clearTimeout(rotertid);
}

function set_position(rel,offset){
     // Set synlige lag. 
     
     if(rel==0)
          n += offset;
     else if (offset < 0)
          n = idsl.length - 1;
     else if( offset > 0 ) 
          n = 0;
     
     if(prevhl) 
          prevhl.style.background='#FFFFFF';
     
     set_visible(n);
     
     if(idsh[n] != null) {
          hl = document.getElementById(idsh[n]);
          hl.style.background='#FFFFaa';
          prevhl = hl;
     }
}

function set_visible(lastvisible){
     if(lastvisible == -2)
          lastvisible = idsl.length;
     for(var n=0;n < idsl.length; n++){
          if (n>lastvisible) 
               visi='hidden';
          else 
               visi='visible';
          
          for(var i=0;i<idsl[n].length;i++){
               if(e = document.getElementById(idsl[n][i])){
                    e.style.visibility=visi;
               }
          }
     }
}

function toggle_lag(){
     if(prevhl) {
          prevhl.style.background='#FFFFFF';
     }
     
     if(idsl[n] != null) {
          for(var i=0;i<idsl[n].length;i++){
               if(e = document.getElementById(idsl[n][i])){
                    e.style.visibility = 'visible';
               }
          }
          if(idsh[n] != null) {
               hl = document.getElementById(idsh[n]);
               hl.style.background='#FFFFaa';
               prevhl = hl;
          }
     }
     n++;
     if(n == idsl.length) {
          clearInterval(animtid);
          hl.style.background = '#FFFFFF';
          rotertid = setTimeout(rotate_layers,2000);
          n=0;
     }
}



