function NumberEditCheckRank(numberEdit, minValue, maxValue)
{
	if (numberEdit.value == null || isNaN(numberEdit.value))
		numberEdit.value = 0;
	if (minValue != null && numberEdit.value < minValue)
		numberEdit.value = minValue;
	if (maxValue != null && numberEdit.value > maxValue)
		numberEdit.value = maxValue;
}

function NumberEditIncrease(numberEditID, increase, minValue, maxValue)
{
	var ne = document.getElementById(numberEditID);
	NumberEditCheckRank(ne, minValue, maxValue);
	ne.value = parseFloat(ne.value) + increase;
	NumberEditCheckRank(ne, minValue, maxValue);
}

function NumberEditDecrease(numberEditID, increase, minValue, maxValue)
{
	var ne = document.getElementById(numberEditID);
	NumberEditCheckRank(ne, minValue, maxValue);
	ne.value = parseFloat(ne.value) - increase;
	NumberEditCheckRank(ne, minValue, maxValue);
}

function NumberEditKeyDown(event, numberEdit, increment, minValue, maxValue)
{
/*
	if ((event.keyCode <= 90) && (event.keyCode >= 65))
	{
		return false; //a-z
	}
*/

	switch (event.keyCode)
	{
		case 40: //cursor-down
			NumberEditDecrease(numberEdit.id, increment, minValue, maxValue);
			return false;
			break;
		case 38: //cursor-up
			NumberEditIncrease(numberEdit.id, increment, minValue, maxValue);
			return false;
			break;
	}

	return true;
}

function NumberEditWheel(event, numberEdit, increment, minValue, maxValue)
{
	if (event.wheelDelta > 0)
		NumberEditIncrease(numberEdit.id, increment, minValue, maxValue);
	else
	if (event.wheelDelta < 0)
		NumberEditDecrease(numberEdit.id, increment, minValue, maxValue);
}