﻿/*parametry k úpravě (dle css)*/
var odsazeni=140;/*rozdíl mezi left 1. a druhé úrovně (jen horizontální při pevmé šířce položek 1. úrovně)*/
var sirka1=170;/*šířka položek první úrovně (jen vertikální)*/
var sirka2=217;/*šířka dalších úrovní*/
var TIME_TO_OPEN_MENU=0;//cas do otevreni podmenu
var POPISKY=new Array( // RUZNE POPISKY
  "rozbalit", // U IKONKY PRO ROZBALENI MENU
  "sbalit"  // U IKONKY PRO SBALENI MENU
);

/*----------------*/

var pridat="/html/"
var ponajeti=2;
var horizontalni=1;//vertikalni=0;
var isMenuIconVisible=true;//zobrazit ikonu pred menu (v pripade false odstranit u2 v CSS)

var idecko; var obr; var kliknuty;var  vid; var levp;
var isWaitingForOpenLevel=false;
var timer_beforeOpen=null;
var rozbaleny=-1;var nacteno=0;var podpora=0;var sirka=0;
var citacId=0;var rozbaleneId=0;var rozbalovaci=new Array();var citac=0;var kliknuto=0;
if(document.getElementsByTagName&&document.createElement && RegExp && document.childNodes){podpora=1;}else{podpora=0;}
var adresa=window.location+"";
if(pridat=="/html/"){if(adresa.indexOf(".htm")!=-1){pridat="";}}
var rootMenuZIndex=1; // _KN_20090330

if(podpora==1){
	var retez="<STYLE type=\"text/css\" media=\"screen\">@import \""+pridat+"menu_prekryvajici.css\";<\/STYLE>";document.write(retez);
    if(isMenuIconVisible){//obr.style.visibility="hidden";
      	pridat+="images/mul/";
      	var plus1=new Image();plus1.src=pridat+"pu1.gif";
      	var minus1=new Image();minus1.src=pridat+"mu1.gif";
      	var plus = '<img src="'+pridat+'pu1.gif" alt="'+POPISKY[0]+'">';
      	var minus = '<img src="'+pridat+'mu1.gif" alt="'+POPISKY[1]+'">';
        var plus2=new Image();plus2.src=pridat+"pu2.gif";
      	var minus2=new Image();minus2.src=pridat+"mu2.gif";
      	var plus22 = '<img src="'+pridat+'pu2.gif" alt="'+POPISKY[0]+'">';
      	var minus22 = '<img src="'+pridat+'mu2.gif" alt="'+POPISKY[1]+'">';
    }
    else{
    	var plus1="";var minus1=""; var plus=""; var minus="";var plus2=""; var minus2=""; var plus22="";var minus22="";
    }
}

function sestavUzel(ul,lev){
    var rozbalit=0;var syn=ul.childNodes;var novyUzel = document.createElement("div");var dlouha=0;
    for (var i=0;i<syn.length;i++) {var vnuci = syn[i].childNodes; var dalsiLev = 0;var podUzly = new Array();
       for (var j=0;j<vnuci.length;j++) {
            var vnuk = vnuci[j];
            if (vnuk.nodeName=='UL') {var novyVnuk=sestavUzel(vnuk,lev+1);dalsiLev=1;}
    	    else {podUzly[podUzly.length] = vnuk.cloneNode(true);}
        }
        if(lev>0){var p=plus22;var m=minus22;}else{var p=plus;var m=minus;}
    	var obr = document.createElement("span");
	   	if (dalsiLev) {//má-li syny
			var kontkont=document.createElement("div");
			if(syn[i].firstChild.tagName!="A"){
				kontkont.className = "kontneodkaz";var kont=document.createElement("a");kont.setAttribute("name","aaa");	
			}
            else {kontkont=document.createElement("div");var kont=document.createElement("span"); kont.className = "neodkaz";}   //document.createElement("b")
            kont.setAttribute("usekce",novyVnuk.getAttribute("id"));
            if(syn[i].firstChild.tagName!="A"){kont.setAttribute("href","javascript:void(0)");kont.className="def";}

            if(ponajeti==2){
                kont.onmouseover=zmena;kont.onclick=podrzmenu;obr.onmouseover=zmena;kont.onkeypress=zmena;
            }
            else {kont.onclick=zmena;kont.onkeypress=zmena;obr.onclick=zmena;}

			rozbalovaci[citac]=kont;
			if(syn[i].className=="toOpen"){kont.setAttribute("rozbal",1);}citac++;
            obr.setAttribute("usekce",novyVnuk.getAttribute("id"));
            obr.innerHTML = p;obr.className = 'menuobr'; obr.id = 'obr-'+novyVnuk.id;
            kontkont.appendChild(obr);
			kontkont.appendChild(kont);
		} 
		else {//uzel bez synů
			var kont=document.createElement("div");var kontkont=kont;kontkont.className = "kontodkaz";
			if(syn[i].className!=null&&syn[i].className=="bs"){//bez synů i bez odkazu
				kontkont.className = "kontodkazbs";
			}
            if(ponajeti==2){
              kont.onmouseover=zmena1;
              kont.onkeypress=zmena1;
              kontkont.onmouseover=zmena1; // SCHOVAT ROZBALENY POLOZKY PRI NAJETI NA POLOZKU BEZ SYNU
            }
            else {
              kont.onclick=zmena1;kont.onkeypress=zmena1;
           }
        }
	   if(syn[i].className!=null&&syn[i].className=="akt"){kontkont.setAttribute("id","akt");}
	   if(obr){ obr.setAttribute("sipka",lev);}
	   for (var k=0;k<podUzly.length;k++){var pU = podUzly[k];if((pU.className!=null&&pU.className=="akt")&&(lev>0)){rozbalit=1;}
            kont.appendChild(pU);
	   }
	   if(dalsiLev){kontkont.appendChild(novyVnuk);}
	   novyUzel.appendChild(kontkont);
	   if(lev==0){var cara=document.createElement("hr");cara.className="skryt";novyUzel.appendChild(cara)}
	}
	if(lev==0){novyUzel.className="main";}
	else{
       if(lev==1){novyUzel.className="sub1 sub";}
	   else{novyUzel.className="sub";}
       novyUzel.setAttribute("lev","sub"+lev);
	   if(horizontalni==1){
			if(lev==1){novyUzel.style.left="auto";}
        }
		else{
			if(lev==1){novyUzel.style.left=sirka1-20+"px";}else{novyUzel.style.left=(sirka2-20)+"px";}
		}
	}
    novyUzel.setAttribute("level",lev);
	var razeneId="u"+citacId;
	citacId++;novyUzel.setAttribute("id",razeneId);novyUzel.style.display = 'none';
    if(rozbalit==1){var rid="r" + rozbaleneId;novyUzel.setAttribute("id",rid);rozbaleneId++;}
    return novyUzel;
}

