$(document).ready(function()
{
    $('.bulletinViewer').each(function()
    {
        var viewer = this;
        var current = 0;
        var count = $('.bulletin', viewer).length;
        var timer;

        var showBulletin = function(i)
        {
            i = parseInt(i);
            if (i == current) return;

            var currentBulletin = $('.bulletin', viewer).eq(current);
            var nextBulletin = $('.bulletin', viewer).eq(i);

            nextBulletin.fadeIn(1500);
            currentBulletin.fadeOut(1500);

            $('ul li a[rel=' + i + ']', viewer).addClass('active');
            $('ul li a[rel=' + current + ']', viewer).removeClass('active');

            current = i;
        };

        var showNext = function()
        {
            var next = current + 1;
            if (next == count) next = 0;
            showBulletin(next);
        };

        var setup = function()
        {
            timer = setInterval(function() { showNext(); }, 7000);
        };

       	$('ul', viewer).children().remove();
        $('.bulletin', viewer).each(function(i, item)
        {
            var a = $('<a />')
                .attr('href', '#')
                .attr('rel', i)
                .click(function()
                {
                    showBulletin(this.rel);
                    return false;
                })
                .text(i + 1);

            $('ul', viewer).append($('<li />').append(a));
            
            if (i > 0) $(item).hide();
        });

        $('ul li a:first', viewer).addClass('active');

        $(viewer)
            .mouseover(function() { clearInterval(timer); })
            .mouseout(function() { setup(); });

        setup();
    });
});