/** odeslání XMLHttp požadavku @param function obsluha funkce zajišťující obsluhu při změně stavu požadavku, dostane parametr s XMLHttp objektem @param string method GET|POST|... 
@param string url URL požadavku 
@param string [content] tělo zprávy 
@param array [headers] pole předaných hlaviček ve tvaru { 'hlavička': 'obsah' } 
@return bool true v případě úspěchu, false jinak */ 

function send_xmlhttprequest(obsluha, method, url, content, headers) { 
    var xmlhttp = (window.XMLHttpRequest ? new XMLHttpRequest : (window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : false)); 
      if (!xmlhttp) { 
        return false; 
      } 
    
    xmlhttp.open(method, url); 
    xmlhttp.onreadystatechange = function() { 
      if (xmlhttp.readyState==4) {
        if (xmlhttp.status==200) {
          obsluha(xmlhttp);
        }
      } 
    }; 
    
    if (headers) { 
      for (var key in headers) 
        { xmlhttp.setRequestHeader(key, headers[key]); } 
    } 
    
    xmlhttp.send(content); 
    return true; 
} 



function anketa_hlasovat(hlas) { 
    // odeslání požadavku na aktualizaci dat  
    if (!send_xmlhttprequest(anketa_obsluha, 'GET', '/anketa_rpc.php?anketa=' + hlas)) { 
      return false; 
    } 
    document.getElementById('pocet' + hlas).innerHTML++; 
    // zobrazení hlasu u klienta  
    // znemožnění opětovného hlasování smazáním odkazů  
    for (var key in document.getElementById('anketa').getElementsByTagName('td')) 
    { var val = document.getElementById('anketa').getElementsByTagName('td')[key]; 
    if (val.className == 'odpoved') { val.innerHTML = val.firstChild.innerHTML; } 
    }
    document.getElementById('stav-anketa').innerHTML = (JAZYK=="cz"?"Ukládá se.":"Saving now..."); 
    hlasy_celkem++;
    if (hlasy_celkem==1) {
      text_new = hlasoval+" "+hlasy_celkem+" "+navstevnik+".";
    }
    if (hlasy_celkem>1 && hlasy_celkem<=5) {
      text_new = hlasovali+" "+hlasy_celkem+" "+navstevnici+".";
    }
    if (hlasy_celkem>5) {
      text_new = hlasovalo+" "+hlasy_celkem+" "+navstevniku+".";
    }
    document.getElementById('vysledky').innerHTML = text_new;
    return true; 
} 

var textovaHlaska;
var aktualHodnoceni;

function hlas_hlasovat(hlas,productid, text, hodnoceni) {
    cookie = getCookie('product' + productid);
    textovaHlaska = text;
    aktualHodnoceni = hodnoceni;
    //if (!cookie) {    
      // odeslání požadavku na aktualizaci dat  
      if (!send_xmlhttprequest(hlas_obsluha, 'GET', '/hlas_rpc.php?hlas=' + hlas+'&productid=' + productid)) { 
        return false; 
      } 
    //}
      //alert('nemate pravo');
    //}
    return true; 
} 
function hlas_obsluha(xmlhttp) {
    if (xmlhttp.readyState == 4) { 
      // aktualizace odpovědí na základě aktuálního stavu  
      if (xmlhttp.status == 200) {
        var text = xmlhttp.responseText;
        var hodnArr = xmlhttp.responseXML.getElementsByTagName('hodnoceni');
        var prodArr = xmlhttp.responseXML.getElementsByTagName('product');
        var elemHodn = document.getElementById('hodnoceni');
        var span = elemHodn.getElementsByTagName('span');
        var spanText = span[0].firstChild.nodeValue;
        if (hodnArr != null) {
          var hodn = hodnArr[0].firstChild.nodeValue;
        }
        if (prodArr != null) {
          var prod = prodArr[0].firstChild.nodeValue;
        }
        
        elemHodn.innerHTML = '<span>' + spanText + '</span>';
        var rnd = Math.round(hodn);
        for (var i = 1; i < 6; i++) {
          if (i <= rnd) {
            var cls = 'hvezdicka-aktivni';
          } else {
            var cls = 'hvezdicka';
          }
          elemHodn.innerHTML += '<span class=' + cls + '></span>';
        }
        setCookie('product' + prod, 1, 5184000);
        showHint2(5, 5, hodn);
      }
    }
} 

function anketa_obsluha(xmlhttp) {
  var text = xmlhttp.responseText;


    if (xmlhttp.readyState == 4) { 
      // aktualizace odpovědí na základě aktuálního stavu  
      var odpovedi = xmlhttp.responseXML.getElementsByTagName('odpoved'); 
      for (var i=0; i < odpovedi.length; i++) { 
        if (document.getElementById(odpovedi[i].getAttribute('id')) == null)
          continue;
        document.getElementById(odpovedi[i].getAttribute('id')).innerHTML = odpovedi[i].firstChild.data; 
      } 
      document.getElementById('stav-anketa').innerHTML = (JAZYK=="cz"?"Váš hlas byl zaznamenán.":"Your vote was saved.");

    }

} 

