// variable necessaire pour faire un eval global. Sinon toute fonction declaree le sont juste dans onreadystate
// Voir http://www.xorax.info/blog/programmation/55-javascript-eval-global.html#../news/159-javascript-eval-global-scope.html#
var globaleval =  function(script){
  if (script) {
    if(window.execScript){
      return window.execScript(script);
    } else if(navigator.userAgent.indexOf('KHTML') != -1){ //safari, konqueror..
        var s = document.createElement('script');
        s.type = 'text/javascript';
        s.innerHTML = script;
        document.getElementsByTagName('head')[0].appendChild(s);
    } else {
      return window.eval(script);
    }
  }
}

/* ?? -> */
function AjaxCreateXHRObject () {
  var xhr_object = null;
  if(window.XMLHttpRequest) {
  	// Firefox
  	xhr_object = new XMLHttpRequest();
  } else if (window.ActiveXObject) {
  	// Internet Explorer
  	xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
  } else {
  	// XMLHttpRequest non supporte par le navigateur
  	alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
  	return;
  }
  return xhr_object;
}
function AjaxStandardRequest (xhr_object, url, data) {
  xhr_object.open("POST", url, true);
  xhr_object.onreadystatechange = function() {
  	if (xhr_object.readyState == 4) {
  		globaleval(xhr_object.responseText);
  	}
  }
  xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded;charset=utf-8");
  xhr_object.send(data);
}
/* <- ?? */
function ajaxStandard (url, data, str_confirm) {
  var confirmation = true;
  // En cas de message de confirmation, il doit être encodé sous php avec rawurlencode().
  // On le décode en JS avec decodeURIComponent
  if (str_confirm) confirmation = confirm(str_confirm);

  if (confirmation === true) {
  	//_____ Verification de compatibilite -> _____\\
  	var xhr_object = null;
  	if(window.XMLHttpRequest) {
  		// Firefox
  		xhr_object = new XMLHttpRequest();
  	} else if (window.ActiveXObject) {
  		// Internet Explorer
  		xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
  	} else {
  		// XMLHttpRequest non supporte par le navigateur
  		alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
  		return;
  	}

  	//_____ <- Verification de compatibilite _____\\
  	//_____ XMLHTTPRequest -> _____\\
  	// Se remplit comme un GET, le "&" separe les variables
  	//var data = "mode="+mode;
  	xhr_object.open("POST", url, true);
  	xhr_object.onreadystatechange = function() {
  		if (xhr_object.readyState == 4) {
  			globaleval(xhr_object.responseText);
  		}
  	}
  	xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  	xhr_object.send(data);
  	//_____ - XMLHTTPRequest _____\\
  }
}
/* <- ?? */

function AutofillTextarea (champ, contents) {
  champ.value = decodeURIComponent(contents.join("\r\n"));
}



