function bulletinBoard_itemLoadCallback(carousel, state) {
    for (var i=carousel.first; i<=carousel.last; i++) {
        if (carousel.has(i)) continue;
        if (i > bulletinBoard_itemList.length) break;

        carousel.add(i, unescape(bulletinBoard_itemList[i-1]));
    }
}

function bulletinBoard_initCallback(carousel) {
    jQuery('#bulletin-board-controls .left-arrow a').bind('click', function() {
        carousel.prev();
        return false;
    });

    jQuery('#bulletin-board-controls .right-arrow a').bind('click', function() {
        carousel.next();
        return false;
    });
    
    
    for (var i=0; i<bulletinBoard_itemList.length; i++) {
    	var temp = jQuery('#bulletin-board-dot-' + i + ' a');
    	temp[0].index = i + 1;
    	
    	temp.bind('click', function() {
         	carousel.scroll(this.index);
        	return false;
    	});
    }
}

function bulletinBoard_itemFirstInCallback(carousel, obj, index) {
	// adjust dot colors
	
    for (var i=0; i<bulletinBoard_itemList.length; i++) {
    	var temp = jQuery('#bulletin-board-dot-' + i);
    	temp.removeClass();
    	
    	if (i == index - 1) temp.addClass("blue-dot");
    	else temp.addClass("green-dot");
    }
}

function setup_bulletinBoard() {
	jQuery('#bulletin-board-carousel').jcarousel({
        size: bulletinBoard_itemList.length,
        scroll: 1,
        wrap: "both",
        itemLoadCallback: {onBeforeAnimation: bulletinBoard_itemLoadCallback},
        itemFirstInCallback: {onBeforeAnimation: bulletinBoard_itemFirstInCallback},
        initCallback: bulletinBoard_initCallback,
        buttonNextHTML: null,
        buttonPrevHTML: null
    });
}
