var zoomedIndex = 1;
var hleftIndex = 0;
var hrightIndex = 2;
var animateTime = 900;
var totalItems = 0;
var indexPrefix = '#rf_';
var test = new Array();
var test2 = 0;
var ssIval = false;
	
function scroll( dir, user_clicked ) {
	if( user_clicked == true ) {
		clearInterval( ssIval );
	}
	
	if( test2 == 1 ) {
		return test.push( dir );
	}
		
	var leftIndex = null;
	var midIndex = null;
	var rightIndex = null;
	if( dir == 0 ) { // left
		test2 = 1;
		if( (zoomedIndex-2) == -1 ) { 
			rightIndex = 1; 
			midIndex = 0;
			leftIndex = totalItems-1; 
			zoomedIndex = midIndex;
		} else if ( (zoomedIndex-2) == -2 ) {
			rightIndex = 0;
			midIndex = totalItems - 1;
			leftIndex = totalItems - 2;
			zoomedIndex = midIndex;
		} else {
			rightIndex = zoomedIndex;
			leftIndex = zoomedIndex - 2;
			midIndex = zoomedIndex - 1;
			zoomedIndex = zoomedIndex - 1;
		}
		
		$('#slideshow > '+indexPrefix+rightIndex).prependTo( $('#slideshow') );
		$('#slideshow > '+indexPrefix+midIndex).prependTo( $('#slideshow') );
		$('#slideshow > '+indexPrefix+leftIndex).prependTo( $('#slideshow') );
		
		$('#slideshow > '+indexPrefix+hrightIndex).animate({
			opacity: 0,
			width: 0,
			marginLeft: 0,
			marginRight: 0
		}, animateTime, function() {
			$('#slideshow > '+indexPrefix+hrightIndex).hide();
			hrightIndex = rightIndex;
			hleftIndex = leftIndex;
		} );
		
		$('#slideshow > '+indexPrefix+rightIndex).removeClass('zoomFrame');
		$('#slideshow > '+indexPrefix+rightIndex).addClass('regularFrame');
		$('#slideshow > '+indexPrefix+rightIndex).animate( { opacity: 0.7, width: 244 }, animateTime );
		
		$('#slideshow > '+indexPrefix+midIndex).removeClass('regularFrame');
		$('#slideshow > '+indexPrefix+midIndex).addClass('zoomFrame');
		$('#slideshow > '+indexPrefix+midIndex).animate( { opacity: 1, width: 378 }, animateTime );

		$('#slideshow > '+indexPrefix+leftIndex).removeClass('zoomFrame');
		$('#slideshow > '+indexPrefix+leftIndex).addClass('regularFrame');
		$('#slideshow > '+indexPrefix+leftIndex).css('width', '0' );
		$('#slideshow > '+indexPrefix+leftIndex).animate( {
			opacity: 0.7,
			width: 244,
			marginRight: 3,
			marginLeft: 3
		}, animateTime, function() {
			test2 = 0;
			if( test.length > 0 ) {
				scroll( test.shift() );
			}
		} );
		
	} else if ( dir == 1 ) { // right
		test2 = 1;
		if( (zoomedIndex+2) == totalItems ) {
			rightIndex = 0;
			midIndex = zoomedIndex+1;
			leftIndex = zoomedIndex;
			zoomedIndex = zoomedIndex+1;
		} else if ( (zoomedIndex+2) > totalItems ) {
			rightIndex = 1;
			midIndex = 0;
			leftIndex = totalItems - 1;
			zoomedIndex = midIndex;
		} else{
			rightIndex = zoomedIndex + 2;
			leftIndex = zoomedIndex;
			midIndex = zoomedIndex + 1;
			zoomedIndex = zoomedIndex+1;
		}
		//alert( 'l ' + leftIndex + ' m ' + midIndex +' r ' + rightIndex );
		$('#slideshow > '+indexPrefix+leftIndex).appendTo( $('#slideshow') );
		$('#slideshow > '+indexPrefix+midIndex).appendTo( $('#slideshow') );
		$('#slideshow > '+indexPrefix+rightIndex).appendTo( $('#slideshow') );
			
		$('#slideshow > '+indexPrefix+hleftIndex).animate({
			opacity: 0,
			width: 0,
			marginLeft: 0,
			marginRight: 0
		}, animateTime, function() {
			$('#slideshow > '+indexPrefix+hleftIndex).hide();
			hrightIndex = rightIndex;
			hleftIndex = leftIndex;
		} );
		
		$('#slideshow > '+indexPrefix+leftIndex).removeClass('zoomFrame');
		$('#slideshow > '+indexPrefix+leftIndex).addClass('regularFrame');
		$('#slideshow > '+indexPrefix+leftIndex).animate( { opacity: 0.7, width: 244 }, animateTime );
		
		$('#slideshow > '+indexPrefix+midIndex).removeClass('regularFrame');
		$('#slideshow > '+indexPrefix+midIndex).addClass('zoomFrame');
		$('#slideshow > '+indexPrefix+midIndex).animate( { opacity: 1, width: 378 }, animateTime );

		$('#slideshow > '+indexPrefix+rightIndex).removeClass('zoomFrame');
		$('#slideshow > '+indexPrefix+rightIndex).addClass('regularFrame');
		$('#slideshow > '+indexPrefix+rightIndex).css('width', '0' );
		$('#slideshow > '+indexPrefix+rightIndex).animate( {
			opacity: 0.7,
			width: 244,
			marginRight: 3,
			marginLeft: 3
		}, animateTime, function() {
			test2 = 0;
			if( test.length > 0 ) {
				scroll( test.shift() );
			}
		} );
	}
}

$(document).ready( function() {
	$('#slideshow > div').hide();
	totalItems = $('#slideshow > div').size();
	if( totalItems < 4 ) {
		return;
	}
	
	ssIval = setInterval( 'scroll( 1 );', 6000 );

	$('#slideshow > div').each( function( i ) { $(this).attr('id', 'rf_'+i ); } );
	$('#slideshow > div:eq(0)').fadeTo( 0, 0.7 );
	$('#slideshow > div:eq(2)').fadeTo( 0, 0.7 );
	$('#slideshow > div:eq(1)').removeClass('regularFrame');
	$('#slideshow > div:eq(1)').addClass('zoomFrame');
	$('#slideshow > div:eq(1)').hide();
	$('#slideshow > div:eq(0)').fadeIn( 1000 );
	$('#slideshow > div:eq(1)').slideDown( 1000 );
	$('#slideshow > div:eq(2)').fadeIn( 1000 );
	
	$('#slideshow > div').hover( function() { if( !$(this).hasClass('zoomFrame') ) { $(this).fadeTo( 300, 1 ); } }, function() { if( !$(this).hasClass('zoomFrame') ) { $(this).fadeTo( 300, 0.7 ); } } );
} );