Conditionally show decimal places for tax rates

This commit is contained in:
Raphael Michel
2019-01-21 10:53:50 +01:00
parent d482bc9de0
commit d8a57b0baa
6 changed files with 33 additions and 21 deletions

View File

@@ -19,7 +19,19 @@ var floatformat = function (val, places) {
val = parseFloat(val);
}
var parts = roundTo(val, places).toFixed(places).split(".");
if (places === 0) {
return parts[0];
}
parts[0] = parts[0].replace(new RegExp("\\B(?=(\\d{" + django.get_format("NUMBER_GROUPING") + "})+(?!\\d))", "g"), django.get_format("THOUSAND_SEPARATOR"));
return parts[0] + django.get_format("DECIMAL_SEPARATOR") + parts[1];
};
var autofloatformat = function (val, places) {
"use strict";
console.log(val, roundTo(val, 0))
if (val == roundTo(val, 0)) {
places = 0;
}
return floatformat(val, places);
};

View File

@@ -232,12 +232,12 @@ Vue.component('pricebox', {
taxline: function () {
if (this.$root.display_net_prices) {
return django.interpolate(strings.tax_plus, {
'rate': floatformat(this.price.rate, 2),
'rate': autofloatformat(this.price.rate, 2),
'taxname': this.price.name
}, true);
} else {
return django.interpolate(strings.tax_incl, {
'rate': floatformat(this.price.rate, 2),
'rate': autofloatformat(this.price.rate, 2),
'taxname': this.price.name
}, true);
}