diff --git a/db/db.go b/db/db.go index 2b6d7cf..f8c16bf 100644 --- a/db/db.go +++ b/db/db.go @@ -867,7 +867,7 @@ func Wipe_card(card_name string) (*Card_wipe_info, error) { return &card_wipe_info, nil } -func Update_card(card_name string, tx_limit_sats int, lnurlw_enable bool) error { +func Update_card(card_name string, tx_limit_sats int, day_limit_sats int, lnurlw_enable bool) error { lnurlw_enable_yn := "N" if lnurlw_enable { @@ -882,10 +882,10 @@ func Update_card(card_name string, tx_limit_sats int, lnurlw_enable bool) error defer db.Close() - sqlStatement := `UPDATE cards SET tx_limit_sats = $2, lnurlw_enable = $3 ` + + sqlStatement := `UPDATE cards SET tx_limit_sats = $2, lnurlw_enable = $3, day_limit_sats = $4 ` + `WHERE card_name = $1;` - res, err := db.Exec(sqlStatement, card_name, tx_limit_sats, lnurlw_enable_yn) + res, err := db.Exec(sqlStatement, card_name, tx_limit_sats, lnurlw_enable_yn, day_limit_sats) if err != nil { return err diff --git a/internalapi/updateboltcard.go b/internalapi/updateboltcard.go index b754456..39d83c2 100644 --- a/internalapi/updateboltcard.go +++ b/internalapi/updateboltcard.go @@ -1,11 +1,12 @@ package internalapi import ( + "net/http" + "strconv" + "github.com/boltcard/boltcard/db" "github.com/boltcard/boltcard/resp_err" log "github.com/sirupsen/logrus" - "net/http" - "strconv" ) func Updateboltcard(w http.ResponseWriter, r *http.Request) { @@ -25,6 +26,15 @@ func Updateboltcard(w http.ResponseWriter, r *http.Request) { return } + day_max_str := r.URL.Query().Get("day_max") + day_max, err := strconv.Atoi(day_max_str) + if err != nil { + msg := "updateboltcard: day_max is not a valid integer" + log.Warn(msg) + resp_err.Write_message(w, msg) + return + } + enable_flag_str := r.URL.Query().Get("enable") enable_flag, err := strconv.ParseBool(enable_flag_str) if err != nil { @@ -54,12 +64,12 @@ func Updateboltcard(w http.ResponseWriter, r *http.Request) { // log the request log.WithFields(log.Fields{ - "card_name": card_name, "tx_max": tx_max, + "card_name": card_name, "tx_max": tx_max, "day_max": day_max, "enable": enable_flag}).Info("updateboltcard API request") // update the card record - err = db.Update_card(card_name, tx_max, enable_flag) + err = db.Update_card(card_name, tx_max, day_max, enable_flag) if err != nil { log.Warn(err.Error()) return