jQ.fn.wpslider = function(p){
    return this.each(function(){
       this.wpslider = new WP.wpslider(this, p);
    });
  };
    
  WP.wpslider = function(node, r){
    if (typeof(node)!='object') return;
    $krotka = WP.$(node).find('.slider>*:eq(0)');
    var p = {
      width : $krotka.width() + parseInt($krotka.css('marginLeft')) + parseInt($krotka.css('marginRight')),
      height : $krotka.height(),
      length : WP.$(node).find('.slider').children().length,
      jump : 6,
      speed : 400,
      active : 1
    };
    this.length = p.length;
    WP.extend(p, r);
    
    WP.$(node).find('.slider').css({display:'block', position:'relative', overflow:'hidden'});
    if (WP.$(node).find('.slider .sliderInner').length==0) {
      WP.$(node).find('.slider>*').wrapAll('<span class="sliderInner"></span>'); //jeżeli nie ma kontenera do animacji
      WP.$(node).find('.sliderInner').css({width: p.width*p.length, position:'absolute', left:0});
    }
    WP.$(node).find('.next, .prev').bind("selectstart", function(e){ e.preventDefault(); return false }); //żeby nie zaznaczały się buttony przy klikaniu

    //startowe
    //jeżeli nie mieszczą się elementy to aktywuj przycisk next
    if ( WP.$(node).find('.sliderInner').width() > WP.$(node).find('.slider').width() ) {    
      WP.$(node).find('.sliderNext').addClass('on'); 
    }
    if (p.active>1) {
      WP.$(node).find('.sliderPrev').addClass('on');
    }
    
    function setNavi(){
      //widiczność next
      if (p.active + p.jump > p.length) {
        WP.$(node).find('.sliderNext').removeClass('on');
      } else {
        WP.$(node).find('.sliderNext').addClass('on');
      } 
      
      //widoczność prev
      if (p.active > 1 ) {
        WP.$(node).find('.sliderPrev').addClass('on');
      } else {
        WP.$(node).find('.sliderPrev').removeClass('on');
      }
      
    }
    
    function moveForward(){
      if ( !WP.$(node).find('.sliderNext').is('.on') || WP.$(node).find('.sliderInner').is(':animated') ) return;
      WP.$(node).find('.sliderInner').animate({left:parseInt(WP.$(node).find('.sliderInner').css('left')) - p.width * p.jump}, {duration:p.speed});
        p.active += p.jump;
        setNavi()
    }
    function moveBackward(){
      if ( !WP.$(node).find('.sliderPrev').is('.on') || WP.$(node).find('.sliderInner').is(':animated') ) return;
        WP.$(node).find('.sliderInner').animate({left:parseInt(WP.$(node).find('.sliderInner').css('left')) + p.width * p.jump}, {duration:p.speed});
        p.active -= p.jump;
        setNavi(); 
    }
    WP.$(node).find('.sliderNext').bind('click', moveForward);
    WP.$(node).find('.sliderPrev').bind('click', moveBackward);
 
  };
