no more last n lines
parent
ee6ce95c0a
commit
2141e030ef
|
|
@ -38,7 +38,6 @@
|
||||||
console.log("loading", d)
|
console.log("loading", d)
|
||||||
loadBalances(d.balances)
|
loadBalances(d.balances)
|
||||||
loadDeltas(d.deltas)
|
loadDeltas(d.deltas)
|
||||||
loadLastNLines(d.lastNLines)
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
function loadBalances(balances) {
|
function loadBalances(balances) {
|
||||||
|
|
@ -71,26 +70,6 @@
|
||||||
result += `</table>`
|
result += `</table>`
|
||||||
document.getElementById("reg").innerHTML = result
|
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) {
|
function stage(who, contributesToHouse) {
|
||||||
var d = new Date()
|
var d = new Date()
|
||||||
const zeroPad = (num, places) => String(num).padStart(places, '0')
|
const zeroPad = (num, places) => String(num).padStart(places, '0')
|
||||||
|
|
@ -108,9 +87,6 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(`@${today} ${benefactor} gave to ${beneficiary}`)
|
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>
|
</script>
|
||||||
</header>
|
</header>
|
||||||
|
|
@ -137,10 +113,6 @@
|
||||||
<input type="button" onclick="stage('AssetAccount:Bel', false)" value="Stage Bel's Charge"/>
|
<input type="button" onclick="stage('AssetAccount:Bel', false)" value="Stage Bel's Charge"/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div id="lastNLinesStatus">
|
|
||||||
</div>
|
|
||||||
<div id="lastNLines">
|
|
||||||
</div>
|
|
||||||
</details>
|
</details>
|
||||||
<details>
|
<details>
|
||||||
<summary>Register</summary>
|
<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) {
|
func (router Router) API(w http.ResponseWriter, r *http.Request) {
|
||||||
switch r.URL.Path {
|
switch r.URL.Path {
|
||||||
case "/api/transactions":
|
case "/api/transactions":
|
||||||
bpis, err := router.bpis()
|
router.APITransactions(w, r)
|
||||||
if err != nil {
|
case "/api/amend":
|
||||||
panic(err)
|
router.APILastNLines(w, r)
|
||||||
}
|
case "/api/reg":
|
||||||
|
router.APIReg(w, r)
|
||||||
lastNLines, err := router.files.TempGetLastNLines(20)
|
default:
|
||||||
if err != nil {
|
http.NotFound(w, r)
|
||||||
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 {
|
|
||||||
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()
|
deltas, err := router.files.Deltas()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
panic(err)
|
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) {
|
func (r Router) bpis() (ledger.BPIs, error) {
|
||||||
if r.bpiPath == "" {
|
if r.bpiPath == "" {
|
||||||
return make(ledger.BPIs), nil
|
return make(ledger.BPIs), nil
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue