no more last n lines
parent
ee6ce95c0a
commit
2141e030ef
|
|
@ -38,7 +38,6 @@
|
|||
console.log("loading", d)
|
||||
loadBalances(d.balances)
|
||||
loadDeltas(d.deltas)
|
||||
loadLastNLines(d.lastNLines)
|
||||
})
|
||||
}
|
||||
function loadBalances(balances) {
|
||||
|
|
@ -71,26 +70,6 @@
|
|||
result += `</table>`
|
||||
document.getElementById("reg").innerHTML = result
|
||||
}
|
||||
function setLastNLines(form) {
|
||||
http("PUT", "/api/lastnlines" /*?f="+f*/, (body, status) => {
|
||||
if (status == 205) {
|
||||
init()
|
||||
}
|
||||
document.getElementById("lastNLinesStatus").innerHTML = `(${status}) ${body}`
|
||||
}, JSON.stringify(form.elements["lastNLines"].value.split("\n")))
|
||||
}
|
||||
function loadLastNLines(lastNLines) {
|
||||
var result = `<form onsubmit="setLastNLines(this); return false;" action="#">`
|
||||
//result += ` <div>${f}</div>`
|
||||
result += ` <textarea id="lastNLinesTextarea" name="lastNLines" style="height: 30em;">`
|
||||
for (var k in lastNLines) {
|
||||
result += lastNLines[k] + "\n"
|
||||
}
|
||||
result += ` </textarea>`
|
||||
result += ` <input type="submit">`
|
||||
result += `</form>`
|
||||
document.getElementById("lastNLines").innerHTML = result
|
||||
}
|
||||
function stage(who, contributesToHouse) {
|
||||
var d = new Date()
|
||||
const zeroPad = (num, places) => String(num).padStart(places, '0')
|
||||
|
|
@ -108,9 +87,6 @@
|
|||
}
|
||||
|
||||
console.log(`@${today} ${benefactor} gave to ${beneficiary}`)
|
||||
document.getElementById("lastNLinesTextarea").value += `\n${today} TODO moolah2`
|
||||
document.getElementById("lastNLinesTextarea").value += `\n ${beneficiary} ${beneficiary_value}`
|
||||
document.getElementById("lastNLinesTextarea").value += `\n ${benefactor} ${benefactor_value}`
|
||||
}
|
||||
</script>
|
||||
</header>
|
||||
|
|
@ -137,10 +113,6 @@
|
|||
<input type="button" onclick="stage('AssetAccount:Bel', false)" value="Stage Bel's Charge"/>
|
||||
</div>
|
||||
</div>
|
||||
<div id="lastNLinesStatus">
|
||||
</div>
|
||||
<div id="lastNLines">
|
||||
</div>
|
||||
</details>
|
||||
<details>
|
||||
<summary>Register</summary>
|
||||
|
|
|
|||
|
|
@ -70,44 +70,17 @@ func (router Router) FS(w http.ResponseWriter, r *http.Request) {
|
|||
func (router Router) API(w http.ResponseWriter, r *http.Request) {
|
||||
switch r.URL.Path {
|
||||
case "/api/transactions":
|
||||
bpis, err := router.bpis()
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
lastNLines, err := router.files.TempGetLastNLines(20)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
deltas, err := router.files.Deltas()
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
json.NewEncoder(w).Encode(map[string]any{
|
||||
"deltas": deltas.Like(ledger.LikeAfter(time.Now().Add(-1 * time.Hour * 24 * 365 / 2).Format("2006-01"))),
|
||||
"balances": deltas.Balances().
|
||||
Like("^(Bel:Asset|Zach:Asset|HouseyMcHouseface:Debts:Credit)").
|
||||
Group(`^[^:]*`).
|
||||
WithBPIs(bpis),
|
||||
"lastNLines": lastNLines,
|
||||
})
|
||||
return
|
||||
case "/api/lastnlines":
|
||||
if r.Method != http.MethodPut {
|
||||
router.APITransactions(w, r)
|
||||
case "/api/amend":
|
||||
router.APILastNLines(w, r)
|
||||
case "/api/reg":
|
||||
router.APIReg(w, r)
|
||||
default:
|
||||
http.NotFound(w, r)
|
||||
return
|
||||
}
|
||||
var lines []string
|
||||
if err := json.NewDecoder(r.Body).Decode(&lines); err != nil {
|
||||
panic(err)
|
||||
}
|
||||
if err := router.files.TempSetLastNLines(20, lines); err != nil {
|
||||
http.Error(w, err.Error(), http.StatusBadRequest)
|
||||
}
|
||||
w.WriteHeader(http.StatusResetContent)
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
func (router Router) APIReg(w http.ResponseWriter, r *http.Request) {
|
||||
deltas, err := router.files.Deltas()
|
||||
if err != nil {
|
||||
panic(err)
|
||||
|
|
@ -339,6 +312,34 @@ func (router Router) API(w http.ResponseWriter, r *http.Request) {
|
|||
}
|
||||
}
|
||||
|
||||
func (router Router) APITransactions(w http.ResponseWriter, r *http.Request) {
|
||||
bpis, err := router.bpis()
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
lastNLines, err := router.files.TempGetLastNLines(20)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
deltas, err := router.files.Deltas()
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
json.NewEncoder(w).Encode(map[string]any{
|
||||
"deltas": deltas.Like(ledger.LikeAfter(time.Now().Add(-1 * time.Hour * 24 * 365 / 2).Format("2006-01"))),
|
||||
"balances": deltas.Balances().
|
||||
Like("^(Bel:Asset|Zach:Asset|HouseyMcHouseface:Debts:Credit)").
|
||||
Group(`^[^:]*`).
|
||||
WithBPIs(bpis),
|
||||
"lastNLines": lastNLines,
|
||||
})
|
||||
}
|
||||
|
||||
func (router Router) APILastNLines(w http.ResponseWriter, r *http.Request) {
|
||||
http.Error(w, http.StatusText(http.StatusNotImplemented), http.StatusNotImplemented)
|
||||
}
|
||||
|
||||
func (r Router) bpis() (ledger.BPIs, error) {
|
||||
if r.bpiPath == "" {
|
||||
return make(ledger.BPIs), nil
|
||||
|
|
|
|||
Loading…
Reference in New Issue