﻿function Pager(tableName, itemsPerPage) {
    this.tableName = tableName;
    this.itemsPerPage = itemsPerPage;
    this.currentPage = 0;
    this.pages = 0;
    this.inited = false;

    this.showRecords = function(from, to) {        
        var rows = document.getElementById(tableName).getElementsByTagName('span');
        var children;
        var mydata,url,divr;
        for (var j = from; j <= to; j++) {
            children=rows[j].getElementsByTagName('div');
            if (children.length==10){
                mydata=children[2].innerHTML;
                mydata=mydata.split(",");
                if (mydata[0]=="pGal")
                {
                url="getGallery.aspx?id=" + mydata[1];
                divr="p" + mydata[1]
                replace(url,divr);
                }
                mydata=children[5].innerHTML;
                mydata=mydata.split(",");
                if (mydata[0]=="pGal")
                {
                url="getGallery.aspx?id=" + mydata[1];
                divr="p" + mydata[1]
                replace(url,divr);
                }
                mydata=children[8].innerHTML;
                mydata=mydata.split(",");
                if (mydata[0]=="pGal")
                {
                url="getGallery.aspx?id=" + mydata[1];
                divr="p" + mydata[1]
                replace(url,divr);
                }
            }           
        }
        //alert(children[2].innerHTML);
        //alert(children[5].innerHTML);
        //alert(children[8].innerHTML);
        //alert(rows[from].innerHTML);
        
        for (var i = 0; i < rows.length; i++) {
            if (i < from || i > to) {
                rows[i].style.display = 'none';
                }
            else
                rows[i].style.display = '';
        }
    }
    
    this.showPage = function(pageNumber) {
    	if (! this.inited) {
    		alert("not inited");
    		return;
    	}
    	//alert(pageNumber);
    	//alert(document.getElementById(tableName).rows.length-1);
        if (pageNumber==0)
    	{   
    	this.showPageNav('pager', 'pageNavPosition',pageNumber+1);
        this.currentPage = pageNumber+1;
        var oldPageAnchor = document.getElementById('pg'+this.currentPage);
        oldPageAnchor.className = 'pg-normal';
        
        this.currentPage = pageNumber+1;
        var newPageAnchor = document.getElementById('pg'+this.currentPage);
        newPageAnchor.className = 'pg-selected';
        this.showRecords(0, 3);
    	document.getElementById("curPg").innerHTML="Page 1 of " + (this.pages+1);
    	}
    	else
    	{
        var oldPageAnchor = document.getElementById('pg'+this.currentPage);
        oldPageAnchor.className = 'pg-normal';
        
        this.currentPage = pageNumber+1;
        var newPageAnchor = document.getElementById('pg'+this.currentPage);
        newPageAnchor.className = 'pg-selected';
        
        var from = (pageNumber - 1) * itemsPerPage + 1;
        var to = from + itemsPerPage - 1;
        this.showRecords(from, to);
    	document.getElementById("curPg").innerHTML="Page " + (from+1) + " of " + (this.pages+1);
        }

    }   
    
    this.prev = function() {
    this.showPage(0);
//        if (this.currentPage > 1)
//            this.showPage(this.currentPage-1);
    }
    
    this.next = function() {
//        if (this.currentPage < this.pages) {
//            this.showPage(this.currentPage);
//        }
    	this.showPageNav('pager', 'pageNavPosition',(this.pages -(this.pages % 10)+1));
    this.showPage(this.pages);

    }                        
    
    this.init = function() {
        var rows = document.getElementById(tableName).getElementsByTagName('span');
        var records = (rows.length - 1); 
        this.pages = Math.ceil(records / itemsPerPage);
        this.inited = true;
    }

    this.showPageNav = function(pagerName, positionId,PageNo) {
    	if (! this.inited) {
    		alert("not inited");
    		return;
    	}
    	var element = document.getElementById(positionId);
    	//alert(PageNo);
    	var pagerHtml = '';//'<span onclick="' + pagerName + '.prev();" class="pg-normal"><img src="../images/but_rew_first_zn.gif"/></span> ';
        for (var page = PageNo; page < (this.pages+1); page++) {    
            pagerHtml += '<span id="pg' + page + '" class="pg-normal" style="cursor: pointer;" onclick="' + pagerName + '.showPage(' + (page-1) + ');">' + page + '</span> ';
            }
        
        element.innerHTML = pagerHtml;
    }
}

function openwin(id)
{
    window.open('/imagegallery'+ id +'.htm','Image')
}

function loadFrameData (obj) 
{
	newwin = window.open(obj.value,"master");
	return true;
}