// Float formating
function formatFloat(num, precision)
{
	var numStr = ""
	numStr += num
	if(!isNumber(numStr, true))
	{
		numStr = "0"
		if(precision > 0)
		{
 			numStr += "."
   			for(var i=0; i<precision; i++)
   			{
    			numStr += "0"
   			}
  		} return numStr
 	}
 
 	if(numStr.charAt(0) == ".")
 		numStr = '0' + numStr
 	var decPos = numStr.indexOf(".")
 	if(decPos == -1)
 	{
  		numStr += "."
  		decPos = numStr.indexOf(".")
 	}
 	if(precision == 0)
 	{
  		numStr = numStr.substring(0, decPos)
  		return numStr
	}
 	var digits = (numStr.length - decPos) - 1
 	if(digits > precision)
  		numStr = numStr.substring(0, decPos + precision + 1)
 	else if(precision > digits)
 	{
  		// Add zeros to the numStr
  		for(var i=1; i<=precision-digits; i++)
  		{
   			numStr += "0"
  		}
 	} return numStr
}

function isNumber(inputVal, isFloat)
{
	inputStr = inputVal.toString()
 	if(inputStr.length <= 0)
  	return false
 	if(isFloat && inputStr.charAt(0) == '.')
  		inputStr = '0' + inputStr
 	var oneChar = inputStr.charAt(0)
 	if(oneChar != '-' && !isDigit(oneChar) && (!isFloat || (isFloat && oneChar != '.')))
  		return false
 	var hasDecimal = false
 	for(var i = 1; i < inputStr.length; i++)
 	{
  		oneChar = inputStr.charAt(i)
  		if(isFloat)
  		{
   			if(oneChar == '.')
  			{
    				if(!hasDecimal)
     					hasDecimal = true
    				else
     					return false
   			}
   			else if(!isDigit(oneChar))
   			{
    				return false
   			}
  		}
  		else
  		{
   			if(!isDigit(oneChar))
    				return false
  		}
 	} return true
}

function isDigit(oneChar)
{
	if(oneChar < "0" || oneChar > "9")
  		return false
 	return true
}
