/*
 * ページ遷移を表示する
 *
 * 表示位置は指定されたidのタグ内にinnerHTMLされます
 * ページ選択やボタン押下時のアクションについてはselectPage(ページ番号)を呼び出し元で実装してください。
 *
 * id				表示位置のID属性名
 * nowPage			表示しているページ番号
 * allCount			データ総件数
 * maxRow			1ページ内のデータ表示最大件数
 * displayPageNum	表示するページ番号の数
 */
function showPaging(id, nowPage, allCount, maxRow, displayPageNum){
	if (allCount == 0) {
		return;
	}

	var maxPage = Math.ceil(allCount / maxRow);

	if(nowPage == null || nowPage.length == 0 || nowPage < 0){
		nowPage = 1;
	}
	if(maxPage == 0){
		maxPage = 1;
	}
	var offset = ((nowPage - 1) * maxRow) + 1;

	var before = Math.floor(displayPageNum/2);

	var startPage = nowPage - before;
	if(startPage <= 0){
		startPage = 1;
	}
	var endPage = nowPage + ((displayPageNum-before) - 1);
	if(endPage < displayPageNum){
		endPage = displayPageNum;
	}
	if(maxPage < endPage){
		startPage = startPage - (endPage - maxPage);
		if(startPage <= 0){
			startPage = 1;
		}
		endPage = maxPage;
	}

	var pageNode = document.createElement("div");
	pageNode.className = "page_box_inner";

	var html = "";
	if(nowPage != 1){
		html = html + "<p class=\"page_return\" onclick=\"selectPage('" + eval(nowPage - 1) + "')\"><a href=\"#\">&lt;&lt; 前の"+maxRow+"件</a></p>";
	} else {
		html = html + "<p class=\"page_return\">&lt;&lt; 前の"+maxRow+"件</p>";
	}
	html = html + "<ul class=\"page_menu\">";
	if(startPage > 1){
		html = html + "<li>...</li>";
	} else {
		html = html + "<li>&nbsp;&nbsp;&nbsp;</li>";
	}
	for(var i=startPage; i<=endPage; i++){
		if(nowPage == i){
			html = html + "<li>" + i + "</li>";
		} else {
			html = html + "<li onclick=\"selectPage('" + i + "')\"><a href=\"#\" class=\"help\">" + i + "</a></li>";
		}
	}
	if(endPage < maxPage){
		html = html + "<li>...</li>";
	} else {
		html = html + "<li>&nbsp;&nbsp;&nbsp;</li>";
	}
	html = html + "</ul>";
	if(nowPage != endPage){
		html = html + "<p class=\"page_next\" onclick=\"selectPage('" + eval(nowPage + 1) + "')\"><a href=\"#\">次の"+maxRow+"件 &gt;&gt;</a></p>";
	} else {
		html = html + "<p class=\"page_next\">次の"+maxRow+"件 &gt;&gt;</p>";
	}

	pageNode.innerHTML = html;
	var targetNode = document.getElementById(id);
	targetNode.appendChild(pageNode);
}
