(function ($) {
	$.fn.slideshow = function (opts) {
		
		var default_options = {
				fadeInTime: 1500,
				fadeOutTime: 1500,
				refreshTime: 3000
		}
		
		opts = $.extend(default_options,opts);

		var holder = $(this);
		holder.wrapInner('<div class="js_slideshow_inner" />');
		
		var innerHolder = holder.find('.js_slideshow_inner');
		innerHolder.css('position','relative')
					.css('height',holder.css('height'))
					.css('width',holder.css('width'))
					.css('overflow','hidden');
		
		var images = innerHolder.find('img');
		images.hide();
		
		var fader = function(){
			var showIndex = 0;
			var visibleIndex = -1;
			
			images.css('position','absolute').css('top','0').css('left',0);
			images.each(function(){
				if ( $(this).is(':visible') )
					visibleIndex =  $(this).index();
			});
			
			if ( visibleIndex == -1 )
			{
				visibleIndex = 0;
				$(images.get(0)).show();
			}
			else
			{
				if(visibleIndex != images.length-1)
					showIndex = visibleIndex+1;

				$(images.get(visibleIndex)).fadeOut(opts.fadeOutTime);
				$(images.get(showIndex)).fadeIn(opts.fadeInTime);
			}
			setTimeout(function(){ fader(); }, opts.refreshTime);
		}
		
		fader();
		
	};
}(jQuery));

