diff options
Diffstat (limited to 'interface')
-rw-r--r-- | interface/js/app/symbols.js | 24 |
1 files changed, 8 insertions, 16 deletions
diff --git a/interface/js/app/symbols.js b/interface/js/app/symbols.js index 5c51c28f4..d35715188 100644 --- a/interface/js/app/symbols.js +++ b/interface/js/app/symbols.js @@ -53,10 +53,7 @@ define(["jquery", "app/rspamd", "footable"], server: server }); } - function decimalStep(number) { - const digits = Number(number).toFixed(20).replace(/^-?\d*\.?|0+$/g, "").length; - return (digits === 0 || digits > 4) ? 0.1 : 1.0 / Math.pow(10, digits); - } + function process_symbols_data(data) { const items = []; const lookup = {}; @@ -66,15 +63,12 @@ define(["jquery", "app/rspamd", "footable"], data.forEach((group) => { group.rules.forEach((item) => { - let max = 20; - let min = -20; - if (item.weight > max) { - max = item.weight * 2; - } + const formatter = new Intl.NumberFormat("en", { + minimumFractionDigits: 2, + maximumFractionDigits: 6, + useGrouping: false + }); item.group = group.group; - if (item.weight < min) { - min = item.weight * 2; - } let label_class = ""; if (item.weight < 0) { label_class = "scorebar-ham"; @@ -82,10 +76,8 @@ define(["jquery", "app/rspamd", "footable"], label_class = "scorebar-spam"; } item.weight = "<input class=\"form-control input-sm mb-disabled " + label_class + - "\" data-role=\"numerictextbox\" autocomplete=\"off\" type=\"number\" class=\"input\" min=\"" + - min + "\" max=\"" + - max + "\" step=\"" + decimalStep(item.weight) + - "\" tabindex=\"1\" value=\"" + Number(item.weight).toFixed(3) + + "\" data-role=\"numerictextbox\" autocomplete=\"off\" type=\"number\"" + + " step=\"0.01\" tabindex=\"1\" value=\"" + formatter.format(item.weight) + "\" id=\"_sym_" + item.symbol + "\"></input>"; if (!item.time) { item.time = 0; |