var afns_SlidesPlaying;
var afns_SlidesCurrent = 0;
var afns_SlidesListLength;
var afns_SlidesWidth = 0;

function afns_SlidesPlay() {
    $(".slide_control .play").css("backgroundPosition","0 -135px");
    $(".slide_control .pause").css("backgroundPosition","1px -27px");
    afns_SlidesPlaying = setInterval(function(){
        afns_SlidesNext();
    }, 3900);
}

function afns_SlidesPause() {
    $(".slide_control .play").css("backgroundPosition","0 -113px");
    $(".slide_control .pause").css("backgroundPosition","1px -48px");
    afns_SlidesPlaying = clearInterval(afns_SlidesPlaying);
}

function afns_SlidesPrevious() {
    var slidenum = afns_SlidesCurrent - 1 >= 0 ? afns_SlidesCurrent - 1 : afns_SlidesListLength - 1;
    afns_SlidesToggleCurrent(slidenum);
}

function afns_SlidesNext() {
    var slidenum = afns_SlidesCurrent + 1 < afns_SlidesListLength ? afns_SlidesCurrent + 1 : 0;
    afns_SlidesToggleCurrent(slidenum);
}

function afns_SlidesToggleCurrent(slidenum) {
    if (slidenum != afns_SlidesCurrent) {
        var left_margin = String(-(slidenum * afns_SlidesWidth)) + "px";
        $(".slide_wrapper ul").animate(
            {"marginLeft": left_margin},
            900,
            'easeInQuad',
            function() {
                $(".slide_control .item" + afns_SlidesCurrent).toggleClass("current");
                $(".slide_control .item" + slidenum).toggleClass("current");
                afns_SlidesCurrent = slidenum;
                afns_SlidesMoving = false
            }
        );
    }
}


htmlReady(function() {
    afns_SlidesListLength = $(".slide_wrapper li").length;
    afns_SlidesWidth = parseInt($(".slide_wrapper li a img").css("width"));
    var widget_width = parseInt(17 * afns_SlidesListLength) + "px";
    
    // jQuery will occasioinally throw an error if it calculates a negative width;
    // this is only fatal in IE
    if (!afns_SlidesWidth) {
        afns_SlidesWidth = 385;
    }
    
    $(".slide_select").css("width", widget_width);

    $(".slide_select a.slide").click(function(){
        afns_SlidesPause();
        var slidenum = parseInt($(this).attr("href").split("#")[1]);
        afns_SlidesToggleCurrent(slidenum);
        return false;
    });

    $(".slide_control .prev").click(function(){
        afns_SlidesPrevious();
        return false;
    });

    $(".slide_control .next").click(function(){
        afns_SlidesPause();
        afns_SlidesNext();
        return false;
    });

    $(".slide_control .play").click(function(){
        afns_SlidesPlay();
        return false;
    });

    $(".slide_control .pause").click(function(){
        afns_SlidesPause();
        return false;
    });

    afns_SlidesPlay();
});
