var carousel = null;





function thumb_mouseover(e){
	var thumb = Event.element(e);
	var descr = thumb.up('a').next('span');
	new Effect.Opacity(thumb, {
		duration:0.3, 
		from:0.3, 
		to:1,
		beforeStart: function(){
			descr.setOpacity(0.7);
		}
	});
	
}
function thumb_mouseout(e){
	var thumb = Event.element(e);
	var descr = thumb.up('a').next('span');
	new Effect.Opacity(thumb, {
		duration:0.3, 
		from:1, 
		to:0.5,
		queue: 'front',
		beforeStart: function(){
			descr.setOpacity(0);
		}
	});
}

function thumbnailFrameStatehandler(){
	var thumbImgArray = $('carousel').getElementsBySelector('a');
	thumbImgArray.each(function(s){
		s.down('img').setOpacity(0.5);
		s.next(0).setOpacity(0);
		s.observe('mouseover',thumb_mouseover);
		s.observe('mouseout',thumb_mouseout);
	});
}

function ajaxHandler(carousel, status){
	if(status == "before"){
		thumbnailFrameStatehandler();
	}else{
		thumbnailFrameStatehandler();
	}
}

function initDoneHandler(){
	var date = new Date().getTime()/1000; 
	var url = URL_CONTROLLER+'&functionId=4&station='+STATION+'&date='+date;
	
	new Ajax.Request(url, {
	  method: 'get',
	  onSuccess: function(transport) {
		var nextBc = transport.responseText - 1;
		carousel.scrollTo(nextBc);
	  }
	});
}

function buttonStateHandler(button, enabled) {
	if (button == "prev-arrow") 
   		$('prev-arrow').src = enabled ? "typo3conf/ext/nzz_movies/pi5/images/left_on.gif" : "typo3conf/ext/nzz_movies/pi5/images/left_off.gif"
	else 
		$('next-arrow').src = enabled ? "typo3conf/ext/nzz_movies/pi5/images/right_on.gif" : "typo3conf/ext/nzz_movies/pi5/images/right_off.gif"
}

function animHandler(carouselID, status, direction) {
	var region = $(carouselID).down(".carousel-clip-region")
		if (status == "before") {
			Effect.Fade(region, {to: 0.5, queue: { position:'end', scope: "carousel" }, duration: 0.2})
		}
		if (status == "after") {
			Effect.Fade(region, {to: 1, queue: { position:'end', scope: "carousel" }, duration: 0.2})
		}
}

function initCarousel() { 
	var now = new Date();
	var year = now.getFullYear();
   carousel = new Carousel(
		'timeline',  {
			animHandler:animHandler, 
			animParameters:{duration:0.5}, 
			numVisible: 7,
			scrollInc:4,
			nextElementID:'next-arrow', 
			prevElementID:'prev-arrow',
			initDoneHandler:initDoneHandler,
			ajaxHandler:ajaxHandler,
			buttonStateHandler:buttonStateHandler,
			url:URL_CONTROLLER+'&functionId=3&year='+year+'&subtopicId=-1&station='+STATION+'&broadcastId=-1'
		}
	);
};


