Mercurial > lada > lada-client
diff app/model/Messwert.js @ 1119:b73f9a976c82
Exponential notation without tampering numbers.
Rounding is done by the server. Thus, the client should not fix the
number of digits, except only for rendering.
author | Tom Gottfried <tom@intevation.de> |
---|---|
date | Mon, 23 May 2016 16:00:50 +0200 |
parents | 14c130767e44 |
children | 3b4dcc83a21b |
line wrap: on
line diff
--- a/app/model/Messwert.js Mon May 23 11:39:19 2016 +0200 +++ b/app/model/Messwert.js Mon May 23 16:00:50 2016 +0200 @@ -26,54 +26,7 @@ }, { name: 'messgroesseId' }, { - name: 'messwert', - serialize: function(v) { - if (!v || v === '') { - return v; - } - if (v.indexOf(',') > 0) { - v = v.replace(',', '.'); - return v; - } - return v; - }, - convert: function(value) { - if (!value || value === '') { - return value; - } - var valueString = value.toString(); - if (valueString.indexOf('E') > 0) { - valueString = valueString.replace('E', 'e'); - } - var tmp; - if (valueString.indexOf('e') > 0) { - tmp = valueString; - } - else { - // Currently not locale friendly... - if (valueString.indexOf(',') > 0) { - valueString = valueString.replace(',', '.'); - } - tmp = parseFloat(valueString).toExponential(); - } - var parts = tmp.split('e'); - if (parts[0].indexOf('.') > 0) { - var floatPart = parseFloat(parts[0]); - var separator = floatPart.toFixed(2).toLocaleString().replace(/[-\d]/g, ''); - parts[0] = floatPart.toFixed(2).replace('.', separator); - } - else if (parts[0].indexOf(',') < 0) { - parts[0] = parts[0] + ',00'; - } - var intPart = parseInt(parts[1]); - if (intPart < 10 && intPart >= 0) { - parts[1] = '+0' + parseInt(parts[1]); - } - else if (intPart < 0 && intPart > -10) { - parts[1] = parts[1].replace('-', '-0'); - } - return parts[0] + 'e' + parts[1]; - } + name: 'messwert' }, { name: 'messwertNwg', convert: function(v) { @@ -87,54 +40,7 @@ name: 'messfehler', type: 'float' }, { - name: 'nwgZuMesswert', - serialize: function(v) { - if (!v || v === '') { - return v; - } - if (v.indexOf(',') > 0) { - v = v.replace(',', '.'); - return v; - } - return v; - }, - convert: function(value) { - if (!value || value === '') { - return value; - } - var valueString = value.toString(); - if (valueString.indexOf('E') > 0) { - valueString = valueString.replace('E', 'e'); - } - var tmp; - if (valueString.indexOf('e') > 0) { - tmp = valueString; - } - else { - // Currently not locale friendly... - if (valueString.indexOf(',') > 0) { - valueString = valueString.replace(',', '.'); - } - tmp = parseFloat(valueString).toExponential(); - } - var parts = tmp.split('e'); - if (parts[0].indexOf('.') > 0) { - var floatPart = parseFloat(parts[0]); - var separator = floatPart.toFixed(2).toLocaleString().replace(/[-\d]/g, ''); - parts[0] = floatPart.toFixed(2).replace('.', separator); - } - else if (parts[0].indexOf(',') < 0) { - parts[0] = parts[0] + ',00'; - } - var intPart = parseInt(parts[1]); - if (intPart < 10 && intPart >= 0) { - parts[1] = '+0' + parseInt(parts[1]); - } - else if (intPart < 0 && intPart > -10) { - parts[1] = parts[1].replace('-', '-0'); - } - return parts[0] + 'e' + parts[1]; - } + name: 'nwgZuMesswert' }, { name: 'mehId' }, {