// JavaScript Document
// JavaScript Document
// przechowuje obiekt XMLHttpRequest
var xmlHttp_4lo = createXmlHttpRequestObject_4lo();
var kod_4_lista_ofert;
var podzial;
// tworzy obiekt XMLHttpRequest
function createXmlHttpRequestObject_4lo() 
{
  // przechowa odwołanie do obiektu XMLHttpRequest
  var xmlHttp_4lo;
  // powinno działać dla wszystkich przeglądarek z wyjątkiem IE6 i starszych
  try
  {
    // próbuje stworzyć obiekt XMLHttpRequest
    xmlHttp_4lo = new XMLHttpRequest();
	xmlHttp_4lo.overrideMimeType('text/xml');

  }
  catch(e)
  {
    // zakładając, że IE6 lub starsza
    var XmlHttpVersions_4lo = new Array("MSXML2.XMLHTTP.7.0",
	  "MSXML2.XMLHTTP.6.0",
      "MSXML2.XMLHTTP.5.0",
      "MSXML2.XMLHTTP.4.0",
      "MSXML2.XMLHTTP.3.0",
      "MSXML2.XMLHTTP",
      "Microsoft.XMLHTTP");
    // sprawdza każdy prog id aż któryś zadziała
 
    for (var i=0; i<XmlHttpVersions_4lo.length && !xmlHttp_4lo; i++) 
    {
      try 
      { 
        // próbuje stworzyć obiekt XMLHttpRequest
        xmlHttp_4lo = new ActiveXObject(XmlHttpVersions_4lo[i]);
      } 
      catch (e) {}
    }
  }
  // zwraca stworzony obiekt albo wyświetla komunikat o błędzie
  if (!xmlHttp_4lo){
    alert("Błąd podczas tworzenia obiektu XMLHttpRequest.");
  }else {
    return xmlHttp_4lo;
  }
}

// czyta plik z serwera
function process_4lo()
{
  // kontynuuje, jeśli obiekt xmlHttp nie jest pusty
  if (xmlHttp_4lo)
  {
    // próbuje połączyć się z serwerem
    try
    {
      // początkuje odczyt pliku z serwera
      xmlHttp_4lo.open("GET", "modules/lista_ofert_xml.php?"+document.getElementById("link_xml").value+"&a="+(0.02 + Math.random()/103333), true); //"&id_lang="+document.getElementById("id_lang").value+"
	  //document.write("modules/lista_ofert_xml.php?"+document.getElementById("link_xml").value+"&a="+(0.02 + Math.random()/103333));
      xmlHttp_4lo.onreadystatechange = handleRequestStateChange_4lo;
      xmlHttp_4lo.send(null);
    }
    // w razie niepowodzenia wyświetla komunikat o błędzie
    catch (e)
    {
     alert("Nie mogę połączyć się z serwerem:\n" + e.toString());
    }
  }
}


// funkcja wywoływana przy zmianie statusu żądania HTTP
function handleRequestStateChange_4lo() 
{

  if (xmlHttp_4lo.readyState == 1) 
  {
	
	document.getElementById("lista_loader").style.display='';
  }

  // kiedy readyState ma wartość 4, jesteśmy gotowi do odebrania odpowiedzi z serwera
  if (xmlHttp_4lo.readyState == 4) 
  {
	  document.getElementById("lista_loader").style.display='none';
    // kontynuuje tylko, gdy status HTTP ma wartość "OK"
	//alert(xmlHttp.status + " " + xmlHttp.readyState);
    if (xmlHttp_4lo.status == 200) 
    {
    //  try
     // {
        // przetwarza wiadomość z serwera
        handleServerResponse_4lo();
     // }
     // catch(e)
    //  {
       // komunikat o błędzie
     //  alert("Error reading the response: " + e.toString());
      //}
    } 
    else
    {
      // wyświetla wiadomość o statusie
     alert("Problem przy pobieraniu danych!");
    }
  }
}


// obsługuje odpowiedź otrzymaną z serwera
function handleServerResponse_4lo()
{
  // pobiera odpowiedź serwera
  var xmlResponse_4lo = xmlHttp_4lo.responseXML;
  // wyłapywanie potencjalnych błędów przez IE i Operę
  ////if (!xmlResponse || !xmlResponse.documentElement)
  ////  throw("Niepoprawna struktura XML:\n" + xmlHttp.responseText);
  // wyłapywanie potencjalnych błędów przez Firefox
  ////var rootNodeName = xmlResponse.documentElement.nodeName;
  ////if (rootNodeName == "parsererror") throw("Niepoprawna struktura XML");
  // pobiera element document pliku XML
  xmlRoot_4lo = xmlResponse_4lo.documentElement;  
/*<kody>
	<kod></kod>
	<kod></kod>
</kody>
<podzialy>
	<podzial></podzial>
</podzialy>*/
  //kod_Array = xmlRoot.getElementsByTagName("kod"); 
  kod_Array = xmlRoot_4lo.getElementsByTagName("kod");
  podzial_Array = xmlRoot_4lo.getElementsByTagName("podzial");
	//alert(kod_Array.length);
	kod_4_lista_ofert='';
	for (var i=0; i<kod_Array.length; i++){
		kod_4_lista_ofert+=kod_Array.item(i).firstChild.data;
	}
	
	//alert(xmlRoot_4lo.getElementsByTagName("podzial").item(0).firstChild.data);
	//podzial=xmlRoot_4lo.getElementsByTagName("podzial").item(0).firstChild.data
	podzial='';
	for (var i=0; i<podzial_Array.length; i++){
		//kod_4_lista_ofert+=kod_Array.item(i).firstChild.data;
		podzial+=podzial_Array.item(i).firstChild.data;
	}
	
	//alert(kod_Array.item(1).firstChild.data);
	//kod.replace(/&gt;/i,">");
	//kod.replace(/&lt;/i,"<");
	//document.write(kod);
	
	//htm='<Table cellpadding=0 cellspacing=0 border=0 width=100% style=" height:100%;"><tr><td align=center class="table">Wczytywanie danych <img src="img/loading-bar.gif" border="0" hspace="4" align="absmiddle" style="margin-top:1px;cursor:pointer"></td></tr></table>';
	
	//document.all.span_lista_ofert.innerHTML=htm;
	
	//setTimeout("pd_4_lista_ofert()",1000);
	pd_4_lista_ofert();
}
function pd_4_lista_ofert(){
	//document.getElementById("span_ostatnio_dodane").innerHTML=kod;
	document.all.span_lista_ofert.innerHTML=kod_4_lista_ofert;
	document.all.span_lista_ofert_podzial.innerHTML=podzial;
	document.all.span_lista_ofert_podzial_2.innerHTML=podzial;

	pageTracker._trackPageview("/lista_ofert" ); 
	//alert(kod);
}
