function paginationNext(id)
{var paginationBody=paginationGetBody(id);var pageLast=paginationGetLastPage(paginationBody);var pageFirst=paginationGetFirstPage(paginationBody);var pageNo=paginationGetNumber(pageLast)+1;if(pageNo>PaginationArray[id]['numberOfPages'])return;paginationCreatePage(id,pageNo,paginationBody,'next');var pageNumberVisible=paginationGetVisiblePages(paginationBody);if(pageNumberVisible>PaginationArray[id]['numberOfPagesLeftSide']+PaginationArray[id]['numberOfPagesRightSide']+1)
pageFirst.css('display','none');paginationStart(id,'next');}
function paginationPrevious(id)
{var paginationBody=paginationGetBody(id);var pageFirst=paginationGetFirstPage(paginationBody);var pageLast=paginationGetLastPage(paginationBody);var pageNo=paginationGetNumber(pageFirst)-1;if(pageNo<=0)return;paginationCreatePage(id,pageNo,paginationBody,'previous');var pageNumberVisible=paginationGetVisiblePages(paginationBody);if(pageNumberVisible>PaginationArray[id]['numberOfPagesLeftSide']+PaginationArray[id]['numberOfPagesRightSide']+1)
pageLast.css('display','none');paginationStart(id,'previous');}
function paginationStop(id)
{window.clearTimeout(PaginationArray[id]['clock']);}
function paginationStart(id,type)
{PaginationArray[id]['clock']=window.setTimeout(function(){type=='next'?paginationNext(id):paginationPrevious(id);},200);}
function paginationCreatePage(id,pageNo,paginationBody,type)
{var page=paginationPageExists(pageNo,paginationBody);if(page.length==0)
{var page=$(document.createElement('a'));page.attr('class','paginationPage');page.attr('title',paginatonCreateTitle(id,pageNo));page.attr('href',PaginationArray[id]['ajax']?'javascript:paginationGoToPage('+pageNo+',\''+id+'\');':PaginationArray[id]['link']+pageNo);page.text(pageNo);if(type=='next')page.appendTo(paginationBody);else paginationBody.prepend(page);}
else page.css('display','inline-block');}
function paginationPageExists(pageNo,paginationBody)
{var page=paginationBody.children('a').filter(function(index){return $(this).text()==pageNo;});return(page);}
function paginationGetNumber(page)
{return(parseInt(page.text()))};function paginationGetVisiblePages(paginationBody)
{return(paginationBody.children('a:visible').length);}
function paginationGetFirstPage(paginationBody)
{return(paginationBody.children('a:visible').first());}
function paginationGetLastPage(paginationBody)
{return(paginationBody.children('a:visible').last());}
function paginationGetBody(id)
{return($('#'+id).children('.paginationBody').first());}
function paginationGo(id)
{var pageNo=parseInt($('#'+id).children('.paginationPageNumber').first().val());if(pageNo>0)
{if(PaginationArray[id]['ajax'])paginationGoToPage(pageNo,id);else window.location.href=PaginationArray[id]['link']+pageNo;}}
function paginatonCreateTitle(id,pageNo)
{var title=new String(PaginationArray[id]['phrase']);var rowsRange=paginationGetRange(id,pageNo);title=title.replace('%pageNo%',pageNo).replace('%rowsRange%',rowsRange[0]+'-'+rowsRange[1]);return(title);}
function paginationGetRange(id,pageNo)
{var rowsRange=[];if(pageNo==1)
{rowsRange[0]=1;rowsRange[1]=PaginationArray[id]['resultsPerPage'];}
else
{rowsRange[0]=((pageNo-1)*PaginationArray[id]['resultsPerPage'])+1;rowsRange[1]=pageNo*PaginationArray[id]['resultsPerPage'];}
return(rowsRange);}
function paginationGoToPage(pageNo,id)
{alert('Pagination id is -'+id+'- and page number is -'+pageNo+'-');}
var PaginationArray=[];

