var TabbedArticlesPanel = function() {
	return {
		bootstrap : function(event) {
			if ($('homepagepropertytabs')) {
				var tabs = new tabset('articles_tabbed_panel');
				tabs.autoActivate($('tab_featured_article'));
			}
		}
	}
}();

var MainCarousel = function()
{
	var selectNextInterval;
	var currentlySelected;
	var numberOfElements;
	var intervalTime;

	return {
		bootstrap : function(startFrom)
		{
			if (startFrom == null) startFrom = 0;
			MainCarousel.currentlySelected = 0;
			MainCarousel.selectIndex(startFrom);

			MainCarousel.selectNextInterval = setInterval("MainCarousel.selectNext()", MainCarousel.intervalTime);

			Event.observe($('main_carousel'), 'mouseover', MainCarousel.stopAnimation);

			$$('a[id^="main_carousel_lead_link_"]').each(function(element) {
				Event.observe(element, 'mouseover', MainCarousel.hoverSelectIndex);
			});		
			
		},

		stopAnimation : function()
		{
			clearInterval(MainCarousel.selectNextInterval);
		},

		selectNext : function()
		{
			var nextIndex = MainCarousel.currentlySelected+1;
			if (nextIndex >= MainCarousel.numberOfElements)
				nextIndex = 0;

			MainCarousel.selectIndex(nextIndex);
		},

		hoverSelectIndex : function(event) 
		{
			var linkId = event.findElement().id.replace(/^[^0-9]+/, '');
			MainCarousel.selectIndex(linkId);
		},
		
		selectIndex : function(index)
		{
			var currentIndex = 0;
			index = parseInt(index);
			$$('a[class~="main_carousel_lead"]').each(function(element) {
				element.removeClassName('main_carousel_lead_selected');
				if (currentIndex == index)
				{
					MainCarousel.currentlySelected = index;
					element.addClassName('main_carousel_lead_selected');
				}
				currentIndex++;
			});
			$$('div[class~="main_carousel_image"]').each(function(element) {
				element.addClassName('main_carousel_image_invisible');
			});
			$('main_carousel_item_'+(index+1)).select('div[class~="main_carousel_image"]').each(function(element) {
				element.removeClassName('main_carousel_image_invisible');
			});							
		}
	}
	
}();