POCET_SUBMENU = 5;
MAX_POLOZEK_SUBMENU = 20;


function getElementSkupinaMenu(cislo_submenu) {
  var d = document.getElementById("skupina_menu"+cislo_submenu);
  return d;
}


function zobrazmenu(cislo_submenu) {

  var d = getElementSkupinaMenu(cislo_submenu);
  var polozky = d.getElementsByTagName("div");
  
  for (i=0;i<(polozky.length);i++) {
    e=polozky[i];
    if (e!=null && e.style!=null)
      zobrazPolozku(e,cislo_submenu,i);
  }

}

function skryjmenu(cislo_submenu) {

  var d = getElementSkupinaMenu(cislo_submenu);
  var polozky = d.getElementsByTagName("div");
  
  for (i=0;i<(polozky.length);i++) {
    e=polozky[i]
    if (e!=null && e.style!=null)
      skryjPolozku(e,cislo_submenu,i);
  }

}
  
//=== vyjeti =================================================================
var pozice_polozky_smer=new Array(); //-1 - snizit, +1 zvysit, 0 nic
var pozice_polozky=new Array();
POCET_KROKU = 10;


function initMenu() {
  //inicializace
  for (i=0;i<POCET_SUBMENU;i++) { //submenu
    for (j=0;j<MAX_POLOZEK_SUBMENU;j++) { //polozky
      ind=i*MAX_POLOZEK_SUBMENU+j;
      pozice_polozky_smer[ind]=0;
      pozice_polozky[ind]=0;  
    }
  }
  
  //spusteni timeru
  window.setInterval("zmenPozice()",50);  

  //zobrazeni vsech polozek menu 2. urovne
  for (i=0;i<POCET_SUBMENU;i++) { //submenu
    var d = getElementSkupinaMenu(i);
    var polozky;
    if (d!=null) polozky = d.getElementsByTagName("div"); else return;
    for (j=0;j<polozky.length; j++) {      
      e = polozky[j];
      e.style.top=0;
    }
   }  
}

function zmenPozice() {
  for (i=0;i<POCET_SUBMENU;i++) {

    var d = getElementSkupinaMenu(i);
    var polozky;
    if (d!=null) polozky = d.getElementsByTagName("div"); else return;
    
    //nultou polozku preskocit, protoze jde to je nadpis menu prvni urovne
    for (j=1;j<(polozky.length); j++) {      
    
      ind=i*MAX_POLOZEK_SUBMENU+(j-1);
      
      if (pozice_polozky_smer[ind]!=0) {

        if (pozice_polozky_smer[ind]==1) 
          pozice_polozky[ind]= Math.min(pozice_polozky[ind]+100/POCET_KROKU,100);
        else
          pozice_polozky[ind]= Math.max(pozice_polozky[ind]-100/POCET_KROKU,0);

        e = polozky[j];
        if (e!=null && e.style!=null) {
          cilovaPozice=32*(j);
          e.style.top=Math.round(cilovaPozice*Math.sin(pozice_polozky[ind]/200*Math.PI))+"px";
        }
        
      }          
    }
  }
}


function zobrazPolozku(e,cislo_submenu,cislo_polozky) {
  pozice_polozky_smer[cislo_submenu*MAX_POLOZEK_SUBMENU+cislo_polozky]=1;
}

function skryjPolozku(e,cislo_submenu,cislo_polozky) {
  pozice_polozky_smer[cislo_submenu*MAX_POLOZEK_SUBMENU+cislo_polozky]=-1;
}

initMenu();