function podrzmenu(){kliknuto=1;this.className='neodkazakt'}
//function podrzmenu2(){kliknuto=1;}
function sestavStrom() {
	var uly = document.getElementsByTagName("ul");
	for (var u=0;u<uly.length;u++){
      var trida = uly[u].className;
		if (trida) {
			if(trida.indexOf("menu")!=-1){
	          var  vracenyUzel = sestavUzel(uly[u],0);vracenyUzel.style.display = 'block';var otec = uly[u].parentNode;otec.replaceChild(vracenyUzel,uly[u]);
            }
		}
    }
	nacteno=1;
	
	// ODSTRANIT ODKAZY Z POLOZEK S PODUROVNEMA, POKUD NENI NASTAVENO ROZBALENI PODUROVNE PO NAJETI MYSI (typ 1)
	if(ponajeti!=1){
    var mainMenu=document.getElementById("menu");
    var menuItems=mainMenu.getElementsByTagName("a");
    for(var i=0;i<menuItems.length;i++){
      if(menuItems[i].parentNode.className=="neodkaz"||menuItems[i].parentNode.className=="neodkazakt"){
        menuItems[i].setAttribute("href","javascript:void(0)");
      }
    }
  }
}
function zmena1(){//v pripade polozky bez synu
	if(isWaitingForOpenLevel){clearTimeout(timer_beforeOpen);isWaitingForOpenLevel=false;}
	var i;var parel=this.parentNode;var levk=(parel.getAttribute("level")*1)+1;
	if(rozbaleny!=-1){
		var puvodni=document.getElementById(rozbaleny);
		if(this==puvodni){return}levp=puvodni.getAttribute("level");
		if(levk==1){//najeto na prvni uroven
			var oldlevel=levp;
			if(this!=puvodni){skryjSekci(puvodni);}//najeti na jinou prvni uroven
		}
		if(levk>1){if((levp==levk)||(levp>levk)){var oldlevel=levp;if(this!=puvodni){skryjSekci(puvodni,1);}}}
	}
	if(oldlevel>1){
	  var keskryti=puvodni;
		for (i=oldlevel;i>levk;i--){var otec=keskryti.parentNode.parentNode;skryjSekci(otec,1);keskryti=otec;}
	}
	if(this.parentNode.getAttribute("level")>0){rozbaleny=this.parentNode.id;}
}

