function BuildCarousel(divid, mycarousel_itemList) {

	function mycarousel_itemVisibleInCallback(carousel, item, i, state, evt) {
		// The index() method calculates the index from a
		// given index who is out of the actual item range.
		var idx = carousel.index(i, mycarousel_itemList.length);
		carousel.add(i, mycarousel_getItemHTML(mycarousel_itemList[idx - 1]));
	};

	function mycarousel_itemVisibleOutCallback(carousel, item, i, state, evt) {
		carousel.remove(i);
	};

	/**
	 * Item html creation helper.
	 */
	function mycarousel_getItemHTML(item) {
		return item.html; //You can edit it in the template file, where jcarousel is called.
	};

	jQuery(document).ready(function() {
		jQuery('#'+divid).jcarousel({
			wrap: 'circular',
			itemVisibleInCallback: {onBeforeAnimation: mycarousel_itemVisibleInCallback},
			itemVisibleOutCallback: {onAfterAnimation: mycarousel_itemVisibleOutCallback}
		});
	});

}
