
function formatCurrency(num) {
num = num.toString().replace(/\$|\,/g,'');
if(isNaN(num))
num = "0";
sign = (num == (num = Math.abs(num)));
num = Math.floor(num*100+0.50000000001);
cents = num%100;
num = Math.floor(num/100).toString();
if(cents<10)
cents = "0" + cents;
for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
num = num.substring(0,num.length-(4*i+3))+','+
num.substring(num.length-(4*i+3));
return (((sign)?'':'-') + num + '.' + cents);
}

function format_amount(val) {
  var str = formatCurrency(val);
  return str;
}

function trim (val) {
  var newval = val.replace(/^\s+/,"");
  newval = newval.replace(/\s+$/,"");
  return newval;
}

function fix_amount (amount) {
  var newamount = trim(amount);
  newamount = newamount.replace(/[^\d\.]+/,"");
  return newamount;
}

function check_amount (amount,field) {
  if (!amount.match(/^\d+(\.\d\d)?$/)) {
    return "* Please enter a properly formatted dollar amount for " + field + "\n";
  } else {
    return "";
  }
}

function check_rate (amount,field) {
  if (!amount.match(/^\d{0,2}(\.\d+)?$/)) {
    return "* Please enter a properly formatted percentage rate for " + field + "\n";
  } else {
    return "";
  }
}

function check_number2 (number,field) {
  if (!number.match(/^[\d\.]+$/)) {
    return "* Please enter a properly formatted number for " + field + "\n";
  } else {
    return "";
  }
}

function check_number (number,field) {
  if (!number.match(/^\d+$/)) {
    return "* Please enter a properly formatted number for " + field + "\n";
  } else {
    return "";
  }
}
