(function($) {
	$.fn.slideshow	= function() {
		var	obj	= $(this);
			
		d	= {
			act: 0,
			num: $('.element', this).length,
			elements: $('.element', obj),
			width: $($('.elements', obj)).css('width')
		}
				
		for(i = 1; i < d.num; ++i) {
			$(d.elements[i]).css('display', 'none');
		}
		
		obj.data('d', d);
				
		$('a.prev', this).click(function () {
		
			var d	= obj.data('d');
			if( d.num <= 1 ) {
				return;
			}
			
			var pre	= $(d.elements[d.act]);
			
			if( d.act == 0 ) {
				d.act	= d.num - 1;
			} else {			
				--d.act;
			}
			
			var element	= $(d.elements[d.act]);
			element.css('left', '-' + d.width);
			element.css('display', 'block');
			element.animate({"left": "+=" + d.width}, "slow");
			pre.animate({"left": "+=" + d.width}, "slow");
			
			obj.data('d', d);
		});
		$('a.next', this).click(function () {
			var d	= obj.data('d');
			if( d.num <= 1 ) {
				return;
			}
			
			var pre	= $(d.elements[d.act]);
			
			if( d.act + 1 >= d.num ) {
				d.act	= 0;
			} else {			
				++d.act;
			}
			
			var element	= $(d.elements[d.act]);
			element.css('left', d.width);
			element.css('display', 'block');
			element.animate({"left": "-=" + d.width}, "slow");
			pre.animate({"left": "-=" + d.width}, "slow");
			
			obj.data('d', d);
		});
	};
})(jQuery);

