function createObject() 
{ 
  var tipo_richiesta; 
  var browser = navigator.appName; 
  if(browser == "Microsoft Internet Explorer")
    { 
      tipo_richiesta = new ActiveXObject("Microsoft.XMLHTTP");
    }
  else
    {
      tipo_richiesta = new XMLHttpRequest();
    };
    return tipo_richiesta;
};

var http = false;
var aDiv = createObject();

var http1 = false;
var http2 = false;
var http3 = false;
var http4 = false;
var http5 = false;

var aDiv1 = createObject();
var aDiv2 = createObject();
var aDiv3 = createObject();
var aDiv4 = createObject();
var aDiv5 = createObject();

function InitializeHTTP()
{
  // Inizializza gli oggetti HTTPRequest per compatibilità su mozilla firefox
  //alert('Inizializza variabili http');
  if (window.xmlhttprequest)
    {
      //alert('IE Inizializza variabili http');
      http = new xmlhttprequest();
      http1 = new xmlhttprequest();
      http2 = new xmlhttprequest();
      http3 = new xmlhttprequest();
      http4 = new xmlhttprequest();
      http5 = new xmlhttprequest();
    }
  else if (window.ActiveXObject)
    {
      try
        {
          //alert('MZL Inizializza variabili http');
          http = new ActiveXObject("Msxml2.XMLHTTP");
          http1 = new ActiveXObject("Msxml2.XMLHTTP");
          http2 = new ActiveXObject("Msxml2.XMLHTTP");
          http3 = new ActiveXObject("Msxml2.XMLHTTP");
          http4 = new ActiveXObject("Msxml2.XMLHTTP");
          http5 = new ActiveXObject("Msxml2.XMLHTTP");
        }
      catch (e)
       {
         try
           {
             //alert('EMZL Inizializza variabili http');
             http = new ActiveXObject("Microsoft.XMLHTTP");
             http1 = new ActiveXObject("Microsoft.XMLHTTP");
             http2 = new ActiveXObject("Microsoft.XMLHTTP");
             http3 = new ActiveXObject("Microsoft.XMLHTTP");
             http4 = new ActiveXObject("Microsoft.XMLHTTP");
             http5 = new ActiveXObject("Microsoft.XMLHTTP");
           }
         catch (e){};
       };
    }
  else
    {
      //alert('OTH Inizializza variabili http');
      http = createObject();
      http1 = createObject();
      http2 = createObject();
      http3 = createObject();
      http4 = createObject();
      http5 = createObject();
    };
};

InitializeHTTP();

function inviadati(root, http_metod, tag, php_file)
{
  // add image progress
  var par = document;
  //var images = par.getElementById(tag);
  var cur_div = par.getElementById(tag);
  var new_img = par.createElement('img');
  new_img.width = 10;
  new_img.height = 10;
  new_img.title = 'Elaborazione in corso ...';
  new_img.src = root+'img/indicator2.gif';
  cur_div.appendChild(new_img);
  aDiv = par.getElementById(tag);
  //alert(http.readyState);
  if ((http.readyState==0) || (http.readyState==4))
    {
      // Ci si assicura che l'header contenga text/xml
      if (http.overrideMimeType)
      {
        http.overrideMimeType('text/xml');
      };
      //alert('Sono dopo dell_header');
      //alert('Sono prima dell_open');
      http.open(http_metod, root+php_file); // http_metod='get'
      //alert('Sono prima dell_onreadystatechange');
      http.onreadystatechange = handleResponse;
      http.send(null);
    }
  else
    {
      alert('Una richiesta è gia stata inviata al server http. Riprovare!');
    };
};

function handleResponse()
{
  //alert(http.readyState);
  if(http.readyState == 4)
  {
    //alert("sono qui");
    var response = http.responseText;
    aDiv.innerHTML = response;
    //document.getElementById('FactoryID').innerHTML = response; // tag='dati' (...è un div)
  };
};

