// JavaScript Document

function moneyFormat(textObj)
	{
		var newValue = textObj.value;
		var decAmount = "";
		var dolAmount = "";
		var decFlag = false;
		var aChar = "";

		// ignore all but digits and decimal points.
		for (i = 0; i < newValue.length; i++)
			{
				aChar = newValue.substring (i, i + 1);

				if (aChar >= "0" && aChar <= "9")
					{
						if (decFlag)
							{
								decAmount = "" + decAmount + aChar;
							}

						else
							{
								dolAmount = "" + dolAmount + aChar;
							}
					}

				if (aChar == ".")
					{
						if (decFlag)
							{
								dolAmount = "";
								break;
							}

						decFlag = true;
					}
			}

		// Ensure that at least a zero appears for the dollar amount.
		if (dolAmount == "")
			{
				dolAmount = "0";
			}

		// Strip leading zeros.
		if (dolAmount.length > 1)
			{
				while (dolAmount.length > 1 && dolAmount.substring (0, 1) == "0")
					{
						dolAmount = dolAmount.substring (1, dolAmount.length);
					}
			}

		// Round the decimal amount.
		if (decAmount.length > 0)
			{
				if (decAmount.substring (1, 2) > "4")
					{
						decAmount = parseInt (decAmount.substring (0, 1)) + 1;

						if (decAmount < 10)
							{
							// decAmount = decAmount + "0";
							}

						else
							{
								decAmount = "" + decAmount;
							}
					}

				else
					{
						decAmount = decAmount.substring (0, 1);
					}
			}

		// alert(decAmount) ;

		if (decAmount <= 2)
			{
				decAmount = "0";
			//alert('Il valore verrà arrotondato per difetto') ;
			}
		else if (decAmount <= 6)
			{
				decAmount = "5";
			//alert('Il valore verrà arrotondato per difetto a 0.5 k€') ;
			}
		else if (decAmount <= 9)
			{
				decAmount = "0";
				dolAmount = parseInt (dolAmount) + 1;
			//alert('Il valore verrà arrotondato per eccesso') ;
			}

		// Pad right side of decAmount
		if (decAmount.length == 1)
			{
			//   decAmount = decAmount + "0";
			}

		if (decAmount.length == 0)
			{
				decAmount = decAmount + "0";
			}

		// Check for negative values and reset textObj
		if (newValue.substring (0, 1) != '-' || (dolAmount == "0" && decAmount == "00"))
			{
				textObj.value = dolAmount + "." + decAmount;
			}

		else
			{
				textObj.value = '-' + dolAmount + "." + decAmount;
			}
	}

