<!--
var ElmtId = "tbl-listing";
var TagName = "input";
var TagType = "checkbox";

var path = window.top.location.href;

function confirmation() {
	var vNb = document.frecordset.Ref.length;
	var input = confirm('Voulez-vous vraiment supprimer\n' + ' les ' + vNb + ' référence(s) sélectionnée(s) ?');
	if (input == true) {
		this.form.submit();
	}
	//return (confirm('Voulez-vous vraiment supprimer\n' + ' les ' + vNb + ' référence(s) sélectionnée(s) ?'));
}
//--- Affiche le listing Ajax
function showList(originalRequest) {
	//put returned XML in the textarea
	var $results = $("results");
	if ($results) {
		$results.innerHTML = originalRequest.responseText;
	}
	//--- Initialisation du listing
	initListing(callBack);
}
function initListing(callBack) {
	//--- Initialisation des evenements de pagination
	initPagination(callBack);
	
	//--- Initialisation des evenements de tri
	initTableSort(callBack);
	
	//--- Initialisation des evenements d'envoi d'email
	initMailer();
	
	//--- Sélection/Désélection des enregsitrements du listing
	var $select = $("SelectAll");
	if ($select) { Event.observe($select, 'click', toggleCheckbox) };
}

function fixPrintAjaxDataGrid() {
	var elmt = $("center-column");
	if (elmt) {
		elmt.style.height = elmt.offsetHeight.toString()+"px";
	}
}
/*
function initMailer(){
	var someNodeList = $('tbl-listing').getElementsByTagName('A');
	var nodes = $A(someNodeList);
	var url = sBaseUrl + "admin/mails/new.asp?do=mailing&q=send";
	nodes.each(function(node){
		if(node.className=="mail-address") {
			node.onclick=function() {
				this.blur();
				var sID = "";
				var sEmail = "";
				var sParam = "";
				if(node.hasAttribute("title")){
					//--- IDENTIFIANT DU LIEN (on choisit l'attribut title pour plus de souplesse)
					sID = node.getAttribute("title").gsub("mailto:", "");
					sParam = "&id="+sID
				}
				if(node.hasAttribute("href")){
					//--- ADRESSE DU LIEN
					sEmail = node.href.gsub("mailto:", "");
					//--- PARAMETRES
					sParam += "&mailto=" + sEmail;
					//alert(sID + " => " + sEmail)
					popSendMail(url+sParam);
				}
				return false;
			}
		}
	});
}
*/
function initMailer(){
	var $table = $("tbl-listing");
	if ($table) {
		var nodes = $table.getElementsBySelector('A.mail-address');
		nodes.each(function(node){
			Event.observe(node, 'click', function(event) {
				if(node.hasAttribute("href")){
					popSendMail(node.href);
				}
				Event.stop(event);
				return false;
			});
		});
	}
}

