banner = {
    list    : {},/* Lista banerów */
    length  : 0,
    counter : 0,/* Aktualnie wyświetlany banner */
    delay   : 10000,/* Opóżnienie pomiędzy bannerami */
    timer   : null,/* Timer */
    bBig    : [], /* Konkretne obrazki */
    bSmall  : [],
    hovers  : [], 
    sliders : [],
    loading : false
};

banner.init = function() {
    banner.bBig.push(document.getElementById("banner_big_img"));
    banner.bSmall.push(document.getElementById("banner_small_img1"));
    banner.bSmall.push(document.getElementById("banner_small_img2"));
    banner.bSmall.push(document.getElementById("banner_small_img3"));
    
    banner.hovers.push(document.getElementById("banner_big_hover"));
    banner.hovers.push(document.getElementById("segment1_hover"));
    banner.hovers.push(document.getElementById("segment2_hover"));
    banner.hovers.push(document.getElementById("segment3_hover"));
    
    banner.sliders.push(document.getElementById("banner_big_slider"));
    banner.sliders.push(document.getElementById("segment1_slider"));
    banner.sliders.push(document.getElementById("segment2_slider"));
    banner.sliders.push(document.getElementById("segment3_slider"));
    
    banner.hovers[0].onmouseover = function() {
         if(!banner.loading) {
             $("#banner_big_slider").fadeIn("slow");
             $("#banner_big_slider2").fadeIn("slow");
             
             banner.pause();
         }
    };
    banner.hovers[0].onmouseout = function() {
         if(!banner.loading) {
             $("#banner_big_slider").fadeOut("slow");
             $("#banner_big_slider2").fadeOut("slow");
             banner.start();
         }
    };
    
    banner.hovers[1].onmouseover = function() {
        if(!banner.loading) {
            $("#segment1_slider").fadeIn("slow");
            $("#segment1_slider2").fadeIn("slow");
            banner.pause();
        }
    };
    banner.hovers[1].onmouseout = function() {
        if(!banner.loading) {
            $("#segment1_slider").fadeOut("slow");
            $("#segment1_slider2").fadeOut("slow");
            banner.start();
        }
    };
    banner.hovers[2].onmouseover = function() {
         if(!banner.loading) {
             $("#segment2_slider").fadeIn("slow");
             $("#segment2_slider2").fadeIn("slow");
             banner.pause();
         }
    };
    banner.hovers[2].onmouseout = function() {
         if(!banner.loading) {
             $("#segment2_slider").fadeOut("slow");
             $("#segment2_slider2").fadeOut("slow");
             banner.start();
         }
    };
    banner.hovers[3].onmouseover = function() {
         if(!banner.loading) {
             $("#segment3_slider").fadeIn("slow");
             $("#segment3_slider2").fadeIn("slow");
             banner.pause();
         }
    };
    banner.hovers[3].onmouseout = function() {
         if(!banner.loading) {
             $("#segment3_slider").fadeOut("slow");
             $("#segment3_slider2").fadeOut("slow");
             banner.start();
         }
    };
};

