$(function() {

    /* Document Basket */

	$(".FCE-downloads ul").each(function(){
    		$(this).find("li:last").addClass('last');
	});
	
	
    /* Expandos */

	$(".FCE-expando dd:first").slideDown().parent().removeClass("collapsed").addClass("expanded");
	$(".FCE-expando dd").not(":first").slideUp();
	$(".FCE-expando dt").click(function(){
		if($(this).parent().hasClass("expanded")) return false;
		var expandos = $(this).parent().parent();
		var dl = $(this).parent();
		//var dd = $(this).next();
		expandos.find("dl.expanded dd").slideUp();
		expandos.find("dl.expanded").removeClass("expanded").addClass("collapsed");
		dl.addClass("expanded").removeClass("collapsed");
		dl.find("dd:first").slideDown();
	});
	
    
    /* Slider */	
	
	if($('.FCE-fb-news-slider')) {
		//$(".FCE-fb-news-slider .slider").easySlider();
		initRefBucket ();
	}

});
  


function initRefBucket () {

        var BUCKETTIMERSTEP = 5000; //ms
	var BUCKETTIMERSTARTDELAY = 5000; //ms
	var ELEMENTWIDTH = 150;

	if($('.slider ul').length) {
		var effectInProgress = false;

		$(".slider ul li:last").clone(true).insertBefore( $(".slider ul li:first") );
		$(".slider ul li:eq(1)").clone(true).insertAfter( $(".slider ul li:last") );

		var fce_lat_ref_container_width = $('.slider ul').children('li').length *ELEMENTWIDTH;
		$('.slider ul').css('width', fce_lat_ref_container_width + 'px');
		$('.slider ul').css('left', 0 - ELEMENTWIDTH + 'px');

		$('.fce-fb-s .prev').click(function(){
			bucketLeft(BUCKETTIMERSTARTDELAY);
			return false;
		});

		$('.fce-fb-s .next').click(function(){
			bucketRight(BUCKETTIMERSTARTDELAY);
			return false;
		});

		startBucketTicker(BUCKETTIMERSTARTDELAY);

		//alert('go!');
	}

	var bucketTimerCount;
	function startBucketTicker(n){
		bucketTimerCount = setTimeout(function(){
			bucketTimer(BUCKETTIMERSTEP);
		}, n);
	}

	function bucketTimer(){
		if(Math.abs(parseInt($('.slider ul').css('left'))) < ($('.slider ul').children('li').length-1)*ELEMENTWIDTH) {
			bucketRight(BUCKETTIMERSTEP);
		}else{
			$('.slider ul').css('left', 0 - ELEMENTWIDTH + 'px');
			startBucketTicker(0);
		}
	}

	function bucketRight(nextAction){
		if(!effectInProgress){
			if(Math.abs(parseInt($('.slider ul').css('left'))) < ($('.slider ul').children('li').length-1)*ELEMENTWIDTH) {
				executeBucketEffect((parseInt($('.slider ul').css('left'))-ELEMENTWIDTH));
			}else{
				$('.slider ul').css('left', 0 - ELEMENTWIDTH + 'px');
				bucketRight(BUCKETTIMERSTEP);
				return false;
			}
			clearTimeout(bucketTimerCount);
			startBucketTicker(nextAction);
			effectInProgress = true;
			return false;
		}
	}

	function bucketLeft(nextAction){
		if(!effectInProgress){
			if(Math.abs(parseInt($('.slider ul').css('left'))) != 4 && Math.abs(parseInt($('.slider ul').css('left'))) != 0) {
				executeBucketEffect((parseInt($('.slider ul').css('left'))+ELEMENTWIDTH));
			}else{				
				$('.slider ul').css('left', (parseInt($('.slider ul').css('width'))- (ELEMENTWIDTH*2))*-1 +'px');
				bucketLeft(BUCKETTIMERSTEP);
				return false;
			}
			clearTimeout(bucketTimerCount);
			startBucketTicker(nextAction);
			effectInProgress = true;
			return false;
		}
	}

	function executeBucketEffect(moveTo,obj2hide){
		
		$('.slider ul').animate({'left': moveTo+'px'}, 'slow', 'swing', function(){
			//if(obj2hide) $(obj2hide).hide('slow');
			setTimeout(function(){
				effectInProgress = false;
			}, 500);
		});
	}
}
        