function inviaforms(root, http_metod, tag, php_file, img_show)
{
  //alert('Sono dopo l_inizializzazione');
  var par = document;
  var cur_div = par.getElementById(tag);
  if (img_show==true)
  {
    var new_img = par.createElement('img');
    new_img.width = 10;
    new_img.height = 10;
    new_img.title = 'Elaborazione in corso ...';
    new_img.src = root+'img/indicator2.gif';
    cur_div.appendChild(new_img);
  };
  //alert('Sono prima della richiesta');
  if ((http1.readyState==0)||(http1.readyState==4))
  {
    aDiv1 = par.getElementById(tag);
    // Ci si assicura che l'header contenga text/xml
    //alert('Sono prima della header');
    if (http1.overrideMimeType)
    {
      http1.overrideMimeType('text/xml');
    };
    //alert('Sono dopo della header');
    http1.open(http_metod, root+php_file); // http_metod='get'
    http1.onreadystatechange = handle1FormResponse;
    http1.send(null);
  }
  else if ((http2.readyState==0)||(http2.readyState==4))
  {
    aDiv2 = par.getElementById(tag);
    // Ci si assicura che l'header contenga text/xml
    if (http2.overrideMimeType)
    {
      http2.overrideMimeType('text/xml');
    };
    http2.open(http_metod, root+php_file); // http_metod='get'
    http2.onreadystatechange = handle2FormResponse;
    http2.send(null);
  }
  else if ((http3.readyState==0)||(http3.readyState==4))
  {
    aDiv3 = par.getElementById(tag);
    // Ci si assicura che l'header contenga text/xml
    if (http3.overrideMimeType)
    {
      http3.overrideMimeType('text/xml');
    };
    http3.open(http_metod, root+php_file); // http_metod='get'
    http3.onreadystatechange = handle3FormResponse;
    http3.send(null);
  }
  else if ((http4.readyState==0)||(http4.readyState==4))
  {
    aDiv4 = par.getElementById(tag);
    // Ci si assicura che l'header contenga text/xml
    if (http4.overrideMimeType)
    {
      http4.overrideMimeType('text/xml');
    };
    http4.open(http_metod, root+php_file); // http_metod='get'
    http4.onreadystatechange = handle4FormResponse(4);
    http4.send(null);
  }
  else if ((http5.readyState==0)||(http5.readyState==4))
  {
    aDiv5 = par.getElementById(tag);
    // Ci si assicura che l'header contenga text/xml
    if (http5.overrideMimeType)
    {
      http5.overrideMimeType('text/xml');
    };
    http5.open(http_metod, root+php_file); // http_metod='get'
    http5.onreadystatechange = handle5FormResponse;
    http5.send(null);
  };
};

function handle1FormResponse()
{
  //alert(http1.readyState);
  if(http1.readyState == 4)
  {
    //alert("sono qui");
    var response = http1.responseText;
    aDiv1.innerHTML = response;
    //document.getElementById('FactoryID').innerHTML = response; // tag='dati' (...è un div)
  };
};

function handle2FormResponse()
{
  //alert(http1.readyState);
  if(http2.readyState == 4)
  {
    //alert("sono qui");
    var response = http2.responseText;
    aDiv2.innerHTML = response;
    //document.getElementById('FactoryID').innerHTML = response; // tag='dati' (...è un div)
  };
};

function handle3FormResponse()
{
  //alert(http1.readyState);
  if(http3.readyState == 4)
  {
    //alert("sono qui");
    var response = http3.responseText;
    aDiv3.innerHTML = response;
    //document.getElementById('FactoryID').innerHTML = response; // tag='dati' (...è un div)
  };
};

function handle4FormResponse()
{
  //alert(http1.readyState);
  if(http4.readyState == 4)
  {
    //alert("sono qui");
    var response = http4.responseText;
    aDiv4.innerHTML = response;
    //document.getElementById('FactoryID').innerHTML = response; // tag='dati' (...è un div)
  };
};

function handle5FormResponse()
{
  //alert(http1.readyState);
  if(http5.readyState == 4)
  {
    //alert("sono qui");
    var response = http5.responseText;
    aDiv5.innerHTML = response;
    //document.getElementById('FactoryID').innerHTML = response; // tag='dati' (...è un div)
  };
};

