function selectrate(num, cr) {
  var i;
  for (i=1; i <= 10; i++) {
     if (i <= num) document.getElementById('rateimg'+i).src='/img/star4.gif';
     else if (i <= cr) document.getElementById('rateimg'+i).src='/img/star2.gif';
     else document.getElementById('rateimg'+i).src='/img/star1.gif';
  }
  if (num) document.getElementById('yourvote').innerHTML = 'Your rating: '+num+'/10';
      else document.getElementById('yourvote').innerHTML = '&nbsp;';
}

function savevote(id, num) {
  document.getElementById('yourvote').innerHTML = 'Saving vote...';
  document.getElementById('ratestars').style.visibility = 'hidden';
  var errstr = '&nbsp;';
  var request = createRequest();
  var url = "/rate.php?id=" + id + "&value=" + num;
  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').innerHTML = 'Vote saved. Your vote: '+num+'/10';
          var valarr = response.split(' ');
          document.getElementById('numvotes').innerHTML = valarr[1];
          document.getElementById('currrating').innerHTML = Math.round(valarr[2]*10) / 10;
          var i;
          for (i=1; i <= 10; i++){
            document.getElementById('rateimg'+i).src='/img/star' + ((i <= Math.round(valarr[2])) ? '2' : '1') + '.gif';
            document.getElementById('rateimg'+i).onmouseover = null;
            document.getElementById('rateimg'+i).onmouseout = null;
            document.getElementById('rateimg'+i).onclick = null;
          }
        } else {
          document.getElementById('yourvote').innerHTML = response;
        }
        document.getElementById('ratestars').style.visibility = 'visible';
      } else {
        errstr = 'Failed';
      }
    }
  }
  request.send(null);
}
