$(document).ready(function () {
	Slider = function (target, options) {
        this.options = options || {};
		this.slides = target.children();
		this.current = $(this.slides[0]).addClass("current");
		this.pagination = new Pagination(target);
		return this;
	}; 
		
	$.extend(Slider.prototype, {
		run: function() {
			var go = function () {
		 	   this.next();
			   this.run();
			}
			setTimeout(go.bind(this), this.options.speed || 5e3);
	 	},
		
		
	next: function(){
        var li;
        this.slides.removeClass("current"); 
		li = $(this.current).next("li");
		li.length === 0 && (li = $(this.slides[0])); 
		li.fadeIn(this.options.fade); 
		this.current.fadeOut(this.options.fade);
		this.current = li; 
		this.pagination.next();
		return this;
		}
	});
		
	Pagination = function (target) {
		        var ul;
		        ul = $('.slides-pagination');
				 target.children().each(function () {
		            return ul.append("<li></li>")
		        })
				this.dots = ul.children();
				this.current = $(this.dots[0]).addClass("current")
				return this;
		    }
		
	$.extend(Pagination.prototype, {
		next: function () {
			console.log('DO pag');
		    this.dots.removeClass("current");
			this.current = $(this.current).next("li");
			this.current.length === 0 && (this.current = $(this.dots[0]));
			this.current.addClass("current");
			return this;
		}
	}); 
		
	$.fn.slides = function (options) {
	  return (new Slider(this, options)).run();
	};
		
	$(".slides").slides({speed: 4e3, fade: 800});
});

