try:
Code:
var CurPage = 1;
var Snumber = "h"; //number to switch first to last at. int value or "h" which means one half
function changeNav(EntryCount) {
var navObj = document.getElementById('Navigation');
clearObj(navObj);
var i=Math.ceil(EntryCount/5); //last page
if(Snumber==="h") {
Snumber=Math.ceil(i/2);
}
if(CurPage>=Snumber) {
a=[];
a[0]=document.createElement("a");
a[0].appendChild(document.createTextNode("First "));
a[0].onclick = function() {
changePage('1', EntryCount);
}
navObj.appendChild(a[0]);
a[1]=document.createElement("a");
a[1].appendChild(document.createTextNode("< "));
a[1].onclick = function() {
changePage(CurPage-1, EntryCount);
}
navObj.appendChild(a[1]);
}
a=[];
if(CurPage+4>i) {
n=i;
q=i-4;
} else {
q=CurPage-1||CurPage;
n=q+4;
}
while(q<=n) {
a[q]=document.createElement("a");
a[q].appendChild(document.createTextNode(q+" "));
if(q==CurPage){
a[q].style.color="rgb(181, 202, 222)";
}
a[q].onmousedown =(function (n, e) {
return function() {changePage(n, e);};
})(q, EntryCount);
navObj.appendChild(a[q]);
++q;
}
if(CurPage<Snumber) {
a=[];
a[0]=document.createElement("a");
a[0].appendChild(document.createTextNode("> "));
a[0].onclick = function() {
changePage(CurPage+1, EntryCount);
}
navObj.appendChild(a[0]);
a[1]=document.createElement("a");
a[1].appendChild(document.createTextNode("Last "));
a[1].onclick = function() {
changePage(i, EntryCount);
}
navObj.appendChild(a[1]);
}
}
function changePage(PageNumber, EntryCount) {
EntryCount=parseInt(EntryCount);
PageNumber=parseInt(PageNumber);
var f = (CurPage-1)*5+1;//first entry currently showing
var i=f+5<EntryCount?f+5:EntryCount; //temporary variable for bound
while(f<i) {
hideEntry(f);
++f;
}
f=(PageNumber-1)*5+1; //f is now the first entry of what you want to show
i=f+5; //redefine the variable bound
if(PageNumber==1+Math.floor(EntryCount/5)) {
i=f+EntryCount-Math.floor(EntryCount/5)*5; //if page number is the last one, set it to the remaining entries
}
while(f<i) {
showEntry(f);
++f;
}
CurPage = PageNumber;
changeNav(EntryCount);
}
Bookmarks