function AjaxPage(id)
{
	//-----------------------------------------------------------------------------------------------------------
	// Member variables
	//-----------------------------------------------------------------------------------------------------------

	// Public
	this.id = id;
	this.pageURL = '';
	
	this.totalElements = 1;
	this.containerId = '';
	this.pagingContainerId = '';
	this.currentPage = 1;
	this.numItemsPerPage = 1;
	this.maxPages = 10;
	this.pagingHtml = '';
	this.itemId = '';
	this.numPages = 1;
	
	this.eliminateItemId = '';  // TODO Use to eliminate repeated product - Used in product page
	
	//-----------------------------------------------------------------------------------------------------------
	// Public functions
	//-----------------------------------------------------------------------------------------------------------

	this.init = init;
	this.showPage = showPage;
	
	//-----------------------------------------------------------------------------------------------------------
	// Functions
	//-----------------------------------------------------------------------------------------------------------
	
	function init(itemId)
	{
		this.numPages = Math.ceil(this.totalElements / this.numItemsPerPage);
		this.itemId = itemId;
		
		if (this.numPages > 0)
		{
			this.showPage(1);
		}
	}
	
	function showPage(currentPage)
	{	
		this.currentPage = currentPage;
		
		$.ajax({
			type: "POST",
			url: this.pageURL,
			data: "itemid=" + this.itemId + "&eliminateitemid=" + this.eliminateItemId + "&page=" + currentPage + "&itemsperpage=" + this.numItemsPerPage,
			containerId: this.containerId,
			pagingContainerId: this.pagingContainerId,

			beforeSend: function()
			{
				$('#' + this.containerId).css('background-image','url(' + BASE + '/img/template/ajax.gif)').html('');
				$('#' + this.pagingContainerId).html('');
			},
			complete: function()
			{
				$('#' + this.containerId).css('background-image','');
			},
			success: function(msg)
			{
				$('#' + this.containerId).html(msg);
		 		ScrollUtils.init(this.containerId);
			}
		});
		
		// Add paging
		// TODO refactor this code
		if (this.totalElements > this.numItemsPerPage)
		{
			var paging = new Paging(this.id);
			
			paging.numPages = this.numPages;
			paging.maxPages = this.maxPages;
			paging.numItemsPerPage = this.numItemsPerPage;
			paging.currentPage = this.currentPage;
			paging.containerId = this.pagingContainerId;
			paging.pagingHtml = this.pagingHtml; 
	
			paging.addPaging();
		}			
	}
}