banner.change = function() {
    var objBanner = banner.list[banner.counter];
    var l = objBanner.length;
    
    if (l == 1) {
        $("#banner_small").css("display", "none");
        $("#banner_big").css("display", "block");

        $("#banner_big_hover").css("display", "block");
        $("#segment1_hover").css("display", "none");
        $("#segment2_hover").css("display", "none");
        $("#segment3_hover").css("display", "none");
        
        
        banner.bSmall[0].src = null;
        banner.bSmall[1].src = null;
        banner.bSmall[2].src = null;
        
        $("#img_loading0").css("display", "block");
        banner.loading = true;
        
        $("#banner_big_img").fadeOut( 
            1000, function() {

            banner.bBig[0].src = objBanner[0].src;
            banner.sliders[0].innerHTML = objBanner[0].title;
            banner.hovers[0].onclick = function() {
                window.location.href = objBanner[0].url;
            };

            banner.bBig[0].onload = function() {
                $("#img_loading0").css("display", "none");
                $("#banner_big_img").fadeIn(1000);
                banner.loading = false;
            };
        });
    }
    else if(l == 3) {
        $("#banner_big").css("display", "none");
        $("#banner_small").css("display", "block");
        
        $("#banner_big_hover").css("display", "none");
        $("#segment1_hover").css("display", "block");
        $("#segment2_hover").css("display", "block");
        $("#segment3_hover").css("display", "block");

        banner.bBig[0].src = null;

        $("#img_loading1").css("display", "block");
        banner.loading = true;
        
        $("#banner_small_img1").fadeOut( 
            1000, function() {

            banner.bSmall[0].src = objBanner[0].src;
            banner.sliders[1].innerHTML = objBanner[0].title;
            banner.hovers[1].onclick = function() {
                window.location.href = objBanner[0].url;
            };

            banner.bSmall[0].onload = function() {
                $("#img_loading1").css("display", "none");
                $("#banner_small_img1").fadeIn(1000);
                banner.loading = false;
            };
        });
        
        $("#img_loading2").css("display", "block");
        banner.loading = true;
        
        $("#banner_small_img2").fadeOut( 
            500, function() {

            banner.bSmall[1].src = objBanner[1].src;
            banner.sliders[2].innerHTML = objBanner[1].title;
            banner.hovers[2].onclick = function() {
                window.location.href = objBanner[1].url;
            };

            banner.bSmall[1].onload = function() {
                $("#img_loading2").css("display", "none");
                $("#banner_small_img2").fadeIn(1000);
                banner.loading = false;
            };
        });
        
        $("#img_loading3").css("display", "block");
        banner.loading = true;
        
        $("#banner_small_img3").fadeOut( 
            1000, function() {

            banner.bSmall[2].src = objBanner[2].src;
            banner.sliders[3].innerHTML = objBanner[2].title;
            banner.hovers[3].onclick = function() {
                window.location.href = objBanner[2].url;
            };

            banner.bSmall[2].onload = function() {
                $("#img_loading3").css("display", "none");
                $("#banner_small_img3").fadeIn(1000);
                banner.loading = false;
            };
        });
    }

   
};

banner.setDelay = function(delay) {
    banner.delay = delay;
};

banner.showLoading = function(type) {
    switch(type) {
        case "big":
            $("#img_loading0").css("display", "block");
            break;
        case "small":
            $("#img_loading1").css("display", "block");
            $("#img_loading2").css("display", "block");
            $("#img_loading3").css("display", "block");
            break;
    }
};

banner.hideLoading = function(type) {
    switch(type) {
        case "big":
            $("#img_loading0").css("display", "none");
            break;
        case "small":
            $("#img_loading1").css("display", "none");
            $("#img_loading2").css("display", "none");
            $("#img_loading3").css("display", "none");
            break;
    }
};

banner.start = function() {
    clearInterval(banner.timer);
    banner.timer = setInterval(function() {
       if (banner.length > 1) {
           banner.next();
       }
       else {
           clearInterval(banner.timer);
       }
    }, banner.delay);
};

banner.stop = function() {
    clearInterval(banner.timer);
    
    banner.counter = 0;
};

banner.pause = function() {
    clearInterval(banner.timer);
};

banner.add = function(objBanner) {
    if(objBanner.type == 'big') {
        banner.list[objBanner.group] = [];
        banner.list[objBanner.group][objBanner.groupOrder] = objBanner;
        banner.length++;
    }
    else if(objBanner.type == 'small') {
        /* Inicjuj 3 małe bannery */
        if (!banner.list[objBanner.group]) {
            banner.initSmallBanners(objBanner.group);
        }
        banner.list[objBanner.group][objBanner.groupOrder] = objBanner;
    }
};

banner.next = function() {
    banner.counter++;
    
    if (banner.counter >= banner.length) 
        banner.counter = 0;

    banner.change();
};

banner.previous = function() {
    banner.counter--;
    
    if (banner.counter < 0) 
        banner.counter = banner.length - 1;
    
    banner.change();
};



banner.initSmallBanners = function(group) {
    banner.list[group] = [];
    banner.length++;

    banner.list[group][0] = {
        src        : 'images/1x1.jpg',
        type       : 'small',
        group      : group,
        groupOrder : 0
    };
    banner.list[group][1] = {
        src        : 'images/1x1.jpg',
        type       : 'small',
        group      : group,
        groupOrder : 1
    };
    banner.list[group][2] = {
        src        : 'images/1x1.jpg',
        type       : 'small',
        group      : group,
        groupOrder : 2
    };
}



