var currentPage = 1;

$(document).ready(function() {
   hideAdditionalPages();
   updatePagination();
   getAdwordsCommerce(locationid, 'geohotel');
});

function updatePagination()
{
	var container = '.pagination_container';
	var pagination_container = '.pagination_links_container';

	$(container).empty();

	if(nbPages <= 1)
	{
		return;
	}

	var pageInfo = new jQuery('<span />');
	pageInfo.addClass('pagination_information');
	pageInfo.html(nbPages + ' Pages: ');
	$(container).append(pageInfo);

	var nbPageSpan = new jQuery('<span />');
	nbPageSpan.addClass('pagination_links_container');
	$(container).append(nbPageSpan);


	if(currentPage == 1)
	{//first page
		for (i = 1; i <= 3; i++)
		{
			if(nbPages >= i)
			{
				if(currentPage == i)
				{
					createPageSpan(pagination_container, i, i, 'pagination_current_page');
				}
				else
				{
					createPageSpan(pagination_container, i, i, 'pagination_page');
				}
			}
		}

	if(nbPages > 3)
		{
			createPageSpan(pagination_container, '&raquo;', (currentPage+1), 'pagination_page_up');
		}
	}
	else if(currentPage == nbPages)
	{//last page

		if(nbPages > 3)
		{
			createPageSpan(pagination_container, '&laquo;', (currentPage-1), 'pagination_page_down');
		}

		for (i = 3;i >= 0; i--)
		{
			var pageNumber = currentPage - i;

			if(pageNumber >= 1)
			{
				if(currentPage == pageNumber)
				{
					createPageSpan(pagination_container, pageNumber, pageNumber, 'pagination_current_page');
				}
				else
				{
					createPageSpan(pagination_container, pageNumber, pageNumber, 'pagination_page');
				}
			}
		}
	}
	else
	{
		if(nbPages > 3 && currentPage >= 2)
		{
			createPageSpan(pagination_container, '&laquo;', (currentPage - 1), 'pagination_page_down');
		}

		//previous page
		createPageSpan(pagination_container, (currentPage -1), (currentPage - 1), 'pagination_page');

		//current page
		createPageSpan(pagination_container, (currentPage), (currentPage),'pagination_current_page');

		//next page
		createPageSpan(pagination_container, (currentPage+1), (currentPage + 1),'pagination_page');

		if(nbPages > 3)
		{
			createPageSpan(pagination_container, '&raquo;', (currentPage + 1), 'pagination_page_up');
		}
	}

}

function createPageSpan(_container, _display, _page, _cssClass)
{
	var uniqueClass = 'page_span_' + _page;
	var span = new jQuery('<span />');
	span.addClass(_cssClass);
	span.addClass(uniqueClass);
	span.html(_display);

	$(_container).append(span);
	
	$('.'+uniqueClass).click(function(){
		currentPage = _page;
		$('.page' + _page).show();
		hideAdditionalPages();
		updatePagination();
		return false;
	});
		
}

function hideAdditionalPages()
{

	if(nbPages > 1)
	{
		for (i = 1; i <= nbPages; i++)
		{
			if(i != currentPage)
			{
				$('.page'+i).hide();
			}
		}
	}
}
