(function($) {
 $.fn.Slider = function(options) {
	var opts = $.extend({},$.fn.Slider.defaults, options);
  var slideNumber = 1;
  var $container = $(this);
  var $label = $container.children(".label");
  var $slider = $container.children("div").children("div");
  var $slides = $container.children("div").children("div").children("p");
  var slidesCount = $slides.size();
  var $prev_button = $container.children(".prev_arrow");
  var $next_button = $container.children(".next_arrow");
  var max = opts.slideWidth*(slidesCount-1);
  var min = 0;
  var slideValue;
  $slider.width((opts.slideWidth+opts.slideBorders)*slidesCount);

  if (opts.auto)
  {
    var posun = setInterval(function(){$next_button.trigger('click');},opts.interval);
  }

  $label.html(slideNumber+" / "+slidesCount);

  $container.mouseover(function(){
    if (opts.auto)
    {
      clearInterval(posun);
    }
  });

  $container.mouseout(function(){
    if (opts.auto)
    {
      posun = setInterval(function(){$next_button.trigger('click');},opts.interval);
    }
  });

  $next_button.click(function(){
    if (slideNumber >= slidesCount)
    {
     slideNumber = 1;
     $slides.animate({left: min}, { duration: opts.speed, queue: false,easing: "swing" });
    }else{
      slideNumber++;
      slideValue = "-"+opts.slideWidth*(slideNumber-1)+"px";
      $slides.animate({left: slideValue}, { duration: opts.speed, queue: false,easing: "swing" });
    }
    $label.html(slideNumber+" / "+slidesCount);
    return false;
  });
  $prev_button.click(function(){
    if (slideNumber <= 1)
    {
     slideNumber = slidesCount;
     $slides.animate({left: "-"+max+"px"}, { duration: opts.speed, queue: false,easing: "swing" });

    }else{
      slideNumber--;
      slideValue = "-"+opts.slideWidth*(slideNumber-1)+"px";
      $slides.animate({left: slideValue}, { duration: opts.speed, queue: false,easing: "swing" });
    }
    $label.html(slideNumber+" / "+slidesCount);
    return false;
  });
 }

 $.fn.Slider.defaults = {
      auto: true,
			interval: 4000,
			slideWidth: 250,
			slideBorders: 30,
			speed: 1000
 }

})(jQuery);