/**
 * jQuery slider for frontpage
 **/

var MenuPoints_f = [];
var ActiveImg_f = "first";
var SlideTime_f = 0;
var ActiveTab_f = 999999;
var imagesLoaded_f = false;
var First_f = true;
var IsAnimating_f = false;

var ForSlider = {
    "show" : function () {
        var Counter = 1;
        $.each(MenuPoints_f, function (index, item) {
            $(".slider-frontpage .overlay .links").append('<li class="item" id="slider-'+index+'" rel="'+index+'" onclick="ForSlider.slide('+index+');">'+(index + 1)+'</li>');
           
            if(Counter != MenuPoints_f.length) {
                $(".slider-frontpage .overlay .links").append('<li class="spacer"></li>');  
            } else {
                $(".slider-frontpage .overlay .links").append('<li class="item-clear"></li>');   
            }
            
            Counter++;
        });
        
        var WidthUL = $(".slider-frontpage .overlay .links").width();
        var WidthSpace = parseInt(((761 - WidthUL) / 2));
    
        $(".slider-frontpage .overlay .links").css("left", WidthSpace + "px");
        
        $(".slider-frontpage .overlay .links").find("li").mouseover(function () {
            if($(this).hasClass("item")) {
                var Rel = parseInt($(this).attr("rel"));
                
                if(ActiveTab_f != Rel) {
                    $(this).addClass("active");
                }
            }
        }).mouseout(function () {
            if($(this).hasClass("item")) {
                var Rel = parseInt($(this).attr("rel"));
                
                if(ActiveTab_f != Rel) {
                    $(this).removeClass("active");
                }
            }
        });
        
        setInterval(function () {
            if(!IsAnimating_f) {
                var NextSlide = 0;
                
                if((ActiveTab_f + 1) != MenuPoints_f.length) {
                    NextSlide = ActiveTab_f + 1;
                }
                
                ForSlider.slide(NextSlide);
            }
        }, (SlideTime_f * 1000));
    },
    "slide" : function (id) {
        if((ActiveTab_f != id) && (!IsAnimating_f)) {
            var State = (ActiveTab_f > id ? "lesser" : "bigger");
            
            var Imgobj = $(".slider-frontpage .pic-container .image ." + ActiveImg_f);
            var Lengthobj = $(".slider-frontpage .overlay .links #slider-" + ActiveTab_f);
            
            if(Lengthobj.length == 1) {
                $(".slider-frontpage .overlay .links #slider-" + ActiveTab_f).removeClass("active");
            }
            
            var Otherobj = (ActiveImg_f == "first" ? "other" : "first");
            ActiveImg_f = Otherobj;
            ActiveTab_f = id;
            Otherobj = $(".slider-frontpage .pic-container .image ." + Otherobj);
            
            $(".slider-frontpage .overlay .links #slider-" + id).addClass("active");
            
            Otherobj.attr("src", MenuPoints_f[id].path);
            
            IsAnimating_f = true;
            
            if(First_f) {
                Otherobj.stop(true, true).fadeIn(1000, function () {
                    $(this).css("display", "block");
                    IsAnimating_f = false;
                });
                
                First_f = false;
            } else {
                if(State == "lesser") {
                    Otherobj.css("left", "-739px");
                } else {
                    Otherobj.css("left", "739px");
                }
                
                Imgobj.stop().animate({
                    left: (State == "lesser" ? "739px" : "-739px")
                }, 500, function () {
                    //Animation complete
                });
                
                Otherobj.stop(true, true).animate({
                    left: "0px"
                }, 500, function () {
                    IsAnimating_f = false;
                    //Animation complete
                });
            }
        }
    },
    "json" : function (data) {
        delete data.images[0];
        SlideTime_f = parseInt(data.time);
        
        var PreloadImages = ['/files/images/Forside_slider/forside_slider.png', '/files/images/Forside_slider/slider_link_active.png', '/files/images/Forside_slider/slider_link_passive.png'];
        
        var Counter = 0;
        $.each(data.images, function (index, item) {
            MenuPoints_f[Counter] = item;
            PreloadImages.push(item.path);
            
            Counter++;
        });
        
        $.imgpreload(PreloadImages,function() {
            imagesLoaded_f = true;
        });
        
        if(MenuPoints_f.length != 0) {
            ForSlider.show();
        }
    }
}

$(document).ready(function () {
    if(FxmlFeed != "") {
        $(".slider-frontpage #link").click(function () {
            if(MenuPoints_f.length != 0) {
                var Link = MenuPoints_f[ActiveTab_f].link;
                
                if(Link != "") {
                    Link = Link.replace(/http:\/\//gi, "");
                    Link = "http://" + Link;
                    
                    window.location = Link;
                }
            }
        });
        
        var TempInterval_f = setInterval(function () {
            if(imagesLoaded_f) {
                clearInterval(TempInterval_f);
                
                $(".slider-frontpage").fadeIn(500, function () {
                    $(this).css("display", "block");
                    
                    ForSlider.slide(0);
                });
            }
        }, 50);
        
        $.ajax({
            dataType:"jsonp",
            url:FxmlFeed
        });
    }
});
