jQuery(document).ready(function() {
    //slider
    var innerSlider = jQuery('#inner-slider'), status = '';
    innerSlider.children().filter('.Yes').remove();
    innerSlider.children('.No').hide().first().addClass('current').show();
    innerSlider.after('<div id="navigator" />');
    var navi = jQuery('#navigator');
    innerSlider.children().each( function(i) {
        navi.append('<a href="#">' + (i+1) + '</a>');
    });
    navi.append('<span id="stop-slider" href="#">STOP</span>')
    navi.children().first().addClass('current');

    navi.children('a').click(function() {
        clearInterval(initSlider);
        navi.children().removeClass('current');
        var _this = jQuery(this).addClass('current'),
        idx = _this.parent().children().index(_this);
        innerSlider.children().removeClass('current').stop(true,true).fadeOut().eq(idx).addClass('current').stop(true,true).fadeIn();
        if ( status == 'playing' ) {
            initSlider = setInterval(moveSlider, 8000);
        }
        return false;
    });

    function moveSlider () {
        var currentSlide = innerSlider.children('.current').removeClass('current').stop(true,true).fadeOut(),
        currentBtn = navi.children('.current').removeClass('current');

        if (currentSlide.next().length !== 0) {
            //if this is not the last one
            currentSlide.next().addClass('current').stop(true,true).fadeIn();
            currentBtn.next().addClass('current');
        } else {
            innerSlider.children().first().addClass('current').stop(true,true).fadeIn();
            navi.children().first().addClass('current');
        }
    }

    /* Stop button */
    jQuery('#slider-container').delegate('#stop-slider', 'click', function(e) {
        e.preventDefault();
        if( jQuery(this).text() == 'STOP' ) {
            status = 'stopped';
            jQuery(this).text('PLAY');
            clearInterval(initSlider);
        } else {
            status = 'playing';
            jQuery(this).text('STOP');
            initSlider = setInterval(moveSlider, 8000);
        }
    });

    initSlider = setInterval(moveSlider, 8000);
});
