// faccio il preload dell'immagine utilizzata per l'effetto rollover
var staron = new Image(); 
staron.src = "/images/star-on.gif";


// Definisco la funzione per la votazione che verrà lanciata
// all'evento onclick su una delle 5 stelle
function star_vota(QT)
{
  // Creo una variabile con l'output da restituire al momento del voto
  //var star_output = '<span class="output">Hai votato ' + QT + ' stelle!</span>';
  // Cambio dinamicamente il contenuto del DIV contenitore con il messaggio di
  // conferma di votazione avvenuta
  //document.getElementById('STAR_RATING').innerHTML = star_output;
	//alert(_idArticoloVoto + "    " + QT);
	SaveVote(_idArticoloVoto, QT); 

	document.getElementById('STAR_RATING').innerHTML = "<b><i>Voto registrato. Grazie!</i></b>";
}

// Definisco la funzione per "accendere" dinamicamente le stelle
// unico argomento è il numero di stelle da accendere
function star_accendi(QT)
{
  // verifico che esistano i DIV delle stelle
  // se il DIV non esiste significa che si è già votato
  if (document.getElementById('star_1'))
  {
    // Ciclo tutte e 5 i DIV contenenti le stelle
    for (i=1; i<=5; i++)
    {
      // se il div è minore o uguale del numero di stelle da accendere
      // imposto dinamicamente la classe su "on"
      if (i<=QT) document.getElementById('star_' + i).className = 'on';
      // in caso contrario spengo la stella...
      else document.getElementById('star_' + i).className = '';
    }
  }
}

// Questa è la funzione che produce l'output.
// richiede come unico argomento il numero di stelle che si vuole accendere
// di default (possiamo in questo, ad esempio, modo mostrare il voto ottenuto
// nelle precedenti votazioni)
function star(QT)
{
  // stampo il codice HTML che produce le stelle
  document.write('<div style="float:left;padding-right:10px">Vota questo articolo: </div>');
  document.write('<div id="STAR_RATING" onmouseout="star_accendi(' + QT + ')""><ul>');
  document.write('<li id="star_1" onclick="star_vota(1)" onmouseover="star_accendi(0); star_accendi(1)"></li>');
  document.write('<li id="star_2" onclick="star_vota(2)" onmouseover="star_accendi(0); star_accendi(2)"></li>');
  document.write('<li id="star_3" onclick="star_vota(3)" onmouseover="star_accendi(0); star_accendi(3)"></li>');
  document.write('<li id="star_4" onclick="star_vota(4)" onmouseover="star_accendi(0); star_accendi(4)"></li>');
  document.write('<li id="star_5" onclick="star_vota(5)" onmouseover="star_accendi(0); star_accendi(5)"></li>');
  document.write('</ul></div>');
  // accendo le stelle definite in argomento
  star_accendi(QT);
}

function ViewStarsVote(QT, num_votazioni, blnNoVote)
{
	//alert(blnNoVote);
  if (blnNoVote == 'Y')  {
	  // stampo il codice HTML che produce le stelle
	  document.write('<div style="float:left;padding-right:5px">-&nbsp;&nbsp;Voto: </div>');
	  document.write('<div id="STARV_RATING" style="float:left;"><ul>');
	  document.write('<li id="star_1"></li>');
	  document.write('<li id="star_2"></li>');
	  document.write('<li id="star_3"></li>');
	  document.write('<li id="star_4"></li>');
	  document.write('<li id="star_5"></li>');
	  document.write('</ul></div>');
  }
  else  {
	  // stampo il codice HTML che produce le stelle
	  document.write('<div style="float:left;padding-right:5px">-&nbsp;&nbsp;Voto: </div>');
	  document.write('<div id="STAR_RATING" style="float:left;" onmouseout=\'star_accendi_decimal("' + QT + '", "'+ num_votazioni +'")\'><ul>');
	  document.write('<li id="star_1" onclick="star_vota(1)" onmouseover="star_accendi(0); star_accendi(1)"></li>');
	  document.write('<li id="star_2" onclick="star_vota(2)" onmouseover="star_accendi(0); star_accendi(2)"></li>');
	  document.write('<li id="star_3" onclick="star_vota(3)" onmouseover="star_accendi(0); star_accendi(3)"></li>');
	  document.write('<li id="star_4" onclick="star_vota(4)" onmouseover="star_accendi(0); star_accendi(4)"></li>');
	  document.write('<li id="star_5" onclick="star_vota(5)" onmouseover="star_accendi(0); star_accendi(5)"></li>');
	  document.write('</ul></div>');
  }
  // accendo le stelle definite in argomento
  star_accendi_decimal(QT, num_votazioni);
}

