var xmlHttp = createXmlHttpRequestObject();

// tworzy obiekt XMLHttpRequest
function createXmlHttpRequestObject() 
{
  // przechowa odwołanie do obiektu XMLHttpRequest
  var xmlHttp;
  // powinno zadziałać dla wszystkich przeglądarek z wyjątkiem IE6 i starszych
  try
  {
    // próbuje tworzyć obiekt  XMLHttpRequest
    xmlHttp = new XMLHttpRequest();
  }
  catch(e)
  {
    // zakładając, że IE6 lub starsza
    var XmlHttpVersions = new Array("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.length && !xmlHttp; i++) 
    {
      try 
      { 
        // próbuje utworzyć obiekt XMLHttpRequest
        xmlHttp = new ActiveXObject(XmlHttpVersions[i]);
      } 
      catch (e) {} // ignoruje potencjalne błędy
    }
  }
  // zwraca utworzony obiekt lub wyświetla komunikat o błędzie
  if (!xmlHttp)
      alert("Błąd podczas tworzenia obiektu XMLHttpRequest.");
  else 
    return xmlHttp;
}


function ocen(id, ocena)
{
	var id;
	var ocena;
	alert('Głos zaliczony');
	if (xmlHttp)
  	{
		
    	// próbuje połączyć się z serwerem
    	try
    	{
			xmlHttp.open("GET", "rate.php?id="+id+"&ocena="+ocena, true);
      		xmlHttp.onreadystatechange = handleRequestStateChange;
      		xmlHttp.send(null);
			
    	} catch (e) {
			alert("Nie mogę połączyć się z serwerem:\n" + e.toString());
		}
	}	
}

function handleRequestStateChange() 
{
	
	cont = document.getElementById('ratespace');
	if (xmlHttp.readyState == 1)
 	{
		cont.innerHTML = '<div align="center" style="padding-top:30px;">...</div>';
	} else if (xmlHttp.readyState == 4)  {
	    if (xmlHttp.status == 200) 
		{
			try
			{
				response = xmlHttp.responseText;
				cont.innerHTML += response;	
			} catch(e) {
				alert("Błąd podczas odczytu odpowiedzi: " + e.toString());
			}
		} else {
			cont.innerHTML += 'Błąd ładowania';
		}
	}
}

