function Pager(id, itemsPerPage, records) {
    this.id = id;
    this.itemsPerPage = itemsPerPage;
    this.currentPage = 1;
    this.pages = 0;
    this.inited = false;
    
    this.init = function() {
//      var records = (document.getElementById(this.id).childNodes.length - 1); 
        this.pages = Math.ceil(records / this.itemsPerPage);
        this.inited = true;
    }
    
    this.showRecords = function(from, to) {        
        var items = document.getElementById(this.id).getElementsByTagName("li");
        for (var i = 0; i < items.length; i = i + 1) {   	
            if (i < from || i > to) items[i].style.display = 'none';
            else items[i].style.display = '';
        }
    }
    
    this.showPage = function(pageNumber) {
    	if (!this.inited) return;
        this.currentPage = pageNumber;
        var from = (pageNumber - 1) * this.itemsPerPage;
        var to = from + this.itemsPerPage - 1;
        this.showRecords(from, to);
        
        var pgNext = document.getElementById('pgNext');
        var pgPrev = document.getElementById('pgPrev');
        var pgNextBlank = document.getElementById('pgNextBlank');
        var pgPrevBlank = document.getElementById('pgPrevBlank');
        var pgDiv = document.getElementById('pgDiv');
        if (this.currentPage == this.pages) {
            pgNext.style.display = 'none';
			pgNextBlank.style.display = ''; 
        }
        else {
			pgNext.style.display = '';
			pgNextBlank.style.display = 'none'; 
        }
		if (this.currentPage == 1) {
           pgPrev.style.display = 'none'; 
           pgPrevBlank.style.display = ''; 
        }
        else {
			pgPrev.style.display = '';
			pgPrevBlank.style.display = 'none'; 
		}
    }   
    
    
    this.prev = function() {
        if (this.currentPage > 1) this.showPage(this.currentPage - 1);
    }
    
    
    this.next = function() {
        if (this.currentPage < this.pages) {
        	this.showPage(this.currentPage + 1);
        }
    }                        
	
	
    this.showPageNav = function(pagerName, positionId) {
    	if (!this.inited) return;
    	
    	var elementPrev = document.getElementById(positionId + "Prev");
    	var elementNext = document.getElementById(positionId + "Next");
    	
    	var pagerHtmlPrev = '<span id="pgPrev"><a href="#" onclick="' + pagerName + '.prev();return false;"><img src="i/left.gif" width="20" height="60" alt="Prev" /></a></span><span id="pgPrevBlank"><img src="i/no.gif" width="20" height="60" alt="Prev" /></span>';
        var	pagerHtmlNext = '<span id="pgNext"><a href="#" onclick="' + pagerName + '.next();return false;"><img src="i/right.gif" width="20" height="60" alt="Next" /></a></span><span id="pgNextBlank"><img src="i/no.gif" width="20" height="60" alt="Prev" /></span>';
        
        elementPrev.innerHTML = pagerHtmlPrev;
        elementNext.innerHTML = pagerHtmlNext;
    }
}

