/*
    Definice menu:
      Zatim maximalne do 3. radu, ale neni problem posleze rozsirit ;-)
      Definice je ["nazev menu(jak bude zobrazene)","odkaz"]
      Rozvetvovani je potom 3.prvek vlozeny jako pole
      Kdybys tam chtel dodat treba aj bublinku a podobne tak rekni, moc uprav to az tak neni
      
      Musel jsem to udelat takhle dementne, pac jsem ti nechtel rozorat dokument, 
      nezkousel jsem to na ostatnich prohlizecich, ale melo by to valit, jsou tam veci,
      ktere by meli valit v ramci javascriptu vsude, ale nekde muze byt problem, tak kdyztak dej vedet ;-)
      
      
      Co potrebujes, to odmazni a pripadne dej vedet, co je potreba dodelat..
      
      
*/
var MenuStructure =	[
												["","#"],
												["úvod","#"],
												["o firmě","#",
														[
																["kdo jsme","index.php?text=50-kdo-jsme"],
																["historie","index.php?text=51-historie"],
																["obrazová galerie","foto-index.php"],
																["napsali o nás","index.php?text=58-napsali-o-nas"],
																["certifikáty","index.php?text=52-certifikaty"],
																["veletrhy","#",
																    [
																        ["msv 2009","index.php?text=59-mezinarodni-strojirensky-veletrh-v-brne-2009"],
																        ["msv 2008","index.php?text=60-mezinarodni-strojirensky-veletrh-v-brne-2008"],
																        ["msv 2007","index.php?text=61-mezinarodni-strojirensky-veletrh-v-brne-2007"],
																        ["msv 2006","index.php?text=62-mezinarodni-strojirensky-veletrh-v-brne-2006"]
																    ]
																],
																["semináře","#",
																    [
																        ["seminář uživatelů 2009","index.php?text=63-setkani-uzivatelu-stroju-penta-2009"],
																        ["seminář uživatelů 2008","index.php?text=64-setkani-uzivatelu-stroju-penta-2008"]
																    ]
																]
														] 
												],
												["aktuality","#"],
												["produkty","#",
														[
																["drátové řezačky","index.php?text=9-dratove-rezacky"],
																["elektroerozivní hloubičky","index.php?text=12-elektroerozivni-hloubicky"],
																["edm vrtačky","#",
																    [
																        ["manuální vrtačky","index.php?text=27-manualni-vrtacky"],
																        ["cnc vrtačky","index.php?text=32-cnc-vrtacky"]
																    ]
																],
																["hsc obráběcí centra","index.php?text=38-hsc-obrabeci-centra"],
																["použité stroje","index.php?text=44-pouzite-stroje"],
                                ["ostatní produkty","#",
																		[
																				["upínání","index.php?text=45-upinaci-systemy"],
																				["spotřební materiál","index.php?text=46-spotrebni-material"],
																				["normálie","index.php?text=47-normalie"],
																				["grafit","index.php?text=48-grafit"],
																				["programovací systémy","index.php?text=49-programovaci-systemy"],
																				["mini-hloubičky","index.php?text=83-elektroerozivni-mini-hloubicka-alic-1"],
																				["profilování nástrojů","index.php?text=92-profilovani-pkd-a-cbn-nastroju"]
																		]
																]
														]
												],
												["služby","#",
														[
																["servis a podpora","index.php?text=65-servis-a-podpora"],
																["zakázková výroba","#",
																		[
																				["zakázkové řezání","index.php?text=70-zakazkove-rezani"],
																				["výroba gr elektrod","index.php?text=71-vyroba-grafitovych-elektrod"],
																				["zakázkové hloubení","index.php?text=72-zakazkove-hloubeni"]
																		]
																],
																["modernizace","index.php?text=66-modernizace"]
														]
												],
												["kontakty","#",
												  [
												      ["centrála firmy praha","index.php?text=53-centrala-firmy-praha"],
												      ["pobočka ace morava","index.php?text=54-pobocka-ace-morava"],
												      ["pobočka tce louny","index.php?text=56-pobocka-tce-louny"],
												      ["pobočka as říčany","index.php?text=57-pobocka-as-ricany"],
												      ["pobočka slovensko","index.php?text=55-pobocka-slovensko"]
												      
												  ]
												]
										];
										
/*    Nastaveni mezer - udavat numericky (vysledne bude zobrazeno v px)    
      - horizontalni rozdil od hlavniho menu (dolu)   */
