/** NEED_AjaxConnector - julien.pages@need-grenoble.fr - 2007-06-07 - VERSION 1.0	**
 ** http://www.need-grenoble.fr								**
 ** inspired from XHConn - Simple XMLHTTP Interface - bfults@gmail.com - 2005-04-08     **
 ** Code licensed under Creative Commons Attribution-ShareAlike License      		**
 ** http://creativecommons.org/licenses/by-sa/2.0/                           		**/
function NEED_AjaxConnector()
{
  var xmlhttp, bComplete = false;
  try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); }
  catch (e) { try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); }
  catch (e) { try { xmlhttp = new XMLHttpRequest(); }
  catch (e) { xmlhttp = false; }}}
  if (!xmlhttp) return null;
  this.connect = function(sURL, sMethod, sVars, fnDone)
  {
    if (!xmlhttp) return false;
    bComplete = false;
    sMethod = sMethod.toUpperCase();

    try {
      if (sMethod == "GET")
      {
        xmlhttp.open(sMethod, sURL+"?"+sVars, true);
        sVars = "";
      }
      else
      {
        xmlhttp.open(sMethod, sURL, true);
        xmlhttp.setRequestHeader("Method", "POST "+sURL+" HTTP/1.1");
        xmlhttp.setRequestHeader("Content-Type",
          "application/x-www-form-urlencoded");
      }
      xmlhttp.onreadystatechange = function(){
        if (xmlhttp.readyState == 4 && !bComplete)
        {
          bComplete = true;
          fnDone(xmlhttp);
        }};
      xmlhttp.send(sVars);
    }
    catch(z) { return false; }
    return true;
  };
  return this;
}

/** NEED_Ajax - julien.pages@need-grenoble.fr - 2007-06-07		**/
function NEED_Ajax(URL,params,divname) {
  var myConn = new NEED_AjaxConnector();
  if (!myConn) alert("XMLHTTP indisponible. Essayez un autre navigateur.");
  var fnWhenDone = function (oXML) { NEED_AjouteTexteDiv(divname,oXML.responseText); };

  myConn.connect(URL, "POST", params, fnWhenDone);
}


/** NEED_AjouteTexteDiv - julien.pages@need-grenoble.fr - 2007-06-07	**/
function NEED_AjouteTexteDiv(divname,texte)
  {
  if (document.getElementById)
    {
    document.getElementById(divname).innerHTML = texte;
    }
  else if (document.all)
    {
    document.all[divname].innerHTML = texte;
    }
  }
