
//xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx//
//		Vytvořeno 16.8.2005 by Jiri Kamrad                                    //
//xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx//
// identifikator casovace pro schovani vsech otevrenych nabidek
var TIMER_ID_SCHOVAT=null;

// identifikator casovace pro schovani vedlejsi otevrene podnabidky  
var TIMER_ID_SCHOVAT_NEXT=null;

// div podnabidky casovace TIMER_ID_SCHOVAT_NEXT
var TIMER_DIV=null;

// aktulani poloha v menu
var MENU_AKT_A=null;

// bezprostredne predesla polozka menu
var MENU_A_OUT=null;
if(document.getElementById)		//testuje podporu JavaScriptu
{
	//prednacteni obrazku pro dynamicke zmeny
	var adresy_obr=["menu/sipka_on_hl.gif","menu/sipka_on_rozc.gif","odhlaseni.gif",
		"odhlaseni_on.gif","menu/sipka_out_rozc.gif","nove.gif","menu/sipka_out_hl.gif",
		"pozadi_odkaz.gif","zavreni_okno.gif","nove_vzkazy.gif"];
	var nactene_obr=new Array(adresy_obr.length);
	for(var i=0;i<adresy_obr.length;i++)
	{
		nactene_obr[i]=new Image();
		nactene_obr[i].src="images/" + adresy_obr[i];
	}
}

