/**
 * FujiTv ListPager Plugin.
 *
 * @author	katsuma@team-lab.com
 * @require	jquery 1.3
 */
(function($){
	$.fn.listpager = function(options){
		var settings = $.extend({
			'switcher':'',
			'item'    :'.paginglistitem',
			'next'    :'a.paginglistswitcher_next',
			'prev'    :'a.paginglistswitcher_prev'
		}, options);
		
		var $listItems = null;
		var itemlen    = 0;
		var current    = 0;
		
		// 次へ
		var next = function(){
			paging(+1);
			$(this).blur();
			return false;
		};
		
		// 前へ
		var prev = function(){
			paging(-1);
			$(this).blur();
			return false;
		};
		
		// ページング
		var paging = function(delta){
			// 遷移先indexを取得
			var c = current + delta;
			if(c<0){
				c = itemlen-1;
			}else if(c>=itemlen){
				c = 0;
			}
			
			$listItems
				.eq(current)
				.hide()
				.end()
				.eq(c)
				.show();
			current = c;
		};
		
		return this.each(function(){
			// ページングターゲットを取得
			$listItems = $(this).find(settings.item);
			itemlen = $listItems.length;
			if(itemlen.length<=1) return;
			
			// ページングトリガーにイベントバインド
			$(settings.switcher)
				.find('.disabled')
				.hide()
				.end()
				.find('.enabled')
				.show()
				.find(settings.next)
				.click(next)
				.end()
				.find(settings.prev)
				.click(prev);
		});
	};
})(jQuery);

