$(function(){
    $(".invisible").css({"display":"block","opacity":0});
    
    $(".content").jScrollPane({ showArrows: true });
    $(".content a.zoom").each(function(){
        if($(this).attr("rel") == "") $(this).attr("rel",$(this).closest('.content').attr("id"));  
    });
    $(".zoom").colorbox({photo:true, maxWidth:"95%", maxHeight:"98%", current:"{current} z {total}"});
    
    $(".external").click(function() {
        window.open(this.href); 
        return false;
    });        
    
    $("a.changeBg").click(function(){
        var id = $(this).attr("href").substr(1); 

        if($("#bg #bg"+id).length == 0) return false; // neexistujici pozadi
        if($("#bg #bg"+id).hasClass("active")) return false;

        $("#bg #bg"+id).css({"opacity":0,"z-index":3}).animate({"opacity":1},1000,function(){
            $("#bg .active").css("z-index",1).removeClass("active");
            $(this).css("z-index",2).addClass("active");    
        });

        return false;    
    });
    
    $("#logo").click(function(){
        closeText();
        return false;        
    });
    
    $("#twitter-close").click(function(){
        $("#twitter-widget").stop(true,false).animate({"opacity":0},1200,function(){
            $(this).css("display","none");
        });         
		return false;
    });
    
    
    // Menu - hover
    $("#menu a span:not(.hidden)").css({"display":"block","opacity":0});
    $("#menu a").hover(function(){
        $("span:not(.hidden)",this).stop(true,false).animate({"opacity":1},180); 
    },function(){
        $("span:not(.hidden)",this).stop(true,false).animate({"opacity":0},700);    
    });
    
    
    // otevre okno s obsahem
    $("#menu a, a.openContent").click(function(){
        if($(this).hasClass("loadContent")) return false;
        
        var page = $(this).attr("id").substring(5);
        
        if(isTextOpened()) {
            if($("#content-"+page).css("display") == "block") closeText(); // pokud jsem neklikl na prave otevrenou stranku, tak zavolam event znovu pro otevreni   
            else {
                closeText(false,function(){
                    $("#menu-"+page).trigger("click"); 
                });
            }
        }
        else if($("#content-"+page).length > 0) {
            $(".content").css("display","none");
            $("#content-"+page).css("display","block");             
            openText();   
            if($(this).parents(".content").length>0) { // pro tlacitko back 
                var parent = $(this).parents(".content").attr("id").substring(8);
                $("#shortened-back.hidden").removeClass("hidden");  
                $("#shortened-back").data("menu",parent);  
            }
        }
        return false;
    });
    
    // nacte obsah, pokud neexistuje v cache
    $("a.loadContent").click(function(){
        if(!$(this).hasClass("loadContent")) return false; 
        
        var id = $(this).attr("id").substring(5);     
        
        if($("#content-"+id).length != 0) { // kdyz uz existuje         
            $(this).removeClass("loadContent");
            $(this).trigger("click");
        }                           
        else {
            var module = id.substr(0,id.indexOf("-"));
            var arg = id.substr(id.indexOf("-")+1);
            if(module == null || arg == null) return false;
            
            var link = $(this);
            var div = $("<div />").addClass("content").attr("id","content-"+id).css("display","block").css("visibility","hidden");

            div.load("modal.php?module="+module+"&arg="+arg,function(){                             
                $("#text").append(div); 
 
                $(".zoom",div).colorbox({photo:true, maxWidth:"95%", maxHeight:"98%", rel:module+arg, current:"{current} z {total}"});
                
                div.jScrollPane({ showArrows: true }); 
                div.css("display","none").css("visibility","visible");
                
                link.removeClass("loadContent"); 
                link.trigger("click");        
            });
                       
        }
        return false;
    });
    
    
    $("#shortened").css("display","none");
    $("#shortened a").click(function(){
        if(isTextOpened()) closeText(); 
		return false;
    });
    
    $("#shortened-back").click(function(){
        $("#menu-"+$(this).data("menu")).trigger("click");
        return false;   
    });
    
    
    
    
    function isTextOpened() { 
        //return $("#text").width() != 22; 
        return $("#text").width() > 600; 
    }
    
    function openText() {
        if(isTextOpened()) return;
        
        $("#sidebar-info-hover-lines").stop(true,false).animate({"opacity":1},200);
        $("#twitter-widget").stop(true,false).animate({"opacity":0},1200);  
        
        $("#text").stop(true,false).animate({"width":"1086px"},1400,"easeOutExpo",function(){
            $("#shortened,#shortened-back:not(.hidden)").css("display","block").stop(true,false).animate({"opacity":1},300);
        });        
    }
    
    function closeText(showTwitter, callbackFunc) {
        if(!isTextOpened()) return;
        
        if(showTwitter != false) $("#twitter-widget").stop(true,false).animate({"opacity":1},1200);
        
        $("#sidebar-info-hover-lines").stop(true,false).animate({"opacity":0},1000);          
        $("#shortened,#shortened-back").stop(true,false).animate({"opacity":0},300,function(){
            $(this).css("display","none");
            if(!$("#shortened-back").hasClass("hidden")) $("#shortened-back").addClass("hidden");
        });     
        $("#text").stop(true,false).animate({"width":"22px"},1200,"easeOutExpo",function(){
            if(typeof callbackFunc == 'function'){
                callbackFunc.call(this);
            }
        });        
    }   
    
    if($("#hidden-popup").length > 0) {
        $("#hidden-popup").trigger("click");
    }
    
    $("a.triggered").click(function(){
        $("a[href="+$(this).attr("href")+"]:not(.triggered)").trigger("click");
        return false;   
    });
    

    // URL - autoopen
    if(window.location.hash.length > 1) {
        $("a[href="+window.location.hash+"]").trigger("click");
    }
});

 
