/**
 * We use the initCallback callback to assign functionality to the controls
 */

function getItemsNumber() {
	var maxItems = 0;
	jQuery('.boxBannerHome').each(function(i, j) {
		maxItems++;
	});
	return maxItems;
}

function generateScrollButtons() {
	var maxItems = getItemsNumber();

	var html = '';
	for (i = 1; i <= maxItems; i++) {
		html += '<a href="#" class="scrollLinkNumber"><img src="/fileadmin/templates/media/images/off.gif" id="bann_' + i + '"/></a>';
	}

	html = '<a href="#" id="mycarousel-prev"><img src="/fileadmin/templates/media/images/sx.gif"/></a>' + html + '<a href="#" id="mycarousel-next"><img src="/fileadmin/templates/media/images/dx.gif"/></a>';
	jQuery('.jcarousel-control').html(html);
}

function scrollPointsAndBanner(carousel, uid, scrollBanner) {
	var maxItems = getItemsNumber();
	if (scrollBanner)
		carousel.scroll(jQuery.jcarousel.intval(uid));

	for (i = 1; i <= maxItems; i++) {
		jQuery('#bann_' + i).attr('src',
				'/fileadmin/templates/media/images/off.gif');
	}
	uid = jQuery.jcarousel.intval(uid);
	jQuery('#bann_' + uid).attr('src',
			'/fileadmin/templates/media/images/on.gif');
}

function mycarousel_initCallback(carousel) {
	scrollPointsAndBanner(carousel, 1, false);
	jQuery('.jcarousel-control .scrollLinkNumber').bind('click', function() {
		var uid = jQuery('img', jQuery(this)).attr('id').substring(5);
		scrollPointsAndBanner(carousel, uid, true);
		return false;
	});

	jQuery('#mycarousel-next').bind('click', function() {
		carousel.next();
		scrollPointsAndBanner(carousel, carousel.first, false);
		return false;
	});

	jQuery('#mycarousel-prev').bind('click', function() {
		carousel.prev();
		scrollPointsAndBanner(carousel, carousel.first, false);
		return false;
	});
};

function hilightCarousel(carousel) {
	var maxItems = getItemsNumber();
	for (i = 1; i <= maxItems; i++) {
		jQuery('#bann_' + i).attr('src',
				'/fileadmin/templates/media/images/off.gif');
	}
	uid = carousel.first;
	jQuery('#bann_' + uid).attr('src',
			'/fileadmin/templates/media/images/on.gif');
}

// Ride the carousel...
jQuery(document).ready(function() {

	generateScrollButtons();
	jQuery("#mycarousel").jcarousel( {
		 scroll: 1,
	    auto:7,
	    wrap: 'last',
		initCallback : mycarousel_initCallback,
		itemVisibleOutCallback : hilightCarousel,
		// This tells jCarousel NOT to autobuild prev/next buttons
		buttonNextHTML : null,
		buttonPrevHTML : null
	});

});

