/**
 *  3Sixty Carousel
 *  Based on code originally by Athletics NYC.
 *  Last modified: 2010-11-30 <pete@3sixty.co.uk>
 */

function initCarousel() {
    
    var carousel = $('#carousel');
    
    $('.cNav', carousel).each( function() {
        
        $(this).unbind('click').click( function () {
            
            if ( !$(this).hasClass('disabled') ) {
                
                var currBlock = carousel.find('li.current');
                var nextBlock = currBlock.next();
                
                scrollCarousel( carousel, nextBlock );
                
            }
            
            return false;
            
        });
        
    });
    

    carousel.find('#cPrev').unbind('click').click( function () {
        
        if ( !jQuery(this).hasClass('disabled') ) {
            
            var currBlock = carousel.find('li.current');
            var nextBlock = currBlock.prev();
            
            scrollCarousel( carousel, nextBlock );
            
        }
        
        return false;
        
    });
    
}

function scrollCarousel( carousel, nextBlock ) {
    
    carousel.find('ul').stop().animate( {left: -nextBlock.position().left}, function () {
        $(window).resize();
    });
    
    carousel.find('li.current').removeClass('current');
    nextBlock.addClass('current');
    
    updateCNav( carousel, nextBlock );
    
}

function updateCNav( carousel, currBlock ) {
    
    var $firstBlock = carousel.find('li:first');
    var $lastBlock = carousel.find('li:last');
    
    carousel.find('#cPrev, #cNext').removeClass('disabled');
    
    if ( currBlock.attr('id') == $firstBlock.attr('id') ) {
        carousel.find('#cPrev').addClass('disabled');
    }
    else if ( currBlock.attr('id') == $lastBlock.attr('id') ) {
        carousel.find('#cNext').addClass('disabled');
    }
    
}

//  Bind on load
$(document).ready( function() {
    initCarousel();
});