var horizontalni_mezera = 1;
/*    - vertikalni rozdil od podmenu (napravo)    */
var vertikalni_mezera   = 2;
/*    Nastaveni casu pro skryti menu (kdyz jsou vetsi mezery, tak aby to dementne nezajelo cely...)    */
var doba_skryti_menu    = 350 ;


/*    Nacteni obrazku menu predem  */
var bgSubMenu   = new Image();
var bgSubMenuH  = new Image();

bgSubMenu.src   = "./images/web/bg_submenu.jpg";
bgSubMenuH.src  = "./images/web/bg_submenu_h.jpg";

var Navigator   = "";
// alert (navigator.appVersion);
if (navigator.appVersion.indexOf("MSIE 6") != -1 || navigator.appVersion.indexOf("MSIE 7") != -1)
    {Navigator = "badIE";}
else
    {Navigator = "OK";}
if (navigator.appVersion.indexOf("MSIE 8") != -1)
		{Navigator = "OK";}
/*    trida menu    */
var menu = 
{
		MenuFloater     : null,
		SubMenuFloater  : null,
		MenuNode        : null,
		MenuHidePrep    : null,
    		
		init            : function ()
		{
		    /*    tahle funkce projede vsechny prvky <li> a prihodi jim vlastnost onmouseover
		          zaroven preddefinuje promene s ktreyma bude cela trida pracovat
        */
		    var m = document.getElementsByTagName('li');
		    for (var i=0; i < m.length; i++)
		    {
            m[i].onmouseover  = menu.show2nd;
        }
        menu.MenuFloater    = document.getElementById("FloatingMenu");
        menu.SubMenuFloater = document.getElementById("FloatingSubMenu");
    },                      
    
    show2nd         : function ()
    {
        /*    tahle funkce tvori 2.uroven menu - podle toho nad cim je mys upravi plovouci div
        */
        menu.restore();
        
        var MenuId = this.id.replace("menu_","");
        var k = menu.MenuFloater;
        var l = menu.SubMenuFloater;
        
        /*    Podle definice menu bud skryje div, nebo ho zviditelni a zapise do nej odkazy podle definice    */
        if (MenuStructure[MenuId].length > 2)
				{
            k.style.display = "block";
            k.innerHTML     = "";
            
            for (var j=0;j < MenuStructure[MenuId][2].length;j++)
            {
                k.innerHTML += "<a href='" + MenuStructure[MenuId][2][j][1] + "' class='submenu' name='submenu' id='SM_" + MenuId + "_2_" + j + "_2'>" + MenuStructure[MenuId][2][j][0] + "</a><br />";
            }
            /*    Projede prvky podmenu, jestli nemaji dalsi nabidku (resp. prida vlastnost onmouseover)    */
            var n = document.getElementsByName('submenu');
    		    for (var i=0; i<n.length; i++)
    		    {
                n[i].onmouseover  = menu.show3rd;
            }
            /*    Uprava a zarazeni plovouciho menu na spravne misto    */
            var d =   this.offsetLeft;
            
            if (Navigator=="badIE")
            {
                d +=  this.offsetWidth/2;
                d +=  this.offsetWidth;
                d -=  k.offsetWidth/2;
            }else
            {
                d +=  this.offsetWidth;
     				    d -=  k.offsetWidth;
            }
    				this.childNodes[0].style.background = 'url("images/web/top_button_0' + MenuId + '_h.jpg")';
    				
            k.style.left 	  = d + "px";
				    k.style.top 	  =	this.offsetHeight + horizontalni_mezera + "px";
            k.onmouseout    = menu.hide;
            k.onmouseover   = menu.showMenu;
            try
                {clearTimeout(MenuHidePrep);}
            catch(err)
                {}
            
        }
        else
        {
            k.style.display = "none";
            l.style.display = "none";
            menu.restore();
        }
		},
		
    show3rd         : function ()
    {
        /*    Uz se mi to nechce moc rozepisovat - tohle je to samy    */
        var MenuId = this.id.replace("SM_","");
				var MenuIdArr = MenuId.split("_");  
				
				var k = menu.MenuFloater;
        var l = menu.SubMenuFloater;
        
        try 
        {
            var test = document.getElementById("SM_" + MenuIdArr[0] + "_" + MenuIdArr[1] + "_" + (MenuIdArr[2]*1 + 1) + "_" + MenuIdArr[3]);
//             alert(test.style.color);
            if (test.style.color == "ivory" || test.style.color == "rgb(255, 255, 240)" || test.style.color == "#fffff0")
                {                                         
                    test.style.background     = "url('images/web/bg_submenu.jpg') repeat-x";
                    test.style.color          = "#00589a";
                    test.style.textDecoration = "none";
                }
        }
        catch(err)
        {
//             alert(err);
//             alert("SM_" + MenuIdArr[0] + "_" + MenuIdArr[1] + "_" + (MenuIdArr[2]*1 + 1) + "_" + MenuIdArr[3]);
        }
        try
        {
            test = document.getElementById("SM_" + MenuIdArr[0] + "_" + MenuIdArr[1] + "_" + (MenuIdArr[2]*1 - 1) + "_" + MenuIdArr[3]);
            if (test.style.color == "ivory" || test.style.color == "rgb(255, 255, 240)" || test.style.color == "#fffff0")
                {
                    test.style.background     = "url('images/web/bg_submenu.jpg') repeat-x";
                    test.style.color          = "#00589a";
                    test.style.textDecoration = "none";
                }
        }
        catch(err)
        {
//             alert(err);
//             alert("SM_" + MenuIdArr[0] + "_" + MenuIdArr[1] + "_" + (MenuIdArr[2]*1 + 1) + "_" + MenuIdArr[3]);
        }
        
        
				if (MenuStructure[MenuIdArr[0]][MenuIdArr[1]][MenuIdArr[2]].length > 2)
				{
				    l.innerHTML     = "";
				    k.style.display = "block";
            l.style.display = "block";
            
            for (var j=0;j < MenuStructure[MenuIdArr[0]][MenuIdArr[1]][MenuIdArr[2]][MenuIdArr[3]].length;j++)
            {
                menu.MenuNode = document.createElement('div');
            		menu.MenuNode.setAttribute('class','submenu');
            		menu.MenuNode.setAttribute('name','subsubmenu');
            		menu.MenuNode.setAttribute('id','SSM' + j);
            		l.appendChild(menu.MenuNode);
            		var z = document.getElementById('SSM' + j);
                z.innerHTML = "<a href='" + MenuStructure[MenuIdArr[0]][MenuIdArr[1]][MenuIdArr[2]][MenuIdArr[3]][j][1] + "' class='submenu' name='submenu'>" + MenuStructure[MenuIdArr[0]][MenuIdArr[1]][MenuIdArr[2]][MenuIdArr[3]][j][0] + "</a>";
            }
            var d =   this.parentNode.offsetLeft;
                d +=  this.offsetWidth;
                d +=  vertikalni_mezera;
                           
            l.style.left 	  = d + "px";
				    l.style.top 	  =	this.parentNode.offsetTop + this.offsetTop + "px";
            l.onmouseout    = menu.hide;
            l.onmouseover   = menu.showSubMenu;
            
            this.style.background     = "url('images/web/bg_submenu_h.jpg') repeat-x";
            this.style.color          = "ivory";
//             this.style.textDecoration = "underline";
            
            try
                {clearTimeout(MenuHidePrep);}
            catch(err)
                {}
        }
        else
        {
            l.style.display = "none";
        }
		},
		
		hide            : function ()
		{   
        MenuHidePrep = setTimeout('menu.hideMenu();',doba_skryti_menu);
    },
    hideMenu        : function ()
    {
        menu.restore();
        menu.MenuFloater.style.display    = "none";
        menu.SubMenuFloater.style.display = "none";
        try
            {clearTimeout(MenuHidePrep);}
        catch(err)
            {}
    },
    showMenu        : function ()
    {
        menu.MenuFloater.style.display    = "block";
        try
            {clearTimeout(MenuHidePrep);}
        catch(err)
            {}
    },
		showSubMenu     : function ()
    {
        menu.MenuFloater.style.display    = "block";
        menu.SubMenuFloater.style.display = "block";
        try
            {clearTimeout(MenuHidePrep);}
        catch(err)
            {}
    },
    restore         : function ()
    {
        if (menu.MenuFloater.firstChild != null)
        {
            var MenuId    = menu.MenuFloater.childNodes[0].id.replace("SM_","");
    				var MenuIdArr = MenuId.split("_");  
    				document.getElementById("menu_"+MenuIdArr[0]).childNodes[0].style.background = 'url("images/web/top_button_0' + MenuIdArr[0] + '.jpg")';
        }
    }
}


/*    Po nacteni stranky se menu aktivuje    */
window.onload = menu.init;



