From 30c16acb662c66e08aca55cc46bd99a81876b04f Mon Sep 17 00:00:00 2001 From: wbudic Date: Wed, 11 Aug 2021 19:05:51 +1000 Subject: [PATCH] Added substraction in sum for negative numbers. --- htdocs/cgi-bin/wsrc/main.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/htdocs/cgi-bin/wsrc/main.js b/htdocs/cgi-bin/wsrc/main.js index 2c87725..a9e457b 100644 --- a/htdocs/cgi-bin/wsrc/main.js +++ b/htdocs/cgi-bin/wsrc/main.js @@ -106,7 +106,7 @@ function onBodyLoad(toggle, locale, tz, today, expires, rs_cur, log_limit) { e.preventDefault(); let v = $('#am').val(); if(v.length==0 || v==0.00){ - const regex = /^\D*\d+\.*\d*/gm; + const regex = /^[\D]?\d+\.*\d*/gm; let str = $('#el').val(); let m; let tot = 0; @@ -115,8 +115,13 @@ function onBodyLoad(toggle, locale, tz, today, expires, rs_cur, log_limit) { regex.lastIndex++; } m.forEach( (match, groupIndex) => { + let v = `${match}`; + let s = v.startsWith('-'); + v = v.replace(/^\./g,'0.'); + v = v.replace(/^\D/g,''); //console.log(`Found match, group ${groupIndex}: ${match}`); - tot += parseFloat(`${match}`.replace(/^\$/g,'')); + if(s){ tot -= parseFloat(v); + }else{ tot += parseFloat(v); } }); } -- 2.34.1