function initPagination(callback) {
	if ($("list-pages")) {
		var pages = $("list-pages").getElementsBySelector("A");
		var start = 1;
		pages.each(function(item) {
							Event.observe(item, 'click', function(event) {
									var element = Event.element(event);
									start = element.getAttribute("id").split(separator)[1];
									setCookie(sTable + "StartingRecord", start, "", path);
									eval(callBack);
									Event.stop(event);
								});
							});
	}
}
function initTableSort(callBack) {
	var $table = $("tbl-listing");
	if ($table) {
		//--- Initialisation des en-têtes
		initTableHeaders($table);
		
		//--- Initialisation des lignes
		initTableRows($table);
	}
}
function toggleSortDirect(sParam) {
	if (sParam == "ASC") {
		return "DESC";
	} else {
		return "ASC";
	} 
}
function initTableHeaders($table) {
	var start = 1;
	var arrSort = new Array("ASC", "DESC");
	var headers = $table.getElementsByTagName("TH");
	//--- Parcourt des en-têtes sauf première et dernière colonnes
	for (var i=1; i < ((headers.length)-1); i++) {
		headers[i].myIndex = i;
		if (getCookie(sTable + "selectedSortBy")==i) {
			headers[i].className += getCookie(sTable + "sortDir");
		}
		headers[i].onclick = function() {
			var sortBy = this.getAttribute("id");
			var sortDir = this.className;
			if ((arrSort!=null) && (arrSort.length > 0)) {
				if (sortDir == arrSort[0]) {
					sortDir = arrSort[1];
				} else {
					sortDir = arrSort[0];
				} 
			} else {
				sortDir = arrSort[0];
			}
			setCookie(sTable + "StartingRecord", start, "", path);
			setCookie(sTable + "sortDir", sortDir, "", path);
			setCookie(sTable + "sortBy", sortBy, "", path);
			setCookie(sTable + "selectedSortBy", this.myIndex, "", path);
			//alert("ORDER BY "+sortBy+" "+sortDir);
			eval(callBack);
			return false;
		}
	}
}
function initTableRows($table) {
	var classOdd = "odd";
	var classEven = "even";
	var classOver = "highlight";
	var tbodies = $table.getElementsByTagName('TBODY');
	for (var i=0; i < tbodies.length; i++) {
		var rows = tbodies[i].getElementsByTagName('TR');
		var arrClass = new Array();
		for (var i=0; i < rows.length; i++) {
			rows[i].myIndex = i;
			arrClass[i] = classEven;
			if(i % 2 == 0) {
				arrClass[i] = classOdd;
			}
			rows[i].className = arrClass[i];
			rows[i].onmouseover=function() {
				this.className = classOver;
			}
			rows[i].onmouseout=function() {
				this.className = arrClass[this.myIndex];
			}
		}
	}
}
/*--- Construction de la requête a effectuer ---*/
function doAction(value, params) {
	var path = document.getElementById("path").value;
	//--- Concaténation de l'url
	var url = path + "?q=" + value + "&" + getSelectedValues();
	if (params.length > 0) url += "&" + params;
	alert(url);
	//process(url);
}
/*--- Sélection/Désélection des cases à cocher ---*/
var selected = "false";
function toggleCheckbox() {
  var target = $(ElmtId);
  var items = target.getElementsByTagName(TagName);
	if (selected == "false") {
		for (i = 0; i < items.length ; i++) {
			items[i].checked = true;
		}
		selected = "true";
		return "-";
	} else {
		for (i = 0; i < items.length; i++) {
			items[i].checked = false;
		}
		selected = "false";
		return "+";
	} 
}

/*--- Récupération des valeurs sélectionnées ---*/
function getCheckedRows(frmName, elmtName) {
	var checked = Form.getInputs($(frmName), "checkbox", elmtName).findAll(function(item) 
		{ return item.checked; }).pluck("value");
	return elmtName + "=" + escape(checked);
}
function getSelectedValues() {
  var object = document.getElementById(ElmtId);
  var items = object.getElementsByTagName(TagName);
  var params = new Array();
  var hasParams = false;
  var csvParams = "";
  
  //--- Extraction des paramètres
  for (var i=0; i < items.length; i++) {
    var itemType = items[i].getAttribute("type");
	var itemId = items[i].getAttribute("name");
    if (itemType==TagType) {
      //--- Test élément sélectionné
      if (items[i].checked) {
        var itemValue = items[i].value;
        params[i] = itemValue;
        hasParams = true
        //alert(params[i]);
      }
    }
  }
  if (hasParams) {
	for (var i=0; i < params.length; i++) {
		if (params[i] != null) {
			csvParams += params[i]
			if (i < (params.length-1)) csvParams += ",";
		}
	}
  }
  //--- Concaténation des paramètres
  return itemId + "=" + escape(csvParams);
}

/*--- Traitement : Requête XMLHttpRequest ---*/
var exception = "Erreur : "
var problem = "Probl&egrave;me : ";
var loading = '<span class="loading">T&acirc;che en cours...Veuillez patienter, svp.</span>';
//var contenerId = "conteneur";

function process(url) {

  if (window.XMLHttpRequest) { // Non-IE browsers
    req = new XMLHttpRequest();
    req.onreadystatechange = callback;
    try {
      req.open("GET", url, true);
    } catch (e) {
      alert(exception + e);
    }
    req.send(null);
  } else if (window.ActiveXObject) { // IE
    req = new ActiveXObject("Microsoft.XMLHTTP");
    if (req) {

      req.onreadystatechange = callback;
      req.open("GET", url, true);
      req.send();

    }
  }
}

/*--- Retour : Requête XMLHttpRequest ---*/
function callback()
{
  var object = document.getElementById(ElmtId);
  var parentId = object.parentNode.getAttribute("id");
	
  if (req.readyState == 4) { // Complete
    if (req.status == 200) { // OK response
      //--- Restaure le curseur
      document.body.style.cursor='auto';

      //--- Récupérations des résultats
      document.getElementById(parentId).innerHTML = req.responseText;

    } else {
      alert(problem + req.statusText);
    }
  } else {
      //--- Change le curseur de la souris a attendre (sablier)
      document.body.style.cursor='wait';
	  
      //--- Chargement en cours
      document.getElementById(parentId).innerHTML = loading;
  }
}
//-->

