/**
 * __doPagination
 */
function __doPagination(currentPageNumber, frmAction, currPageKey){
	$("#frm_pagination").action = frmAction;
	
	if(currPageKey == 'pagination_current_page')
	{
		$('#frm_currentPage').val(currentPageNumber);
	}else{
		$('#frm_'+currPageKey).val(currentPageNumber);
	}
	$("#frm_pagination").submit();
}
	
/**
 * __doSearchPagination
 */	
function __doSearchPagination(currentPageNumber, frmId, currPageKey){
	var cur_page_InnerHtml;

	if(currPageKey == 'pagination_current_page')
	{
		cur_page_InnerHtml = '<input type="hidden" id="currentPage" name="currentPage" value="' + currentPageNumber + '"/>';

		if($('#secCurrPage').attr('id') != undefined && $('#secCurrPage').val() != ''){
			var sec_cur_page_InnerHtml = '<input type="hidden" id="secCurrentPage" name="secCurrentPage" value="' + $('#secCurrPage').val() + '"/>';
			$("#"+frmId).prepend(sec_cur_page_InnerHtml); 
		}
	}else{
		cur_page_InnerHtml = '<input type="hidden" id="'+currPageKey+'" name="'+currPageKey+'" value="' + currentPageNumber + '"/>';
	
		if($('#currPage').attr('id') != undefined && $('#currPage').val() != ''){
			var first_cur_page_InnerHtml = '<input type="hidden" id="currentPage" name="currentPage" value="' + $('#currPage').val() + '"/>';
			$("#"+frmId).prepend(first_cur_page_InnerHtml); 
		}
	
	}
	
	// if current_page, must check, model: publish
	if(currPageKey == 'pagination_current_page')
	{
		if(document.getElementById(frmId).currentPage == undefined)
		{
			$("#"+frmId).prepend(cur_page_InnerHtml); 
		}
		else
		{
			document.getElementById(frmId).currentPage.value = currentPageNumber; 
		}
	}
	else
	{
		$("#"+frmId).prepend(cur_page_InnerHtml); 
	}
	
	$("#"+frmId).submit();
}

/**
 * __doPaginationByAjax
 */	
function __doPaginationByAjax(currentPageNumber, frmAction, element){

	var param;

	params += "currentPage=" + currentPageNumber;
	
	__doPagingPostByAjax(param, frmAction, element);
}

/**
 * __doSearchPaginationByAjax
 */	
function __doSearchPaginationByAjax(currentPageNumber, frmId, element){
	var params =  "";
	var frmAction = "";
	$("form[@id='"+frmId+"'] > input[@type='hidden']").each(
		function (){
			params += this.name+'='+this.value+'&';
		}
	);
	
	params += "currentPage=" + currentPageNumber;
	
	frmAction = $("#"+frmId).attr("action");
	__doPagingPostByAjax(params, frmAction, element);
}

/**
 * do ajax paging
 */
function __doPagingPostByAjax(params, action, element){
	$.ajax({
		type: "post",
		url: action,        
		dataType:"html",
		data: params,
		success: function(data, textStatus){
			$("#"+element).html(data);
			$("html, body").animate({scrollTop:0, scrollLeft:0}, 0.1);
		}
	});
}