function ViewStarsVoteMedia(QT, num_votazioni, blnNoVote)
{
	//alert(blnNoVote);
  if (blnNoVote == 'Y')  {
	  // stampo il codice HTML che produce le stelle
	  document.write('<div style="float:left;padding-right:5px">Voto Medio: </div>');
	  document.write('<div id="STARV_RATING" style="float:left;"><ul>');
	  document.write('<li id="star_1"></li>');
	  document.write('<li id="star_2"></li>');
	  document.write('<li id="star_3"></li>');
	  document.write('<li id="star_4"></li>');
	  document.write('<li id="star_5"></li>');
	  document.write('</ul></div>');
  }
  else  {
	  // stampo il codice HTML che produce le stelle
	  document.write('<div style="float:left;padding-right:5px">Voto: </div>');
	  document.write('<div id="STAR_RATING" style="float:left;" onmouseout=\'star_accendi_decimal("' + QT + '", "'+ num_votazioni +'")\'><ul>');
	  document.write('<li id="star_1" onclick="star_vota(1)" onmouseover="star_accendi(0); star_accendi(1)"></li>');
	  document.write('<li id="star_2" onclick="star_vota(2)" onmouseover="star_accendi(0); star_accendi(2)"></li>');
	  document.write('<li id="star_3" onclick="star_vota(3)" onmouseover="star_accendi(0); star_accendi(3)"></li>');
	  document.write('<li id="star_4" onclick="star_vota(4)" onmouseover="star_accendi(0); star_accendi(4)"></li>');
	  document.write('<li id="star_5" onclick="star_vota(5)" onmouseover="star_accendi(0); star_accendi(5)"></li>');
	  document.write('</ul></div>');
  }
  // accendo le stelle definite in argomento
  star_accendi_decimal(QT, num_votazioni);
}

function star_accendi_decimal(QT, num_votazioni)
{
  //spengo tutto	
  star_accendi(0);

  //alert(QT);
  var intVote = QT.toString().split('.')[0]; 
  var decPart = QT.toString().split('.')[1]; 
  var OneWay = true;

  //alert(intVote);
  //alert(decPart);
  
  if (decPart == 'undefined')
	decPart = 0;

  //decPart = (decPart <= 50) ? 'undefined': decPart;

	
  // verifico che esistano i DIV delle stelle
  // se il DIV non esiste significa che si è già votato
  if (document.getElementById('star_1'))
  {
    // Ciclo tutte e 5 i DIV contenenti le stelle
    for (i=1; i<=5; i++)
    {
	  document.getElementById('star_' + i).setAttribute("alt", "Voto: " + QT.toString() + " " + num_votazioni);
	  document.getElementById('star_' + i).setAttribute("title", "Voto: " + QT.toString() + " " + num_votazioni);

      // se il div è minore o uguale del numero di stelle da accendere
      // imposto dinamicamente la classe su "on"
      if (i<=intVote) document.getElementById('star_' + i).className = 'on';
      // in caso contrario spengo la stella... controllo il decimal
      else { 
		  if (decPart >= 50)
		  {
			  if (OneWay == true)
			  {
				  document.getElementById('star_' + i).className = 'half';
				  OneWay = false;
			  }
		  else {		   
		  	  document.getElementById('star_' + i).className = '';
		  }
		}
	  }
    }
  }
}

