// Rating slider
var ratingElm = $("#minRating");
var ratingInput = $("#grade");
var ratingHandleElm = $("#minRatingHandle");

var ratingDragging = false;
var ratingLiArr = [];

// Init
ratingInput.forcechange = function() { return false; };
setRating(ratingInput.val() * 2);
ratingHandleElm.style.visibility = ratingElm.getElementsByTagName("ul")[0].style.visibility = "visible";

for (i=0; i != 11; i++)
{
	ratingLiArr[i] = $("#minRating"+i);
	
	ratingLiArr[i].onclick = function()
	{
		setRating(this.innerHTML)
	}
	
	ratingLiArr[i].onmouseover = function()
	{
		if (ratingDragging) setRating(this.innerHTML);
	}
}

// Events
ratingHandleElm.onmousedown = function()
{
	stopSelecting(false)
	ratingDragging = true;
	return false;
}

ratingHandleElm.onmouseup = function()
{
	ratingDragging = false;
	return false;
}

// Function
function setRating(number)
{
	stopSelecting(true);
	ratingElm.className="score"+number;
	ratingInput.val(number / 2);
	ratingInput.forcechange(); // stupid stupid hack
}

function stopSelecting(bool) {
	// prevent IE text selection while dragging!!!
	document.body.ondrag = function () { return bool; };
	document.body.onselectstart = function () { return bool; };
}