]> lifelog.hopto.org Git - LifeLog.git/commitdiff
Autocalc upgraded to also multiply and divide.
authorwbudic <redacted>
Thu, 12 Aug 2021 00:36:05 +0000 (10:36 +1000)
committerwbudic <redacted>
Thu, 12 Aug 2021 00:36:05 +0000 (10:36 +1000)
htdocs/cgi-bin/wsrc/main.js

index a9e457ba51f9e6b87327de51a329893964dcf7d8..cb18f5bf21dc1f1fde34f28649636b179138555e 100644 (file)
@@ -116,17 +116,27 @@ function onBodyLoad(toggle, locale, tz, today, expires, rs_cur, log_limit) {
                 }
                 m.forEach( (match, groupIndex) => {
                     let v = `${match}`;
+                    let d = v.startsWith('/');
+                    let m = v.startsWith('*');
+                    if(d||m){v=v.substring(1)}
                     let s = v.startsWith('-');
                     v = v.replace(/^\./g,'0.');
                     v = v.replace(/^\D/g,'');
                     //console.log(`Found match, group ${groupIndex}: ${match}`);
-                    if(s){ tot -= parseFloat(v);
-                    }else{ tot += parseFloat(v); }
-
+                    if(d){
+                        if(s){ tot /= -parseFloat(v);
+                        }else{ tot /= parseFloat(v); }
+                    }else if(m){
+                        if(s){ tot *= -parseFloat(v);
+                        }else{ tot *= parseFloat(v); }
+                    }else{
+                        if(s){ tot -= parseFloat(v);
+                        }else{ tot += parseFloat(v); }
+                    }
                 });
             }
-            $('#am').val(tot);
-            
+            if(tot==0){tot=""}
+            $('#am').val(tot);            
         }