function zmena() {//v pripade polozky se syny
	var event=arguments[0]||window.event;var obj=event.target||event.srcElement;
	if(obj.tagName.toLowerCase()=="img"){obj=obj.parentNode.parentNode.childNodes[1];}
	else {obj=this;}

	var i;idecko=obj.getAttribute("usekce");obr = document.getElementById("obr-"+idecko);
	kliknuty=document.getElementById(idecko);var levk=kliknuty.getAttribute("level");
	if(rozbaleny!=-1){
		var puvodni=document.getElementById(rozbaleny);
		if((levk!=1||event.type=="keypress")&&ponajeti!=0){if(kliknuty==puvodni){return;}} // _KN_20090417_r
		var levp=puvodni.getAttribute("level");
		if(levk==1){//najeto na prvni uroven
			var oldlevel=levp;
			if(kliknuty){
				if(kliknuty!=puvodni){skryjSekci(puvodni,0);}//najeti na jinou prvni uroven
			}
		}
		if(levk>1){if((levp==levk)||(levp>levk)){
		//najeti na jinou nez prvni uroven, pricemz uroven puvodne aktualni polozky
		//neni mensi nez uroven kliknute polozky
			var oldlevel=levp;
			if(kliknuty){if(kliknuty!=puvodni){skryjSekci(puvodni,0);}}
		}}
	}
	if(kliknuty){
	   vid = kliknuty.style.display;
       clearTimeout(timer_beforeOpen);
	   timer_beforeOpen=setTimeout("openNextLevel()",TIME_TO_OPEN_MENU);
	   isWaitingForOpenLevel=true;
	   if(rozbaleny!=-1){
			 if(puvodni.parentNode.parentNode==kliknuty&&ponajeti!=0){kliknuty.style.display='block';vid = "none";} // _KN_20090417_r
     }
	}
	if(oldlevel>1){
		var keskryti=puvodni;
		for (i=oldlevel;i>levk;i--){var otec=keskryti.parentNode.parentNode;skryjSekci(otec,0);keskryti=otec;}
	}
	obj.className=vid=='none'?'neodkazakt':'neodkaz'; // _KN_20090331_kvuli firefoxu by bylo asi vhodny zakomentovat, aby podmenu neposkakovalo pri najeti na sipku!
    rozbaleny=idecko;
}

function openNextLevel(){
	clearTimeout(timer_beforeOpen);	
	if(!isWaitingForOpenLevel)return;
	kliknuty.style.display=vid=='none'?'block':'none'
    var otec2=kliknuty.parentNode; otec2.style.zIndex=rootMenuZIndex; // _KN_20090330
    rootMenuZIndex++; // _KN_20090330
   obr = document.getElementById("obr-"+idecko);//vymena obrazku
	if (obr){
		if(obr.getAttribute("sipka")==0){var m=minus;var p=plus;}else{var m=minus22;var p=plus22;} obr.innerHTML=vid=='none'?m:p;
	}		
	isWaitingForOpenLevel=false;
}

function skryjSekci(div,bezsynu){
    if(bezsynu==0){if(div==kliknuty){return}}//zajisti nesvinuti v pripade navratu ze syna na otce
    var acko=div.parentNode.childNodes[1];var puvodniId=div.getAttribute("id");
    var obr=document.getElementById("obr-"+puvodniId);
    if (obr){if(obr.getAttribute("sipka")==0){var p=plus}else{var p=plus22}obr.innerHTML=p;}
    acko.className='neodkaz';div.style.display='none';
}

function sbal(){
    if(isWaitingForOpenLevel)return;
    if(rozbaleny==-1){return;}
    if(kliknuto==1){kliknuto=0;return;}
    var i;
  	for (i=0;i<rozbalovaci.length;i++){
  		var levk=kliknuty.getAttribute("level");
  		var elem = rozbalovaci[i];idecko = elem.getAttribute("usekce");kliknuty = document.getElementById(idecko);
  		if(elem.className=='neodkazakt'){if(kliknuty){kliknuty.style.display="none";}elem.className='neodkaz';}
  		obr = document.getElementById("obr-"+idecko);
  		if(obr){if(obr.getAttribute("sipka")==0){var p=plus}else{var p=plus22}obr.innerHTML = p;}
  	}
  	rozbaleny=-1;
  	kliknuto=0;

}
function init(){
   var mn=document.getElementById("menu");
	if(podpora==1){    
		sestavStrom();
		if(horizontalni==1){
			var mn=document.getElementById("menu");
			mn.className="absolutni";
			mn.style.visibility="visible";
		}
        if(ponajeti==2){document.body.onclick=sbal;} //ponajeti2 = kvuli IE6
		else{window.document.onclick=overitObjektProSbaleniMenu;}
    }else{return;}
    if(document.getElementById("jsonly")){document.getElementById("jsonly").style.display="block"}
}
function overitObjektProSbaleniMenu(){
	var event=arguments[0]||window.event;
	var obj=event.target||event.srcElement;
	var elementName=obj.getAttribute("id");
	try{
		while(elementName!="menu"||obj.tagName.toLowerCase()!="body"){
			obj=obj.parentNode;elementName=obj.getAttribute("id");
			if(elementName=="menu"){return;}
		}
	}
	catch(error){	}
	sbal();
}
//window.onload = init;
