/**
 * EZ Blocks Pagination: Ajax Extend
 * (c) EZdesign.de, Timo Besenreuther
 */

EzBlocks_Pagination_AjaxExtend = {
	
	currentPage: 0,
	
	blocksPerPage: 0,
	totalPages: 0,
	idart: 0,
	idcat: 0,
	idblockarea: 0,
	blockProvider: "Default",
	blocksPerPage: 0,
	addReferrer: 0,
	
	setup: function(blocksPerPage, totalPages, idart, idcat, idblockarea, blockProvider, addReferrer) {
		this.blocksPerPage = blocksPerPage;
		this.totalPages = totalPages;
		this.idart = idart;
		this.idcat = idcat;
		this.idblockarea = idblockarea;
		this.blockProvider = blockProvider;
		this.addReferrer = addReferrer;
	},
	
	load: function(link, container) {
		if (link.hasClass('loading')) return false;
		var p = this;
		link.blur().addClass('loading');
		this.currentPage++;
		$.post('includes/ezajax/ezajax.php', {
			'module': 'EzBlocks',
			'namespace': 'Core/Pagination',
			'class': 'AjaxExtend',
			'method': 'ajaxGetNextPage',
			'page': this.currentPage,
			'blocksPerPage': this.blocksPerPage,
			'idart': this.idart,
			'idcat': this.idcat,
			'idblockarea': this.idblockarea,
			'blockProvider': this.blockProvider,
			'blocksPerPage': this.blocksPerPage,
			'addReferrer': this.addReferrer
		}, function(response) {
			var fixScroll = navigator.userAgent.toLowerCase().indexOf('firefox') != -1;
			if (fixScroll) {
				var oldX = (document.all)?document.body.scrollLeft:window.pageXOffset;
				var oldY = (document.all)?document.body.scrollTop:window.pageYOffset;
			}
			container.before(response);
			if (fixScroll) window.scrollTo(oldX, oldY);
			if (p.currentPage + 1 >= p.totalPages) {
				container.hide();
			}
			link.removeClass('loading');
		});
		return false;
	}
	
};