function formatDecimal(expr, decplaces) {
	var expr2 = expr;
	var sign = "";
	if (expr2.length == 0) {
		expr2 = "0";
	}
	
	if (expr2 == "0") {
		var wholeNumber = "0";
	}else {
		var wholeNumber = "" + Math.round((expr2 * Math.pow(10,decplaces)));
	}
	
	if (wholeNumber.charAt(0) == "-") {
		wholeNumber = wholeNumber.substring(1,wholeNumber.length);
		sign = "-";
	}
		
	var decpoint = wholeNumber.length - decplaces;

	if (decpoint < 1) {
		while(decpoint < 0) {
			decpoint++;
			wholeNumber = "0" + wholeNumber;
		}	
		wholeNumber = "0" + wholeNumber;
		decpoint = 1;
	}
	return sign + wholeNumber.substring(0,decpoint) + "." + wholeNumber.substring(decpoint,wholeNumber.length);
}

function dollarize(expr, decplaces) {
	return "$" + formatDecimal(expr, decplaces);
}

function removeLeadingZeroes(expr) {
	var resultExpr = "";
	var leadingZero = true;
	for(var i=0;i < expr.length; i++) {
		var oneChar = expr.charAt(i);
		if (leadingZero == false) {
			resultExpr += oneChar;
		}else {
			if (oneChar > "0") {
				resultExpr += oneChar;
				leadingZero = false;
			}
		}
	}	
	return resultExpr;		
	
}

function padLeft(expr,padChar,padLength) {
	var resultExpr = expr;

	for(var i=0;i < (padLength - expr.length); i++) {
	   resultExpr = padChar + resultExpr;
	}	
	return resultExpr;		
}

function getNumbers(expr) {
	var resultExpr = "";
	var oneChar = "";
	for(var i=0;i < expr.length; i++) {
		oneChar = expr.charAt(i);
		if (oneChar < "0" || oneChar > "9") {
			if (oneChar == ".") {
				resultExpr += oneChar;
			}
		} else {
			resultExpr += oneChar;
		}
		
	}	
	return resultExpr;		
	
}

function blankIsZero(expr) {
	if (expr.length == 0) {
		return 0;
	} else {
		return expr;
	}
}


function isNumber(expr) {
/*
	var oneDecimal = false;
	var exprStr = expr.toString();
	for (var i = 0; i< exprStr.length; i++) {
		var oneChar = exprStr.charAt(i);
		if (i == 0 && oneChar == "-") { 
			continue;
		}
		if (oneChar = "." && !oneDecimal) {
			oneDecimal = true;
			continue;
		}
		if (oneChar < "0" || oneChar > "9") {
			return false;
		}
	}
	return true;
*/
}

function fix(number) {
	var decimalPosition = 0;
	var result = 0;
	var temp = "" + number
	try {
		decimalPosition = temp.indexOf(".");
		if (decimalPosition > 0 ) {
			result = temp.substr(0,decimalPosition);	
		} else {
			result = temp;
		}
	} catch (er) {
		alert("Error in module fix with message: " + er.message)
	}
	return result;
}

function isNumeric(expr) {
	var resultExpr = true;
	var oneChar = "";
	
	try {
		for(var i=0;i < expr.length; i++) {
			oneChar = expr.charAt(i);
			if (oneChar < "0" || oneChar > "9") {
				throw "Not Money"
			}
		}	
		return true;
	} catch(er) {
		return false;
	}
	
}

function isMoney(expr) {
	var resultExpr = true;
	var oneChar = "";
	
	try {
		for(var i=0;i < expr.length; i++) {
			oneChar = expr.charAt(i);
			if (oneChar < "0" || oneChar > "9") {
				if (oneChar == ".") {
				} else {
					if (oneChar == "$") {
					} else {
						if (oneChar == ",") {
						} else {
							throw "Not Numeric"
						}
					}
				}
			}
		}	
		return true;
	} catch(er) {
		return false;
	}
	
}

