var timeout = 500; //ms

var menuInAnim = 200; //ms
var menuOutAnim = 200; //ms
var submenuInAnim = 200; //ms
var submenuOutAnim = 200; //ms

var closetimer1 = 0; //ms
var timerelement1 = undefined;
var closetimer2 = 0; //ms
var timerelement2 = undefined;

function mainmenu(){
                
$(" #navigator ul ").css({display: "none"}); // Opera Fix
$(" #navigator li.lvl0").hover(function(){

                if(closetimer1)
                {
                    window.clearTimeout(closetimer1);
                    closetimer1 = undefined;
                }
                
                if(timerelement1 != undefined){
                    if(timerelement1.get(0) != $(this).get(0) )
                    {
                        close_submenu(timerelement1);
                    }
                }
                
                var position = $(this).find('a:first').position();
		/*podbarvení buttonu*/
		
				if($(this).hasClass('current') == false)
                {
                    if($(this).hasClass('first'))
                    {
                        var mbgf_clone = $('.menu-bg-first').clone(1).appendTo(this);
                        mbgf_clone.css({visibility: "visible",display: "none", position: 'absolute', top: position.top, left: position.left}).fadeIn(menuInAnim);
                    }   
                    else if($(this).hasClass('last'))
                    {
                        var mbgl_clone = $('.menu-bg-last').clone(1).appendTo(this);
                        mbgl_clone.css({visibility: "visible",display: "none", position: 'absolute', top: position.top, left: position.left}).fadeIn(menuInAnim);
                    }
                    else
                    {
                        var mbg_clone = $('.menu-bg').clone(1).appendTo(this);
                        mbg_clone.css({visibility: "visible",display: "none", position: 'absolute', top: position.top, left: position.left}).fadeIn(menuInAnim);
                    }
                }
                if($(this).find('ul:first').hasClass('visible') == false){
                    $(this).find('ul:first').css({visibility: "visible",display: "none", position: 'absolute', top: 35+position.top, left: (position.left)-10}).fadeIn(submenuInAnim).addClass('visible');
                }
                },function(){
                    if($(this).hasClass('current') == false){
                        if($(this).hasClass('first'))
                        {
                            var what = $(this).find('.menu-bg-first');
                            what.fadeOut(menuOutAnim);
                            setTimeout(function(){what.remove();}, menuOutAnim);
                        }   
                        else if($(this).hasClass('last'))
                        {
                            var what = $(this).find('.menu-bg-last');
                            what.fadeOut(menuOutAnim);
                            setTimeout(function(){what.remove();}, menuOutAnim);
                        }
                        else
                        {
                            var what = $(this).find('.menu-bg');
                            what.fadeOut(menuOutAnim);
                            setTimeout(function(){what.remove();}, menuOutAnim);
                        }
                    }
                    timerelement1 = $(this);
                    var reference_element = $(this);
                    closetimer1 = window.setTimeout(function(){close_submenu(reference_element)}, timeout);
                });

$(" #navigator li.lvl1").hover(function(){
    
                if(closetimer2)
                {
                    window.clearTimeout(closetimer2);
                    closetimer2 = undefined;
                }
                
                if(timerelement2 != undefined){
                    if(timerelement2.get(0) != $(this).get(0) )
                    {
                        //close_submenu(timerelement2);
                        if(!closetimer2){
                            closetimer2 = window.setTimeout(function(){close_submenu(timerelement2)}, timeout);
                        }
                    }
                }
                
                if($(this).find('ul:first').hasClass('visible') == false){
                    var position = $(this).find('a').position();
                    $(this).find('ul:first').css({visibility: "visible",display: "none", position: 'absolute', top: (position.top)-10, left: 142+position.left}).fadeIn(submenuInAnim).addClass('visible');
                }
		},function(){
                    timerelement2 = $(this);
                    var reference_element = $(this);
                    closetimer2 = window.setTimeout(function(){close_submenu(reference_element)}, timeout);
		});

}

function close_submenu(element)
{
    element.find('ul:first').fadeOut(submenuOutAnim);
    
    setTimeout(function(){element.find('ul:first').removeClass('visible').css({visibility: "hidden"});}, 150);
}



 $(document).ready(function(){
	mainmenu();
});
