/*--- Document Information -----------------------------------------------------
 
Title:      CustomSpryPaging.js
 
Author:     Marieke Roels
Email:      mro@eim.nl
 
company:    EIM BV
Website:    www.eim.nl
 
Purpose:    Server side paging functions for Spry dataset
 
Usage:      
 
Modification Log:
 
Name   Date   Description
================================================================================
MRO   23/09/2008  Created
 
------------------------------------------------------------------------------*/

CustomSpryPaging.prototype.iDataRowCount = 10;
CustomSpryPaging.prototype.iDataStartRow = 1;
CustomSpryPaging.prototype.sSearchCriteria = "";
CustomSpryPaging.prototype.sBaseURL = "";
CustomSpryPaging.prototype.dsSpryDataset;

function CustomSpryPaging(sBaseURL,sBasePath,dsSpryDataset)
{
	this.sBaseURL = sBaseURL;
	this.dsSpryDataset = dsSpryDataset;
}

CustomSpryPaging.prototype.getURL = function()
{
	var url = this.sBaseURL;
	url+="&start=" + this.iDataStartRow;
	url+="&aantal=" + this.iDataRowCount;
	url+="&criteria=" + this.sSearchCriteria;
	
	return url;
}

CustomSpryPaging.prototype.nextPage = function()
{
	this.iDataStartRow += parseInt(this.iDataRowCount);
	
	this.dsSpryDataset.setURL(this.getURL());
	this.dsSpryDataset.loadData();
}

CustomSpryPaging.prototype.lastPage = function(iLastPageNr)
{
	iLastPageStart = ((iLastPageNr * this.iDataRowCount) - this.iDataRowCount) + 1;
	
	this.iDataStartRow = iLastPageStart;
	
	this.dsSpryDataset.setURL(this.getURL());
	this.dsSpryDataset.loadData();	
}
			
CustomSpryPaging.prototype.previousPage = function()
{
	this.iDataStartRow -= this.iDataRowCount;
	
	if(this.iDataStartRow < 1)
	{
		this.iDataStartRow = 1;
	}
	
	this.dsSpryDataset.setURL(this.getURL());
	this.dsSpryDataset.loadData();
}

CustomSpryPaging.prototype.firstPage = function()
{
	this.iDataStartRow = 1;
	
	this.dsSpryDataset.setURL(this.getURL());
	this.dsSpryDataset.loadData();
}

			
CustomSpryPaging.prototype.search = function(sCriteria)
{
	this.iDataStartRow = 1;
	this.sSearchCriteria = sCriteria;
	
	this.dsSpryDataset.setURL(this.getURL());
	this.dsSpryDataset.loadData();
}

CustomSpryPaging.prototype.setDataRowCount = function(iRowCount)
{
	this.iDataStartRow = 1;
	this.iDataRowCount = iRowCount;
	
	this.dsSpryDataset.setURL(this.getURL());
	this.dsSpryDataset.loadData();
}





