/// FONCTION PAGINATION ////
var loadedScats = {};
var is_loading = {};
function getScatPage(pays_id, scat_ID, scat_INT, countAT, countAT_R1C, countAT_PTG, scat_coul, scat_coulH, page_index) {
	if (is_loading[pays_id])
		return;
	
	// afficher le div chargement
	showLoadDiv(scat_ID, pays_id);
	
	is_loading[pays_id] = true;

	var datas = { "scat_ID" : scat_ID, "scat_INT" : scat_INT, "countAT":countAT, "countAT_R1C":countAT_R1C, "countAT_PTG":countAT_PTG, "pays_id" : pays_id, "scat_coul" : scat_coul, "scat_coulH" : scat_coulH, "page" : page_index, "page_id" : page_id, "cols" : 2 };
	EdLib.makeHTTPRequest("POST", "/ws/get_page_pays_scat.php", getScatPage_Callback, datas);
}
function showLoadDiv(scat_ID, pays_id) {
	var loaddiv = $get('scat_' + pays_id + '_chgt');	
	var result_tab = $get('scat_' + scat_ID + '_' + pays_id +'_result_table');
	if (result_tab != null) {
		$addCssClass(loaddiv, "chgt_reloading");
		$addCssClass(result_tab, "tabresult_reloading");
	}
	$display(loaddiv);
}
function getScatPage_Callback(xhr) {
	try {
		reponse = eval( "(" + xhr.responseText + ")" );
	}
	catch(e) { return; }

    // marquer comme loaded
	loadedScats[reponse.scat_ID] = reponse.page;

    // afficher le résultat
	showPageResult(reponse);
	
	// Ellipsis ?
	if (!navigator.isIE)
		Ellipsis();
		
	is_loading = false;
}
function Ellipsis() { 
	var els = getElementsByClassName("at_line_nom", "div", $get("content"));
	for (var i=0; i<els.length; i++)
		EdLib.Ellipsis(els[i]);
	els = getElementsByClassName("at_line_ville", "div", $get("content"));
	for (var i=0; i<els.length; i++)
		EdLib.Ellipsis(els[i]);
}
function showPageResult(reponse) {
	var loaddiv = $get('scat_' + reponse.pays_id + '_chgt');	
	var resultdiv = $get('scat_' + reponse.pays_id + '_result');
	var result_tab = $get('scat_' + reponse.pays_id + '_result_table');
	
	// charger le résultat dans le div
	resultdiv.innerHTML = reponse.html;
	if (reponse.total > reponse.pagesize)
		resultdiv.appendChild(createPager(reponse));
	// enlever effet reloading
	if (result_tab != null)
		$removeCssClass(result_tab, "reloading");
	// masquer le div chargement
	$undisplay(loaddiv);
	// afficher le résultat
	$display(resultdiv);
	// adapter les miniatures
	AdapteMinis();
	
}
var pagerleft_handler;
var pagerright_handler;
var pagerfirst_handler;
var pagerlast_handler;
function createPager(reponse) {
	var nbPages = Math.floor(reponse.total / reponse.pagesize);
	if (reponse.total % reponse.pagesize > 0)
		nbPages += 1;
	pagenum = reponse.page + 1;
	
	// div principal
	var main_div = $create("div", { "className" : "scat_pager" });
	// bouton first
	var pager_first = $create("img", { "width" : 6, "height" : 11, "src" : "/img/pager_first.gif", "className" : "img_first" }, null, main_div);
	if (pagenum != 1)
		pagerfirst_handler = $addHandler(pager_first, "click", function() { getScatPage(reponse.pays_id, reponse.scat_ID, reponse.scat_INT, reponse.total, reponse.countAT_R1C, reponse.countAT_PTG, reponse.scat_coul, reponse.scat_coulH, 0); });
	// bouton gauche
	var pager_left = $create("img", { "width" : 6, "height" : 11, "src" : "/img/pager_left.gif", "className" : "img_left" }, null, main_div);
	if (pagenum > 1)
		pagerleft_handler = $addHandler(pager_left, "click", function() { getScatPage(reponse.pays_id, reponse.scat_ID, reponse.scat_INT, reponse.total, reponse.countAT_R1C, reponse.countAT_PTG, reponse.scat_coul, reponse.scat_coulH, reponse.page - 1); });
	// page
	$create("span", { "innerHTML" : "page " + pagenum + " / " + nbPages, "className" : "pages_span" }, null, main_div);
	// bouton droit
	var pager_right = $create("img", { "width" : 6, "height" : 11, "src" : "/img/pager_right.gif", "className" : "img_right" }, null, main_div);
	if (pagenum < nbPages)
		pagerright_handler = $addHandler(pager_right, "click", function() { getScatPage(reponse.pays_id, reponse.scat_ID, reponse.scat_INT, reponse.total, reponse.countAT_R1C, reponse.countAT_PTG, reponse.scat_coul, reponse.scat_coulH, reponse.page + 1); });
	// bouton first
	var pager_last = $create("img", { "width" : 6, "height" : 11, "src" : "/img/pager_last.gif", "className" : "img_last" }, null, main_div);
	if (pagenum != nbPages)
		pagerflast_handler = $addHandler(pager_last, "click", function() { getScatPage(reponse.pays_id, reponse.scat_ID, reponse.scat_INT, reponse.total, reponse.countAT_R1C, reponse.countAT_PTG, reponse.scat_coul, reponse.scat_coulH, nbPages - 1); });
	
	return main_div;
}
