var scriptpath = '/~vladmedi/';

function createRequest() {
  var request;
  try {
    request = new XMLHttpRequest();
  } catch (trymicrosoft) {
    try {
      request = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (othermicrosoft) {
      try {
        request = new ActiveXObject("Microsoft.XMLHTTP");
      } catch (failed) {
        request = false;
      }
    }
  }
  return request;
}


function savevote(id, num, type) {
  document.getElementById('yourvote'+id).innerHTML = 'Сохранение...';
  document.getElementById('ratestars'+id).style.visibility = 'hidden';
  var errstr = '&nbsp;';
  var request = createRequest();
  var url = scriptpath + "include/ajax.php?rate=1&id=" + id + "&value=" + num + "&type=" + encodeURIComponent(type);
  request.open("GET", url, true);
  request.onreadystatechange = function() {
    if (request.readyState == 4) {
      if (request.status == 200) {
        var response = request.responseText;
        if (response.substr(0, 2) == 'OK') {
          document.getElementById('yourvote'+id).innerHTML = 'Ваша оценка: '+num+'';
          var valarr = response.split(' ');
          document.getElementById('numvotes'+id).innerHTML = valarr[1];
          document.getElementById('currrating'+id).innerHTML = Math.round(valarr[2]*10) / 10;
          var i;
          for (i=1; i <= 5; i++){
            document.getElementById('rateimg'+i+"-"+id).className='star' + ((i <= Math.round(valarr[2])) ? '1' : '2') + '';
            document.getElementById('rateimg'+i+"-"+id).onmouseover = null;
            document.getElementById('rateimg'+i+"-"+id).onmouseout = null;
            document.getElementById('rateimg'+i+"-"+id).onclick = null;
          }
        } else {
          document.getElementById('yourvote'+id).innerHTML = response;
        }
        document.getElementById('ratestars'+id).style.visibility = 'visible';
      } else {
        errstr = 'Ошибка';
      }
    }
  }
  request.send(null);
}

function selectrate(num, ansid, cr) {
  var i;
  for (i=1; i <= 5; i++) {
     if (i <= num) document.getElementById('rateimg'+i+"-"+ansid).className='star0';
     else if (i <= cr) document.getElementById('rateimg'+i+"-"+ansid).className='star1';
     else document.getElementById('rateimg'+i+"-"+ansid).className='star2';
  }
  if (num) document.getElementById('yourvote'+ansid).innerHTML = 'Ваша оценка: '+num+'/5';
      else document.getElementById('yourvote'+ansid).innerHTML = '&nbsp;';
}
