Compare commits

...

2 Commits

Author SHA1 Message Date
Chris Sexton c44ada3061 counter: fix decrement-by 2023-10-04 10:25:59 -04:00
Chris Sexton f18154be5b counter: maybe really fix it finally 2023-10-04 10:25:59 -04:00
1 changed files with 11 additions and 3 deletions

View File

@ -5,7 +5,7 @@ import (
"encoding/json"
"fmt"
"github.com/velour/catbase/bot/user"
"io/ioutil"
"io"
"net/http"
"net/url"
"strconv"
@ -45,6 +45,8 @@ func (p *CounterPlugin) mkIncrementByNAPI(direction int) func(w http.ResponseWri
delta, err := strconv.Atoi(chi.URLParam(r, "delta"))
if err != nil || delta == 0 {
delta = direction
} else {
delta = delta * direction
}
secret, pass, ok := r.BasicAuth()
@ -81,7 +83,7 @@ func (p *CounterPlugin) mkIncrementByNAPI(direction int) func(w http.ResponseWri
return
}
body, _ := ioutil.ReadAll(r.Body)
body, _ := io.ReadAll(r.Body)
postData := map[string]string{}
err = json.Unmarshal(body, &postData)
personalMsg := ""
@ -110,10 +112,16 @@ func (p *CounterPlugin) mkIncrementByNAPI(direction int) func(w http.ResponseWri
}
msg := fmt.Sprintf("%s changed their %s counter by %d for a total of %d via the amazing %s API. %s",
userName, itemName, delta, item.Count+delta*direction, p.cfg.Get("nick", "catbase"), personalMsg)
if !ok {
chs := p.cfg.GetArray("counter.channels", []string{})
for _, ch := range chs {
p.b.Send(p.b.DefaultConnector(), bot.Message, ch, msg)
req.Msg.Channel = ch
}
} else {
p.b.Send(p.b.DefaultConnector(), bot.Message, ch, msg)
req.Msg.Channel = ch
}
item.UpdateDelta(req, delta*direction)
j, _ := json.Marshal(struct{ Status bool }{true})
fmt.Fprint(w, string(j))