function animateProject( target, dir ) {
	
	var items = $( 'div.' + target + '>div' );
	var current = $( 'div.' + target + '>div.current' ).get(0) ? $( 'div.' + target + '>div.current' ) : $( 'div.' + target + '>div.i-0' );
	var speed = slideshow_speed;
	
	queue = current.queue();
	
	if ( queue.length > 0 ) {
		return false;
	}	
	
	if( typeof( dir ) == 'undefined' ) {
		dir = 'next';
	}
	
	if( dir == 'next' ) {
		
		next = current.next();
		
		if ( !next.get(0) ) {
			next = $( 'div.' + target + '>div.i-0' );
		}
		
		current.animate( {
				'left' : -current.parent().width()
			}, 
			speed, 
			function() { 
				$( this ).hide(); $( this ).removeClass( 'current' ); $( this ).css( 'left', 0 ); 
			}
		);
		
		next.css( 'left', next.parent().width() + 'px' );
		next.show();
		next.animate( {
				'left' : 0
			}, 
			speed 
		);
		next.addClass( 'current' );
	} else {
		
		prev = current.prev();
		
		if ( !prev.get(0) ) {
			prev = $( 'div.' + target + '>div.i-' + ( items.length - 1 ) );
		}
		
		current.animate( {
				'left' : current.parent().width()
			}, 
			speed, 
			function() { 
				$( this ).hide(); $( this ).removeClass( 'current' ); $( this ).css( 'left', 0 ); 
			}
		);
		
		prev.css( 'left', -prev.parent().width() + 'px' );
		prev.show();
		prev.animate( {
				'left' : 0
			}, 
			speed 
		);
		prev.addClass( 'current' );
	}
}

function animateSlogan( target, dir ) {
	
	var items = $( 'div.' + target + '>div' );
	var current = $( 'div.' + target + '>div.current' ).get(0) ? $( 'div.' + target + '>div.current' ) : $( 'div.' + target + '>div.i-0' );
	var speed = slideshow_speed;
	
	queue = current.queue();
	
	if ( queue.length > 0 ) {
		return false;
	}	
	
	if( typeof( dir ) == 'undefined' ) {
		dir = 'next';
	}
		
	if( dir == 'next' ) {
		
		next = current.next();
		
		if ( !next.get(0) ) {
			next = $( 'div.' + target + '>div.i-0' );
		}
		
		current.fadeOut(
			speed,
			function() { 
				$( this ).hide(); $( this ).removeClass( 'current' ); $( this ).css( 'left', 0 ); 
			}
		);
		
		next.fadeIn(
			speed
		);
		
		next.addClass( 'current' );
	} else {
		
		prev = current.prev();
		
		if ( !prev.get(0) ) {
			prev = $( 'div.' + target + '>div.i-' + ( items.length - 1 ) );
		}
		
		current.fadeOut(
			speed,
			function() { 
				$( this ).hide(); $( this ).removeClass( 'current' ); $( this ).css( 'left', 0 ); 
			}
		);
		
		prev.fadeIn(
			speed
		);
		
		prev.addClass( 'current' );
	}
	
}

function animate() {
	
	if ( stopAnimate ) {
		
		clearTimeout( t );
		return false;
	}
	
	animateProject( 'projects' );
	animateSlogan( 'slogans' );
	
	clearTimeout( t );
	t = setTimeout( 'animate()', slideshow_timeout );
}

function animateSlogans() {
	
	if ( stopAnimate ) {
		
		clearTimeout( t );
		return false;
	}
	
	animateSlogan( 'slogans' );
	
	clearTimeout( t );
	t = setTimeout( 'animateSlogans()', slideshow_timeout );
}