(function($){
	$.fn.slider = function(options) {

		var defaults = {
			delay: 3,
			animationSpeed: 'normal'
		};
				
		var options = $.extend(defaults, options);
		
		this.each(function(){

			var obj = $(this);
			var indice = 1;
			var effect = false;
			var force = null;
			var timeout;
			
			$('#slider_img').html('<a href=""><img style="" src="" alt="" /></a>');
			nextElt(options);			

			$('#slider1').click(function(){
				loadElt(1, options);	
			});

			$('#slider2').click(function(){
				loadElt(2, options);	
			});

			$('#slider3').click(function(){
				loadElt(3, options);	
			});
			
			function loadElt(i, options)
			{
				if (effect == false){
					clearTimeout(timeout);
					indice = i;
					nextElt(options);
				}
				else {
					force = i;
				}
			}
			
			function nextElt(options)
			{
				data = eval('options.slider'+indice);
				data = data.split('|');
				
				image = data[0];
				link = data[1];
				
				$(obj).find('.selected').each(function(){
					$(this).removeClass('selected');
				});
				
				$('#slider'+indice).addClass('selected');

				$('#slider_img').css('background', 'url('+image+')');

				effect = true;
				$('#slider_img a img').fadeOut(options.animationSpeed, function(){
					$(this).attr('src', image).show('fast', function(){
						$('#slider_img a').attr('href', link);
							
						effect = false;	
						
						if (indice < 3)
							indice++;
						else
							indice = 1;
						
						if (force != null){
							i = force;
							force = null;
							loadElt(i, options);
						}
						else {
							timeout = setTimeout(function(){nextElt(options)}, (options.delay*1000));
						}
					});													
				});
			}
		});
		
		return this;
	};
})(jQuery);
