﻿var TEMP_HREF='<a href=\"#HREF#\" onclick=\"#function#\"   value=\"#value#\" >#pageNum#</a>';
var TEMP_HREF_PRE='<a href=\"#HREF#\" onclick=\"#function#\"   value=\"#value#\" >#pageNum#</a>';
var TEMP_HREF_NEXT='<a href=\"#HREF#\" onclick=\"#function#\"   value=\"#value#\" >#pageNum#</a>';
var PageCount=0;
var DataArray = new Array();
//var pageNum="pageNum";
var CurrentPage=0;
var AnchorCount = 0;
var JumpCount=0;
var JumpParameter=0;
var IdType="";
var StrTypeOne = "showData";
var StrTypeTwo = "product";
var DataCountTypeOne = 20;
var DataCountTypeTwo = 40;
function initPagenations(){               
    DataArray=$j(".pagenationsParameter");
    CurrentPage = DataArray.length;
    if(CurrentPage==0){
        printDefaultDate();          
        return;   
    }  
    if(CurrentPage>0){
        CurrentPage = 1;
        JumpParameter = 1;
        parameterForJumpCount=10;
        domLength=DataArray.length;
        IdType = StrTypeTwo;
        AnchorCount = getPageCountTpye();
        PageCount = getPageCount(domLength,AnchorCount);
        JumpCount = getJumpParameter(PageCount,parameterForJumpCount);
        printData();
        printPageNum();    
    } 
}
function jumpTo(e){
//alert(window.location.href)
    CurrentPage=$j(e).attr("value");
    printData();
    printPageNum(); 
}
// go to previous page
function previous(){
    JumpParameter--;
    CurrentPage=(JumpParameter-1)*10+1;
    printData();
    printPageNum();        
    }
//go to next page
function next(){
    JumpParameter++;
    CurrentPage=(JumpParameter-1)*10+1;
    printData();
    printPageNum();        
}
//print 20 lines
function printData(){
    $j("#"+IdType).empty();
    for(var i=(CurrentPage-1)*AnchorCount;i<(CurrentPage)*AnchorCount;i++){
        if(i<DataArray.length){
            //alert($j(DataArray[i]).html());
            //$j("#"+IdType).append($j.trim("<tr id=\"pagenationsParameter\" class=\"pagenationsParameter\" style="line-height:24px; \">"+$j(DataArray[i]).html()+"</tr>"));
            printOneLineData(i);
            //$j("#"+IdType).append($j.trim("<div id=\"pagenationsParameter\" class=\"pagenationsParameter\" style=\"border-bottom:1px solid #e3e3e3;\" >"+$j(DataArray[i]).html()+"</div>"));
        }else{
            break;
        }   
    }
}
function deletePageNum(){
    var trs = $j('#dataBefore').find("tr");
    for(var i = 0 ; i < trs.length ; i++){
        $j(trs[i]).remove();
    }
}
function printPageNum(){
    var content="";
    deletePageNum();
    
    var width;
    if(PageCount <= JumpParameter*10){
        width = (PageCount%10) * 15;
        if(JumpParameter != 1){
            width += 50;
        }
        if(JumpParameter != JumpCount){
            width += 50;
        }
    }else{
        width = 150;
        if(JumpParameter != 1){
            width += 50;
        }
        if(JumpParameter != JumpCount){
            width += 50;
        }
    }
    
    content += "<tr><td align=\"center\" ><div align=\"center\" style=\"width:"+width+"px\">";
    
    if(JumpParameter == 1){
        content+="";
    } else {
        content+="<div style=\"width:40px;float:left;height:16px;padding-top:2px;padding-right:3px\">"+TEMP_HREF_PRE.replace('#function#','previous()').replace('#value#',i).replace('#pageNum#',"\u4e0a\u4e00\u9875").replace('#HREF#','#'+(CurrentPage-10))+"</div>";
    }
    
    
    for(var i=(JumpParameter-1)*10+1;i<=JumpParameter*10;i++){
        if(i==CurrentPage){
            content+="<div class=\"pagenation_selected\"><a href=\"#\">"+i+"</a></div>";
            
        }else{
            if(i<=PageCount){
                
                content+="<div class=\"pagenation_unselected\">"+TEMP_HREF.replace('#function#','jumpTo(this)').replace('#value#',i).replace('#pageNum#',i).replace('#HREF#','#'+i)+"</div>";
            }else{
                break;
            }
        }    
    }
    
    if(JumpParameter == JumpCount){
        content+="";
    } else {
        content+="<div style=\"width:40px;float:left;height:16px;padding-top:2px;padding-left:3px;\">"+TEMP_HREF_NEXT.replace('#function#','next()').replace('#value#',i).replace('#pageNum#',"\u4e0b\u4e00\u9875").replace('#HREF#','#'+i)+"</div>";
    }
    content += "</div></td></tr>";
    $j('#dataBefore').append(content);
    //alert(content);
}
//
$j(document).ready(function(){                   
goToDetaiPage();
});
//go to page
function goToDetaiPage(){
var myURL=window.location.href;
var myCharpValue=myURL.split('#').length==2?myURL.split('#')[1]:null;
if(myCharpValue&&myCharpValue>1){
    
    JumpParameter=(myCharpValue%10==0)?(myCharpValue/10):parseInt(myCharpValue/10)+1;
            CurrentPage=myCharpValue;
    
    jumpTo({value:myCharpValue});
    
    
}
}
// return PageCount
function getPageCount(domLength,anchorTotal){
if(domLength%anchorTotal==0){
    return domLength/anchorTotal;
}else{
    return Math.floor(domLength/anchorTotal)+1;
}
}
// return JumpCount
function getJumpParameter(pageTotal,parameterForJumpTotal){
if(pageTotal%parameterForJumpTotal==0){
    return pageTotal/parameterForJumpTotal;
}else{
    return Math.floor(pageTotal/parameterForJumpTotal)+1;
}
}
//return get user define count
function getPageCountTpye(){
return DataCountTypeTwo;
}
// When the page does not has any date. print default Date
function printDefaultDate(){
$j("#dataBefore").prepend('<tr><td align=\"center\" >暂无相关数据</td></tr>');
}
//print 1 line Data
function printOneLineData(i){
$j("#"+IdType).append($j(DataArray[i]));
}