//Prebira hlavni odkazy nebo rozcestniky,sirku divu pro odkazy, nazvy podpolozek,
//jejich adresy a obrazek u odkazu, pokud je
function vlozeni_menu(prvek_a,sirka,polozky,adresy,obrazky)		
{ 
	MENU.style.visibility="visible";
	//ziskani cisla z id pro nastaveni id A prvkum v podnadbidce, id + 01,02..
	//id je ve formatu "m_11" kvuli dodrzeni strict Doctype
	var id_cislo=prvek_a.id.substring(2);
	if(adresy)		//jen pro prvek_a s podnabidkami
	{
		//ziskani sipky hlavnich a vedlejsich odkazu pro dynamicke zmeny
		//a definovani metod udalosti rozcestniku(zmena barvy, sipky atd.)
		if(id_cislo.length==2)		//hlavni odkazy,sipka jiz je vlozena	
		{
			prvek_a.img=prvek_a.getElementsByTagName("IMG")[0];
			prvek_a.efekt_on=function(){this.style.color="#FFDC81";
							this.img.src="images/menu/sipka_on_hl.gif";};	
			prvek_a.efekt_out=function(){this.style.color="#F6F6F6";
							this.img.src="images/menu/sipka_out_hl.gif";};
		}
		else		//ostatni rozcestniky - sipka se musi vlozit
		{
			prvek_a.img=document.createElement("IMG");
			prvek_a.img.setAttribute("src","images/menu/sipka_out_rozc.gif");
			//vlozeni obrazku pred text odkazu
			prvek_a.insertBefore(prvek_a.img,prvek_a.firstChild);
			prvek_a.img.style.cssFloat="right";		//netscape
			prvek_a.img.style.styleFloat="right";		//IE
			prvek_a.img.style.border="none";
			//podbarveni neindikovanych rozcestniku podmenu
			prvek_a.efekt_on=function(){this.style.color="#444444";
							this.img.src="images/menu/sipka_on_rozc.gif";
							this.style.backgroundColor="#F7F7F7";};	
			prvek_a.efekt_out=function(){this.style.color="#F6F6F6";
							this.img.src="images/menu/sipka_out_rozc.gif";
							this.style.backgroundColor="#058BD0";};
		}
	}
	//pro hlavni odkaz bez podnabidek, def. vlastnosti single pro zamezeni
	//pohybu kl. dolu a nahoru, dale definice metod udalosti
	else		
	{
		prvek_a.efekt_on=function(){this.style.color="#FFDC81"}; 	
		prvek_a.efekt_out=function(){this.style.color="#F6F6F6"};
		prvek_a.single=true;		
	}
	//metoda (podbarveni-hloubkomer) pro identifikaci, na ktere polozce jsme.
	//Jen pro rozcestnik ci hl odkaz bez podnabidky (argument prvek_a fce).
	//Podbarveni koncoveho odkazu viz. dale.
	if(OZNACENI && OZNACENI.slice(0,id_cislo.length)==id_cislo)			
	{
		if(adresy)		//zmenu barvy musime provest oddelene kvuli sipkam..		
		{			
			if(id_cislo.length==2)		//zmena barvy pro hlavni odkaz 
			{						
				prvek_a.efekt_out=function(){this.style.color="#FDEB1E";
									this.img.src="images/menu/sipka_out_hl.gif";};
			}		
			else		//zmena barvy pro ostatni rozcestniky
			{
				prvek_a.efekt_out=function(){this.style.color="#009933";
									this.img.src="images/menu/sipka_out_rozc.gif";
									this.style.backgroundColor="#FFF";};
				prvek_a.efekt_on=function(){this.style.color="#009933";
							this.img.src="images/menu/sipka_on_rozc.gif";
							this.style.backgroundColor="#f7f7f7";};
			}
		}
		else		//zmena barvy pro hlavni odkazy bez podnabidek.		
		{
			prvek_a.efekt_out=function(){this.style.color="#FDEB1E"};
		}
		prvek_a.efekt_out();		//spusteni metody pro okamzite podbarveni
	}
	//zamezeni zalomeni hlavnich odkazu a vertikalni vystredeni menu.
	if(id_cislo.length==2)
	{
		//doslo by k zalomeni, menu se uz neveslo na radek siroky 500px
		if((prvek_a.offsetLeft+prvek_a.offsetWidth+21)>570) 
		{
			MENU.insertBefore(document.createElement("BR"),prvek_a);
			MENU.style.top="85px";
		}
		//menu preteklo na druhy radek bez zalomeni - jen menu vystredime
		else if(prvek_a.offsetTop>prvek_a.offsetHeight) 
		{
			MENU.style.top="85px";
		}	
	}	
	prvek_a.onmouseover=function(){menu_over(this);};	//registrace udalosti
	prvek_a.onmouseout=function(){menu_out(this);};
	if(adresy)		//pro odkazy s podnabidkama - vlozeni podnabidek.
	{	
		//do kazdeho rozcestniku vloz div, kam se umisti odkazy podnadbidky
		prvek_a.div=document.createElement("div");	
		prvek_a.div.a=prvek_a;	//zpetna vazba z divu podnadbidky na rozcestnik
		var el_a;
		//kazdy odkaz ma id rozcestniku plus dvojmistne cislo "m_1101,m_1202.."
		id_cislo=id_cislo+"00";
		//odrezani cisla o delce id prvku podnabidky, ktere se nasledne 
		//porovnava pro podbarveni koncoveho odkazu "hloubkomeru"
		if(OZNACENI && id_cislo.length<=OZNACENI.length)		
		{
			var porovnani_oznaceni=OZNACENI.slice(0,id_cislo.length);
		}
		for(var i=0;i<polozky.length;i++)	//vlozeni odkazu do podnadbidky div
		{
			id_cislo++;		
			el_a=document.createElement("A");
			el_a.setAttribute("href",adresy[i]);
			//podbarveni koncovych odkazu bez indikace hloubkomeru podmenu
			el_a.efekt_on=function(){this.style.color="#444";
									this.style.backgroundColor="#F7F7F7";};
			el_a.efekt_out=function(){this.style.color="#F6F6F6";
									this.style.backgroundColor="#058BD0";};
			el_a.setAttribute("id","m_"+id_cislo);
			el_a.appendChild(document.createTextNode(polozky[i]));
			if(obrazky && obrazky[i])		//vlozeni obrazku "nove" u odkazu
			{
				var el_img=document.createElement("img");
				el_img.style.marginLeft="20px";
				el_img.setAttribute("src","images/menu/nove.gif");
				el_img.width="28";
				el_img.height="14";
				el_img.style.border="none";
				el_img.style.paddingRight="2px";
				el_a.appendChild(el_img);	
			}
			el_a.onmouseover=function(){menu_over(this);};
			el_a.onmouseout=function(){menu_out(this);};
			//podbarveni koncoveho odkazu hloubkomeru
			if(porovnani_oznaceni==id_cislo)	
			{
				el_a.efekt_out=function(){this.style.color="#009933";
								this.style.backgroundColor="#FFF";};
				el_a.efekt_on=function(){this.style.color="#009933";
							this.style.backgroundColor="#f7f7f7";};	
			}
			el_a.efekt_out();	// spusteni metody
			//u posledniho odkazu zobraz vespod hruby okraj
			if (i==polozky.length-1) el_a.style.borderBottom="2px solid #666";	
			prvek_a.div.appendChild(el_a);		//vlozeni prvku do divu
		}				//konec cyklu for
		//vlozeni celkoveho poctu odkazu do rodicovskeho prvku, pro pohyb 
		//s klavesnici
		prvek_a.div.suma=id_cislo;	
		//vlozeni divu do rodicovskeho prvku rozcestniku.	
		prvek_a.parentNode.appendChild(prvek_a.div);	
		prvek_a.div.style.visibility="hidden";
		with(prvek_a.div.style)		//styl divu podnabidky
		{
			width=sirka-1+"em";
			position="absolute";
			zIndex="400";
		}
		//umisteni divu vpravo od rodicovskeho prvku, az druha podnabidka
		if (id_cislo>9999)		
		{
			prvek_a.div.style.left=prvek_a.offsetWidth+"px";     
			prvek_a.div.style.top=prvek_a.offsetTop+5+"px";
		}
		else		//div u hlavnich odkazu
		{
			prvek_a.div.style.left=prvek_a.offsetLeft+9+"px";     
			prvek_a.div.style.top=prvek_a.offsetTop+prvek_a.offsetHeight-1+"px";		
		}
	}	//konec if adresy
}
function menu_over(prvek_a)
{
  	if(MENU_A_OUT)	//testuje, zdali je to uplne prvni spusteni metody menu_over		
	{
		if(MENU_AKT_A) MENU_AKT_A.efekt_out();		//spusteni udalosti pro minuly prvek
		clearTimeout(TIMER_ID_SCHOVAT);	
		if(prvek_a.id.length==4)	//hlavni odkazy
		{
			//pokud jsme na hlavnim odkazu schovej vsechny otevrene podnabidky
			schovat(MENU_A_OUT);
			//zapamatovani hlavniho odkazu pri pohybu klavesnici doprava doleva,
			//aby pri opetovnem pouziti mysi nad jiny odkaz doslo ke schovani.	
			MENU_A_OUT=prvek_a;
		}
		else		//ostatni odkazy 
		{
			
			//vsechny zobrazene podnabidky schovej, vedlejsi pres casovac-pomaleji
			var pole_div=prvek_a.parentNode.getElementsByTagName("div");	
			for(var i=0;i<pole_div.length;i++)
			{	
				//identifikace vedlejsi podnabidky a nastaveni casovace
				if(pole_div[i].style.visibility=="visible" && 
								pole_div[i].a.parentNode==prvek_a.parentNode)
				{
					TIMER_DIV=pole_div[i];
					TIMER_DIV.a.efekt_out();
					clearTimeout(TIMER_ID_SCHOVAT_NEXT);
					TIMER_ID_SCHOVAT_NEXT=window.setTimeout("schovat_next(TIMER_DIV)",800);
				}
				else	
				{
					pole_div[i].style.visibility="hidden";
					pole_div[i].a.efekt_out();
				}
			}
			if(prvek_a.parentNode==TIMER_DIV)
			{
				clearTimeout(TIMER_ID_SCHOVAT_NEXT);
				TIMER_DIV=null;
			}	
		}	
	}
	if(prvek_a.div)		//jsme na rozcestniku
	{		
		//zrus casovac pro schovani sousedni ponabidky
		clearTimeout(TIMER_ID_SCHOVAT_NEXT);
		//schovej div, ktery byl v casovaci TIMER_ID_SCHOVAT_NEXT
		//Druha podminka je nutna!Zbrani zavreni divu v časovači pokud na nej 
		//znovu najedeme. 		
		if(TIMER_DIV&&TIMER_DIV.parentNode==prvek_a.parentNode) 
		{
			TIMER_DIV.style.visibility="hidden";
			TIMER_DIV=null;
		}		
		prvek_a.div.style.visibility="visible";		//zobrazeni podnabidky
	}
	//podbarveni rozcestniku pri pohybu na jeho podpolozkach
	if(prvek_a.parentNode.a) prvek_a.parentNode.a.efekt_on();
	MENU_AKT_A=prvek_a;
	prvek_a.efekt_on();
}
//fce slouzi jen pro koncove schovani podnabidek, tzn. pokud jiz neprejdeme
//na dalsi odkaz. V menu_over se schovani stornuje. 
function menu_out(prvek_a)
{
	//osetreni proti soucasnemu pouziti mysi a klavesnice.
	//zabrani znovu zavreni jiz zavreneho divu..
	if(prvek_a.parentNode.style.visibility=="visible")
	{
		MENU_A_OUT=prvek_a; 	
		//schovej vsechny podnabikdy
  		TIMER_ID_SCHOVAT=window.setTimeout("schovat(MENU_A_OUT)",1000); 
		prvek_a.efekt_out();
	}		
}
function schovat(prvek_a)
{
	if(TIMER_DIV)		//schovani divu v nastavenem casovaci
	{
		clearTimeout(TIMER_ID_SCHOVAT_NEXT);
		TIMER_DIV.style.visibility="hidden";
		TIMER_DIV=null;
	}
	var div_hl=null; 
	if(prvek_a.id.substring(2)>99)	//podnabidky   
	{
		if(prvek_a.div) prvek_a.div.style.visibility="hidden";
		//schovani vsech rodicovskych otevrenych divu,prochazeni zezdola nahoru.
		//Zustane otevreny pouze posledni div pod hlavnim odkazem.
		for(div_hl=prvek_a.parentNode;div_hl.a.id.length>4;div_hl=div_hl.parentNode)
		{
			div_hl.style.visibility="hidden";
			div_hl.a.efekt_out();
		}
		prvek_a=div_hl.a	//obsahuje odkaz s otevrenou podnabidku 
	}
	if(prvek_a.div) prvek_a.div.style.visibility="hidden";
	prvek_a.efekt_out();
	//aby nezustal podbarveny odkaz podnabidky
	if(MENU_AKT_A) MENU_AKT_A.efekt_out();
	MENU_A_OUT=null;
	MENU_AKT_A=null;
}
function schovat_next(prvek_div){
	prvek_div.style.visibility="hidden";
	TIMER_DIV=null;
}

//fce pro rozbaleni prvni podnabidky klavesovou zkratkou Shift+Ctrl+pismeno
function identifikace(cislo)		
{
	//prevedeni ASCII kodu na male pismenko
	var pismeno=String.fromCharCode(cislo).toLowerCase();
	//alert(pismeno);		
	if (POLE_KL_ZKRATEK[pismeno])	//zjisteni jestli je pismeno registrovane
	{
		var element=document.getElementById("m_"+POLE_KL_ZKRATEK[pismeno]);
		//Ulozeni prvku na kterem jsme byli pred pouzitim kl. zkratky
		if(MENU_AKT_A) MENU_A_OUT=MENU_AKT_A;	
		menu_over(element);		//spusteni metody pro hlavni nabidku
		MENU_A_OUT=element;
	}
		
}	


function odstraneni_obrazku()
{
	cyklu=MENU.getElementsByTagName("IMG").length;
	while(cyklu)
	{
		var element=MENU.getElementsByTagName("IMG")[0];
		element.parentNode.removeChild(element);
		cyklu--;
	}
}
	


