/**
 * @author xiang.zhang, liang.yuan
 * @param limit {Int} 每页显示数
 * @param currentPage {Int} 当前页数
 * @param totalCount {Int}  总页数
 * @param url {String} 拼接链接所使用的url
 * @param callback [optional] {function} 取代默认分页提交方式
 * @param isQuerry [optional] {Boolean} true: 去除首页、尾页按钮
 * @returns
 */
function getPagingContent(limit, currentPage, totalCount, url, callback, isQuerry) {
	var limit = parseInt(limit) || 0;
	var totalCount = parseInt(totalCount) || 0;
	var totalPage = Math.ceil(totalCount/limit) || 0;
	var currentPage = parseInt(currentPage) || 1;
	var start=(currentPage-1) * limit;
	var previous = (currentPage-2) * limit;
	var next = currentPage * limit;
	var firstPage = $('<div class="firstPage">').click(function() {
		if(callback){
			callback({"start": 0, "limit":limit});
			return false;
		}
	});
	var lastPage = $('<div class="lastPage">').click(function() {
		if(callback){
			callback({"start": (totalPage - 1) * limit, "limit":limit});
			return false;
		}
	});
//	var pageInfo = $('<span class="pageInfo">共' + totalPage + '页/' + totalCount + '条</span>');
	var pagingContent = $("<div id='switchList' class='switchPageList'>");
	var previousButton = $("<div class='previousPage'>");
	var pageList = $("<span>");
	var nextButton = $("<div class='nextPage'>");
//	var jumpToPage = $('<span class="jumpToPage"></span>');
//	var pageNum = $('<input type="text" id="pageNum" maxLength="4" />');
//	var jumpButton = $('<input type="button" id="jumpPage" value="GO" />').click(function() {
//		reg = /^[0-9]*[1-9][0-9]*$/;
//		var pageNumber = parseInt($('#pageNum').val());
//		if(!reg.test(pageNumber)) {
//			alert('请输入正确的页码');
//		} else {
//			if(pageNumber <= totalPage) {
//				if (callback) {
//					callback({"start" :(pageNumber-1)*limit, "limit" : limit});
//					return false;
//				}
//			} else {
//				alert('请输入正确的页码');
//			}
//		}
//	});
//	jumpToPage.append(pageNum);
//	pageNum.before('跳转到第');
//	pageNum.after('页');
//	jumpToPage.append(jumpButton);
	var shownList;
	var shownCount = 0;
//	pagingContent.append(pageInfo);
	if(!isQuerry)
		pagingContent.append(firstPage);
		pagingContent.append(previousButton)
			.append(pageList)
			.append(nextButton);
	if(!isQuerry)
	{
		pagingContent.append(lastPage);
//		pagingContent.append(jumpToPage);
	}
	if(currentPage <= 1) {
		previousButton.css("opacity", 0.5);
		firstPage.css('opacity', 0.5);
	} else {
		previousButton.click(function(e) {
			if(callback){
				callback({"start": previous, "limit":limit});
				return false;
			}
		});
	}
	if(currentPage >= totalPage) {
		nextButton.css("opacity", 0.5);
		lastPage.css('opacity', 0.5);
	} else {
		nextButton.click(function(e) {
			if(callback) {
				callback({"start": next, "limit":limit});
				return false;
			}
		});
	}
	
	for(var i=currentPage - 2; i<= currentPage + 2; i++) {
		if(i == currentPage) {
			pageList.append("<span class='currentPage'>"+i+"</span>");
			continue;
		}
		if(i > 0 && i<=totalPage) {
			var start = (i-1) * limit;
			var pageLink = $("<a href='" + url +"?start="+start+"&limit="+limit+"'>"+i+"</a>").attr("start", start);
			pageList.append(pageLink);
			shownList = i;
			shownCount++;
			pageLink.click(function(e) {
				if(callback) {
					callback({"start": $(this).attr("start"), "limit":limit});
					return false;
				}
			});
		}
	}
	if(shownCount < 4)
	{
		for(var i = 0; i < 4 - shownCount; i ++)
		{
			if(shownList < (totalPage - 1))
			{
				var pageLink = $('<a class="pageLink" href="' + url + '?start=' + shownList * limit + '&limit=' + limit + '">' + (shownList + 1) + '</a>').attr("start", shownList * limit);
				pageList.append(pageLink);
				shownList++;
				pageLink.click(function(e) {
					if(callback) {
						callback({"start": $(this).attr("start"), "limit":limit});
						return false;
					}
				});
			}
		}
	}
	if(totalCount == 0)
	{
		firstPage.replaceWith($('<div class="firstPage">').css('opacity', '0.5'));
		lastPage.replaceWith($('<div class="lastPage">').css('opacity', '0.5'));
	}
	
	pagingContent.append('<div class="whiteSpace">');
	
	return pagingContent;
}

//function switchPageListCount(form) {
//	$('.listPageList .listCount').each(function() {	
//		$(this).click(function(){
//			$('.listPageList .listCount').attr('class', 'listCount');
//			$(this).addClass('selectedCount');
//			form.find("input[name='limit']").val($(this).html());
//			sideSearch.submit(form);
//		});
//		if($(this).html() == globalPageSize) {
//			$(this).addClass('selectedCount');
//		}
//	});
//};

