/***分页导航条，样式为 上一页 |<< << 1 2 3 4 >> >>| 下一页 ***
参数说明：
iPage - 当前页码
iTotal - 记录总数
iPageSize - 每页显示最多记录数
sFileName - 页码所指URL链接模板
sPageNumFlag - URL模板中是页码特征字串，会被替换为实际页数
sPageExt - URL链接扩展名
iPageCount - 每页的导航条最多页码列表数
示例：
*/
function ShowPageNavigation(iPage,iTotal,iPageSize,sFileName,sPageNumFlag,sPageExt,iPageCount){
	var strs,totalPage,totalLayer,currentLayer,firstPage,lastPage,previousLayer,nextLayer,startPage,endPage;
	var strFirst,strLast,strPreviousLayer,strNextLayer,strPrevious,strNext;
	var strLinkFirst,strLinkLast,strLinkPreviousLayer,strLinkNextLayer,strLinkPreviousPage,strLinkNextPage;
	var isEnd,i,firstPageFlag,otherPageFlag;
	
	if (sFileName=="" || iTotal=="" || iTotal==0 || iPageSize=="" || iPageSize==0) return "";
	if (!iPage>0){iPage=1}else{iPage=parseInt(iPage)};
	if (!iPageCount>0) iPageCount=10;

	//otherPageFlag=sPageNumFlag.replace("_","");
	otherPageFlag=sPageNumFlag;
	firstPageFlag=sPageNumFlag;

	if((iTotal%iPageSize)==0){totalPage=parseInt(iTotal/iPageSize)}else{totalPage=parseInt(iTotal/iPageSize)+1};
	if (iPage>totalPage) iPage=totalPage;
	firstPage=1;
	lastPage=totalPage;
	if(iPage==1) firstPage=0;
	if(iPage==totalPage) lastPage=0;
	if((iPage%iPageCount)==0) isEnd=true;			//判断当前页是否为页码列表的最后一个
	totalLayer=parseInt(totalPage/iPageCount)+1;	//所有页码列表层总数，以1开始
	currentLayer=parseInt(iPage/iPageCount)+1;		//当前页码列表层数，以1开始
	if(isEnd) currentLayer=currentLayer-1;			//当 当前页码是本页页码列表的最后一个时，修正当前页码层数

	if(currentLayer==1){ previousLayer=0 }else{ previousLayer=(currentLayer-1)*iPageCount};	//前一层页码：取前一层页码列表最后一页页码数
	if(currentLayer==totalLayer){ nextLayer=0 }else{ nextLayer=currentLayer*iPageCount+1};	//后一层页码：取后一层页码列表最前一页页码数
	//本层具体页码数起始范围
	startPage=previousLayer+1;
	if(currentLayer<totalLayer){ endPage=nextLayer-1} else{ endPage=totalPage};	//取导航列表的最后一个页码值
	//向前向后相关定位字串，图片
	strFirst="<img alt=\"First Page\" title=\"First Page\" src=\""+_Env_InstallPath+"images/First.gif\" />";
	strLast="<img alt=\"Last Page\" title=\"Last Page\" src=\""+_Env_InstallPath+"images/last.gif\" />";
	strPreviousLayer="<img alt=\"Previous " + iPageCount + " Pages\" title=\"Previous " + iPageCount + " Pages\" src=\""+_Env_InstallPath+"images/Previous.gif\" />";
	strNextLayer="<img alt=\"Next " + iPageCount + " Pages\" title=\"Next " + iPageCount + " Pages\" src=\""+_Env_InstallPath+"images/Next.gif\" />";
	strPrevious="Previous";
	strNext="Next";

	//向前向后相关链接
	strLinkFirst=sFileName.replace(firstPageFlag,"1")+sPageExt;
	strLinkLast=sFileName.replace(otherPageFlag,lastPage)+sPageExt;
	strLinkPreviousLayer=sFileName.replace(otherPageFlag,previousLayer)+sPageExt;
	strLinkNextLayer=sFileName.replace(otherPageFlag,nextLayer)+sPageExt;
	//if(iPage==2){strLinkPreviousPage=sFileName.replace(firstPageFlag,"")+sPageExt}else{strLinkPreviousPage};
	strLinkPreviousPage=sFileName.replace(firstPageFlag,iPage-1)+sPageExt
	strLinkNextPage=sFileName.replace(otherPageFlag,iPage+1)+sPageExt;

	strs="";
	//首页字串
	if(firstPage==0){
		strs+="&nbsp;"+strFirst;
	}else{
		strs+="<a href=\"" + strLinkPreviousPage + "\" target=\"_self\">" + strPrevious + "</a>";	//上一页
		strs+="&nbsp;<a href=\"" + strLinkFirst + "\" title=\"First Page\" target=\"_self\">" + strFirst + "</a>"; //首页
	}
	//前一层页码字串
	if(previousLayer<=0)
		strs+="&nbsp;" + strPreviousLayer;
	else
		strs+="&nbsp;<a href=\"" + strLinkPreviousLayer + "\" title=\"Previous " + iPageCount + " Pages\" target=\"_self\">" + strPreviousLayer + "</a>";

	for(var i=startPage;i<=endPage;i++){
		if(i==iPage)
			strs+="<span class=\"isHere\">" + i + "</span>";
		else
			strs+="<span><a href=\"" + ((i==1)?sFileName.replace(firstPageFlag,"1"):sFileName.replace(otherPageFlag,i)) + sPageExt + "\" target=\"_self\">" + i + "</a></span>";
	}

	if(nextLayer<=0)
		strs+="&nbsp;" + strNextLayer;
	else
		strs+="&nbsp;<a href=\"" + strLinkNextLayer + "\" title=\"Next " + iPageCount + " Pages\" target=\"_self\">" + strNextLayer + "</a>";
	
	if(lastPage<=0){
		strs+="&nbsp;" + strLast;
	}else{
		strs+="&nbsp;<a href=\"" + strLinkLast + "\" title=\"Last Page\" target=\"_self\">" + strLast + "</a>";
		strs+="&nbsp;<a href=\"" + strLinkNextPage + "\" target=\"_self\">" + strNext + "</a>";		//下一页
	}
	strs+="&nbsp;&nbsp;Total " + iTotal + "&nbsp;/&nbsp;" + totalPage + " Pages";
	strs+="&nbsp;" + iPageSize + " Per Page";
	if(totalPage<=100){
		strs+="&nbsp;<select size=\"1\" id=\"PageNavigation\" onchange=\"location.href=this.value\" style=\"font-family:verdana;font-size:10px;\">";
		for(var i=1;i<=totalPage;i++){
			strs+="<option value=\"";
//			if(i==1)
//				strs+=sFileName.replace(firstPageFlag,"");
//			else
				strs+=sFileName.replace(otherPageFlag,i);
			strs+=sPageExt + "\"";
			if(i==iPage) strs+=" selected";
			strs+=">" + i + "</option>";
		}
		strs+="</select>";
	}
	strs+="<input type=\"hidden\" name=\"pageUrl\" id=\"pageUrl\" value=\"" + sFileName + sPageExt + "\" />";
	return strs;
}
//跳转页码
function JumpPage(p){
	if(iTotalPages=="undefined" || !iTotalPages>0)return;
	if(sFilePath=="undefined" || sFilePath=="")return;
	location.href=(p==1)?sFilePath.replace('_{{{page}}}',''):sFilePath.replace('{{{page}}}',iTotalPages+1-p);
}

//跳到指定页码
function __JumpPage(n){
	if(/[\D]/.test(n)){
		alert("只能为数字");
		return;
	}
	if(document.getElementById("pageUrl")){
		var pageUrl=document.getElementById("pageUrl").value;
		if(pageUrl!=""){
			if(n==1)	//为第一页时不带页号
				location.href=pageUrl.replace("_{{{page}}}","");
			else	//替换地址模板为相应页号
				location.href=pageUrl.replace("{{{page}}}",n);
		}
	}

}