jQuery(function($) {
	
	var PAGER_ITEM = '<div class="pager-item"><ul class="freshlist"></ul></div>';
	var ITEMS = 9;
	var DURATION = 300;
	
	// Init pager stages
	$('.pager-stage').each(function() {
		var stage = $(this);
		
		// Each list
		$('ul', stage).each(function() {
			var list = $(this).remove();
			var itemCounter = 0;
			var currentItem = $(PAGER_ITEM);
			
			// Each item 
			$('li', list).each(function() {
				if(itemCounter % ITEMS == 0 && itemCounter != 0) {
					stage.append(currentItem);
					currentItem = $(PAGER_ITEM);
				}
				itemCounter++;
				$(this).appendTo($('ul', currentItem));
			});
			
			// Add the last group if it's not added
			if($('li', currentItem).length > 0) {
				stage.append(currentItem);
			}
			
			$('.pager-total', stage.parent().parent()).text(Math.ceil(itemCounter / ITEMS));
			$('.pager-cur', stage.parent().parent()).text("1");
		});
		
		// Set the scroll to the first item
		stage.parent().scrollTo($('.pager-item', this).get(0));
	});
	
	// Init pager links
	$('.pager-prev a').click(function() {
		var pagerParent = $(this).parent().parent().parent()
		var wrapper = $('.pager-wrapper', pagerParent);
		var cur = parseInt($('.pager-cur', pagerParent).text());
		
		if(cur != 1) {
			wrapper.scrollTo($('.pager-item', wrapper).get(--cur - 1), DURATION);
			$('.pager-cur', pagerParent).text(cur);
		}
	});
	
	$('.pager-next a').click(function() {
		var pagerParent = $(this).parent().parent().parent()
		var wrapper = $('.pager-wrapper', pagerParent);
		var cur = parseInt($('.pager-cur', pagerParent).text());
		var total = parseInt($('.pager-total', pagerParent).text());
		
		if(cur != total) {
			wrapper.scrollTo($('.pager-item', wrapper).get(cur++), DURATION);
			$('.pager-cur', pagerParent).text(cur);
		}
	});
});

