dkforest

A forum and chat platform (onion)
git clone https://git.dasho.dev/n0tr1v/dkforest.git
Log | Files | Refs | LICENSE

commit df3f89471872bb851251db274c21ac154c5e8364
parent 996f684e5518461035cfdf5844c059b63ee67627
Author: n0tr1v <n0tr1v@protonmail.com>
Date:   Fri, 15 Dec 2023 00:15:27 -0500

live xmr

Diffstat:
Mpkg/actions/actions.go | 2+-
Mpkg/database/tableUsers.go | 17++++++++---------
Mpkg/web/handlers/data.go | 2+-
Mpkg/web/handlers/handlers.go | 12++++++------
Mpkg/web/handlers/poker/poker.go | 8++++----
Mpkg/web/public/views/pages/poker.gohtml | 9++++-----
6 files changed, 24 insertions(+), 26 deletions(-)

diff --git a/pkg/actions/actions.go b/pkg/actions/actions.go @@ -248,7 +248,7 @@ func xmrWatch(db *database.DkfDB) { dutils.RootAdminNotify(db, fmt.Sprintf("new deposit %s xmr by %s", pokerTransfer.Amount.XmrStr(), user.Username)) tx := db.Begin() - if err := user.IncrXmrBalanceStagenet(tx, pokerTransfer.Amount); err != nil { + if err := user.IncrXmrBalance(tx, pokerTransfer.Amount); err != nil { logrus.Error(err) } pokerTransfer.Processed = true diff --git a/pkg/database/tableUsers.go b/pkg/database/tableUsers.go @@ -122,7 +122,6 @@ type User struct { Theme int64 GeneralMessagesCount int64 ChipsTest PokerChip - XmrBalanceStagenet Piconero XmrBalance Piconero AFK bool UseStream bool @@ -674,18 +673,18 @@ func (u *User) GetImage() (image.Image, error) { return b, nil } -func (u *User) GetXmrBalanceStagenet(db *DkfDB) (amount Piconero, err error) { - var tmp struct{ XmrBalanceStagenet Piconero } - err = db.db.Table("users").Select("xmr_balance_stagenet").First(&tmp, "id = ?", u.ID).Error - return tmp.XmrBalanceStagenet, err +func (u *User) GetXmrBalance(db *DkfDB) (amount Piconero, err error) { + var tmp struct{ XmrBalance Piconero } + err = db.db.Table("users").Select("xmr_balance").First(&tmp, "id = ?", u.ID).Error + return tmp.XmrBalance, err } -func (u *User) IncrXmrBalanceStagenet(db *DkfDB, amount Piconero) (err error) { - err = db.db.Exec(`UPDATE users SET xmr_balance_stagenet = xmr_balance_stagenet + ? WHERE id = ?`, amount, u.ID).Error +func (u *User) IncrXmrBalance(db *DkfDB, amount Piconero) (err error) { + err = db.db.Exec(`UPDATE users SET xmr_balance = xmr_balance + ? WHERE id = ?`, amount, u.ID).Error return } -func (u *User) SubXmrBalanceStagenet(db *DkfDB, amount Piconero) (err error) { - err = db.db.Exec(`UPDATE users SET xmr_balance_stagenet = xmr_balance_stagenet - ? WHERE id = ?`, amount, u.ID).Error +func (u *User) SubXmrBalance(db *DkfDB, amount Piconero) (err error) { + err = db.db.Exec(`UPDATE users SET xmr_balance = xmr_balance - ? WHERE id = ?`, amount, u.ID).Error return } diff --git a/pkg/web/handlers/data.go b/pkg/web/handlers/data.go @@ -944,7 +944,7 @@ type TmpTable struct { } type pokerData struct { - XmrBalanceStagenet database.Piconero + XmrBalance database.Piconero PokerXmrSubAddress string Img string ChipsTest database.PokerChip diff --git a/pkg/web/handlers/handlers.go b/pkg/web/handlers/handlers.go @@ -776,7 +776,7 @@ func PokerHomeHandler(c echo.Context) error { data.Transactions, _ = db.GetUserPokerXmrTransactions(authUser.ID) data.PokerXmrSubAddress = authUser.PokerXmrSubAddress data.ChipsTest = authUser.ChipsTest - data.XmrBalanceStagenet = authUser.XmrBalanceStagenet + data.XmrBalance = authUser.XmrBalance withdrawUnique := rand.Int63() data.WithdrawUnique = withdrawUnique withdrawUniqueOrig, _ := pokerWithdrawCache.Get(authUser.ID) @@ -832,7 +832,7 @@ func PokerHomeHandler(c echo.Context) error { data.Error = fmt.Sprintf("minimum withdraw amount is %d", minWithdrawAmount) return c.Render(http.StatusOK, "poker", data) } - userChips := authUser.XmrBalanceStagenet + userChips := authUser.XmrBalance if withdrawAmount > userChips { data.Error = fmt.Sprintf("maximum withdraw amount is %d (%d)", userChips, withdrawAmount) return c.Render(http.StatusOK, "poker", data) @@ -853,7 +853,7 @@ func PokerHomeHandler(c echo.Context) error { transactionFee := database.Piconero(res.Fee) - if withdrawAmount+transactionFee > authUser.XmrBalanceStagenet { + if withdrawAmount+transactionFee > authUser.XmrBalance { data.Error = fmt.Sprintf("not enough funds to pay for transaction fee %d (%s xmr)", transactionFee, transactionFee.XmrStr()) return c.Render(http.StatusOK, "poker", data) } @@ -861,18 +861,18 @@ func PokerHomeHandler(c echo.Context) error { dutils.RootAdminNotify(db, fmt.Sprintf("new withdraw %s xmr by %s", withdrawAmount.XmrStr(), authUser.Username)) tx := db.Begin() - if err := authUser.SubXmrBalanceStagenet(db, withdrawAmount+transactionFee); err != nil { + if err := authUser.SubXmrBalance(db, withdrawAmount+transactionFee); err != nil { data.Error = err.Error() tx.Rollback() return c.Render(http.StatusOK, "poker", data) } - xmrBalanceStagenet, err := authUser.GetXmrBalanceStagenet(tx) + xmrBalance, err := authUser.GetXmrBalance(tx) if err != nil { data.Error = err.Error() tx.Rollback() return c.Render(http.StatusOK, "poker", data) } - if xmrBalanceStagenet < 0 { + if xmrBalance < 0 { data.Error = "negative balance" tx.Rollback() return c.Render(http.StatusOK, "poker", data) diff --git a/pkg/web/handlers/poker/poker.go b/pkg/web/handlers/poker/poker.go @@ -379,7 +379,7 @@ func (g *PokerGame) UnSitPlayer1(db *database.DkfDB, roomID string, player *Poke if g.PokerTableIsTest { user.ChipsTest += account.Amount } else { - user.XmrBalanceStagenet += account.Amount.ToPiconero() + user.XmrBalance += account.Amount.ToPiconero() } account.Amount = 0 account.DoSave(tx) @@ -1243,7 +1243,7 @@ func Refund(db *database.DkfDB) { if account.PokerTable.IsTest { user.ChipsTest += account.Amount + account.AmountBet } else { - user.XmrBalanceStagenet += account.Amount.ToPiconero() + account.AmountBet.ToPiconero() + user.XmrBalance += account.Amount.ToPiconero() + account.AmountBet.ToPiconero() } account.Amount = 0 account.AmountBet = 0 @@ -1324,7 +1324,7 @@ func PokerSitHandler(c echo.Context) error { if pokerTable.IsTest { userChips = authUser.ChipsTest } else { - userChips = authUser.XmrBalanceStagenet.ToPokerChip() + userChips = authUser.XmrBalance.ToPokerChip() } totalChips := userChips + tableAccount.Amount if totalChips < tableMinBuyIn { @@ -1335,7 +1335,7 @@ func PokerSitHandler(c echo.Context) error { if pokerTable.IsTest { authUser.ChipsTest -= needed } else { - authUser.XmrBalanceStagenet -= needed.ToPiconero() + authUser.XmrBalance -= needed.ToPiconero() } tableAccount.Amount += needed if err := g.SitPlayer(authUser, pos, tableAccount.Amount); err != nil { diff --git a/pkg/web/public/views/pages/poker.gohtml b/pkg/web/public/views/pages/poker.gohtml @@ -2,9 +2,8 @@ {{ define "content" }} <div class="container"> - <div class="alert alert-warning mt-2 mb-2">WARNING: this is <a href="https://monerodocs.org/infrastructure/networks/#stagenet" target="_blank" rel="noopener noreferrer">stagenet</a>, do not send real XMR to that address</div> <div class="mb-3"> - Deposit xmr address <strong>(stagenet)</strong>: + Deposit xmr address: {{ if .Data.PokerXmrSubAddress }}<pre style="user-select: all; -webkit-user-select: all;">{{ .Data.PokerXmrSubAddress }}</pre>{{ else }}none{{ end }} </div> <div class="mb-3"> @@ -19,8 +18,8 @@ <div class="clearfix"></div> </div> <div class="mb-3"> - Balance (stagenet): {{ .Data.XmrBalanceStagenet }}<br /> - <small>({{ .Data.XmrBalanceStagenet | fmtPiconero }} XMR)</small><br /> + Balance: {{ .Data.XmrBalance }}<br /> + <small>({{ .Data.XmrBalance | fmtPiconero }} XMR)</small><br /> <br /> Free tables balance: {{ .Data.ChipsTest }} <form method="post" class="d-inline ml-3"> @@ -38,7 +37,7 @@ <input type="hidden" name="csrf" value="{{ .CSRF }}" /> <input type="hidden" name="withdraw_unique" value="{{ .Data.WithdrawUnique }}" /> <input type="text" name="withdraw_address" value="{{ .Data.WithdrawAddress }}" placeholder="address" class="form-control mr-2" style="width: 400px;" /> - <input type="number" name="withdraw_amount" value="{{ .Data.WithdrawAmount }}" min="{{ .Data.MinWithdrawAmount }}" max="{{ .Data.XmrBalanceStagenet }}" placeholder="amount" class="form-control mr-2" style="width: 150px;" /> + <input type="number" name="withdraw_amount" value="{{ .Data.WithdrawAmount }}" min="{{ .Data.MinWithdrawAmount }}" max="{{ .Data.XmrBalance }}" placeholder="amount" class="form-control mr-2" style="width: 150px;" /> <button class="btn btn-primary">Withdraw</button> </form> <hr />