jQuery(function($){
  var $ma = $("#main-advert");
  var $items = $ma.find("li");
  var $first = $items.eq(0);
  
  $ma.append($items.clone()); // for circular spin
  var spinTimer = null;
  
  var itemsCount = $items.size();
  var itemWidth = $first.width() +
    parseInt($first.css("padding-left")) +
    parseInt($first.css("padding-right"));
  var itemMargins = 0 +
    parseInt($first.css("margin-left")) +
    parseInt($first.css("margin-right"));
  var itemRealWidth = itemWidth + itemMargins;
  var width = itemsCount * itemRealWidth;
  
  $ma.width(width*2 + "px");

  var currentPosition = 0;

  function move(count, time) {
    stopSpinig();
    count = count || 1;
    time = time || 1000;
    //currentPosition += count;
    var nextPosition = currentPosition + count;
    if (nextPosition == itemsCount + 1) {
      nextPosition = 1;
      $ma.css({left: 0});
    }
    if (nextPosition == -1) {
      nextPosition = itemsCount - 1;
      $ma.css({left: "-" + width + "px"});
    }
//    alert(currentPosition + " " + nextPosition);
    $ma.stop(true).animate(
      {left: "-" + (itemRealWidth * nextPosition) + "px"}, time,
      function() {
        currentPosition = nextPosition;
        restartSpining();
      }
    );
    return currentPosition;
  }

  function stopSpinig() {
    clearInterval(spinTimer);
  }
  function restartSpining() {
    stopSpinig();
    spinTimer = setInterval(function(){ move(1); }, 3000);
  }
  restartSpining(); // initial start
  

  $("#left-scroll").click(function(){
    move(-1);
  });
  $("#right-scroll").click(function(){
    move(1);
  });
  $ma.find("li").hover(function(){stopSpinig();}, function(){restartSpining()});
});

