var currentSlide = 0;
var intervalID = -1;
var imagesCount = 0;
var qLimageContainer = "";
var totalImages = 0;
var hoveringSlides = false;

$(function(){
    $("#gallery .slides img").bind("load", function () {
        check_loaded();
    });

    qLimageContainer = $("<div></div>").appendTo("body").css({
        display: "none",
        width: 0,
        height: 0,
        overflow: "hidden"
    });
    $("#gallery .slides .slide").each(function () {
        var extra = "";
        if ($.browser.msie && $.browser.version < 9) {
            extra = "?" + Math.floor(Math.random() * 3000);
        }
        url = $(this).css("background-image");
        url = url.replace(/url\(\"/g, "");
        url = url.replace(/url\(/g, "");
        url = url.replace(/\"\)/g, "");
        url = url.replace(/\)/g, "");

        var image = $("<img />").attr("src", url + extra).bind("load", function () {
            check_loaded();
        }).appendTo(qLimageContainer);
    });
    totalImages = $("#gallery .slides .slide").length;

    $("#gallery div.slides .slide:not(:first)").css({opacity: 0});
    $("#gallery div.text:not(:first)").css({opacity: 0});
    $("#gallery ul.navigation li").click(function(){
        var nr = $(this).attr("id").split('-')[1];
        showSlide(nr - 1, true);
    });
    showSlide(currentSlide);

    $("section.press_releases article").hover(function(){
        $(this).addClass("hover");
    }, function(){
        $(this).removeClass("hover");
    }).click(function(){
        window.open($("a", this).attr("href"));
    });

    $("#gallery .inside").hover(function () {
        hoveringSlides = true;
    }, function () {
        hoveringSlides = false;
    });

    /* video binding */

    $("#black, #close_btn").click(function(){
        $("#black, #popup").hide();
        $("#popup iframe").attr("src", '');
    });

    // On the Video page:
    $("section.videos article").click(function(){
        $("#black, #popup").show();
        $("#popup").css({
            width: "533px",
            height: "400px",
            top: "50%",
            left: "50%",
            marginLeft: "-266px",
            marginTop: "-200px"
        });
        if ($("#popup #close_btn").length == 0) {
            $("#popup").prepend($("<div id=\"close_btn\"></div>"));
        }
        $("#popup iframe").attr("src", $("a", this).attr("href"));

        $("#black, #close_btn").click(function(){
            $("#black, #popup").hide();
            $("#popup iframe").attr("src", '');
        });
    });
    $("section.videos article a").click(function (event) {
        event.preventDefault();
    });
});

function check_loaded() {
    imagesCount++;
    if (totalImages == imagesCount) {
        $("#preloader").fadeOut(500, function () {
            $(this).remove();
        });
        $(qLimageContainer).remove();
    }
}

function showSlide(nr, force)
{
    if (hoveringSlides == false || force == true) {
        var l = $("#gallery ul.navigation li").length;
        currentSlide = nr;
        if(currentSlide < 0) { currentSlide = l-1; }
        if(currentSlide > l-1) { currentSlide = 0; }
        $("#gallery div.text:visible").stop().animate({opacity: 0}, function(){ $(this).hide(); });
        $("#gallery div.slides .slide").stop().animate({opacity: 0});
        $("#gallery ul.navigation li").removeClass("active");
        $("#gallery .linkherring").css("display", "none");
        $("#showslide-" + (currentSlide + 1)).addClass("active");
        $("#banner-" + (currentSlide + 1)).stop().show().animate({opacity: 1});
        $("#image-" + (currentSlide + 1)).stop().animate({opacity: 1});
        $("#link-" + (currentSlide + 1)).css("display", "block");
    }

    setTimeout('nextSlide()', 7000);
}

function nextSlide()
{
    showSlide(currentSlide + 1);
}
