// JavaScript Document

/*
* @authors:		Alessandro Mazzola, Fabrizio Natoli
* @company:		Marconi Channel WebTV
* @release:		2.0
* @date:			08/06/2011
*/

var votation;

function vote ( target )
{
	set_rating ( local_ID, target );
}

function kindle ( target )
{
  if ( document.getElementById ( 'star_1' ) )
  {
    for ( var i = 1; i <= 5; i ++ )
    {
      if ( i <= target ) document.getElementById ( 'star_' + i ).className = 'on';
      else document.getElementById ( 'star_' + i ).className = '';
    }
  }
}

function setStars ( target )
{
	var container = document.getElementById ( 'rating' );
  var rating = '<ul>';
  rating += '<li class=\'classrating\' id=\'star_1\' onclick=\'vote ( 1 )\' onmouseover=\'kindle ( 0 ); kindle ( 1 )\'></li>';
  rating += '<li class=\'classrating\' id=\'star_2\' onclick=\'vote ( 2 )\' onmouseover=\'kindle ( 0 ); kindle ( 2 )\'></li>';
  rating += '<li class=\'classrating\' id=\'star_3\' onclick=\'vote ( 3 )\' onmouseover=\'kindle ( 0 ); kindle ( 3 )\'></li>';
  rating += '<li class=\'classrating\' id=\'star_4\' onclick=\'vote ( 4 )\' onmouseover=\'kindle ( 0 ); kindle ( 4 )\'></li>';
  rating += '<li class=\'classrating\' id=\'star_5\' onclick=\'vote ( 5 )\' onmouseover=\'kindle ( 0 ); kindle ( 5 )\'></li>';
  rating += '</ul>';
	container.onmouseout = function() { kindle ( target ); };
	container.innerHTML = rating;
  kindle ( target );
}

function set_rating ( id, rating )
{
	if ( window.XMLHttpRequest )
	{
		xmlhttp = new XMLHttpRequest ();
	} else {
		xmlhttp = new ActiveXObject ( 'Microsoft.XMLHTTP' );
	}
	xmlhttp.onreadystatechange = function ()
	{
		if ( xmlhttp.readyState == 4 && xmlhttp.status == 200 )
		{
			var current_string = xmlhttp.responseText;
			var array_XMLHTTP = current_string.split ( '#' )
			if ( array_XMLHTTP [ 0 ] == 'OK' )
			{
				setStars ( array_XMLHTTP [ 1 ] );
			} else if ( array_XMLHTTP [ 0 ] == 'NO' )
			{
				jAlert ( array_XMLHTTP [ 1 ], 'Attenzione' );
			}
		}
	}
	xmlhttp.open ( 'GET', 'getter_setter/set_rating.php?id=' + id + '&rating=' + rating, true);
	xmlhttp.send();
}
