/* global num, moment */ window.capitalize = function (str) { if (str.length > 0) { return str.charAt(0).toUpperCase() + str.slice(1); } return str; }; window.ucwords = function (str) { return (str + '').replace(/^([a-z\u00E0-\u00FC])|\s+([a-z\u00E0-\u00FC])/g, function ($1) { return $1.toUpperCase(); }); }; window.formatValue = function (value, type, formatter, unit, small) { if (value === undefined || value === null) { value = 0; } if (!unit) { unit = ""; } if (small) { unit = "" + unit + ""; } var plus = ""; if (formatter && formatter[0] === "+") { formatter = formatter.replace("+", ""); if (!isNaN(parseFloat(value)) && parseFloat(value) > 0) { plus = "+"; } } switch (type) { case "string": break; case "int": if (isNaN(parseInt(value))) { value = 0; } value = parseInt(value); value = plus + value + "" + unit; break; case "float": if (isNaN(parseFloat(value))) { value = 0; } if (formatter) { value = format(formatter, value); if (value) { value = value.replace(/[\.,]/g, function (m) { return m == "." ? "," : "."; }); } } else if (value) { value = value.toLocaleString(); } value = plus + value + "" + unit; break; case "currency": if (isNaN(parseFloat(value))) { value = 0; } if (formatter) { value = format(formatter, value); if (value) { value = value.replace(/[\.,]/g, function (m) { return m == "." ? "," : "."; }); } } else if (value) { value = value.toLocaleString(); } value = unit + " " + plus + value; break; case "date": if (formatter) { var tmp = moment(value); if (tmp.isValid()) { value = tmp.format(formatter); } else { value = "-"; } } else { var tmp = moment(value); if (tmp.isValid()) { value = tmp.format(); } else { value = "-"; } } break; case "time": if (formatter) { var tmp = moment(value); if (tmp.isValid()) { value = tmp.format(formatter); } else { value = "-"; } } else { var tmp = moment(value); if (tmp.isValid()) { value = tmp.format(); } else { value = "-"; } } break; case "": if (!value) { value = "-"; } break; } return value; };