dkforest

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

commit fc1ebea21abab66a0a951bb2b118af541f1bc4a2
parent a5338f1a63624c1c2f552d29466a758ad934f1f1
Author: n0tr1v <n0tr1v@protonmail.com>
Date:   Sun, 17 Dec 2023 03:10:02 -0500

admin

Diffstat:
Mpkg/database/tableUsers.go | 6++++++
Mpkg/web/handlers/admin.go | 4++++
Mpkg/web/handlers/data.go | 22++++++++++++----------
Mpkg/web/public/views/pages/admin/poker-transactions.gohtml | 1+
4 files changed, 23 insertions(+), 10 deletions(-)

diff --git a/pkg/database/tableUsers.go b/pkg/database/tableUsers.go @@ -688,3 +688,9 @@ 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 } + +func (db *DkfDB) GetUsersXmrBalance() (out Piconero, err error) { + var tmp struct{ SumXmrBalance Piconero } + err = db.db.Raw(`SELECT SUM(xmr_balance) as sum_xmr_balance FROM users`).Scan(&tmp).Error + return tmp.SumXmrBalance, err +} diff --git a/pkg/web/handlers/admin.go b/pkg/web/handlers/admin.go @@ -10,6 +10,7 @@ import ( "github.com/jinzhu/gorm" wallet1 "github.com/monero-ecosystem/go-monero-rpc-client/wallet" "io" + "math" "net/http" "regexp" "strings" @@ -488,6 +489,9 @@ func AdminPokerTransactionsHandler(c echo.Context) error { data.UnlockedBalance = database.Piconero(res.UnlockedBalance) data.SumIn, _ = db.GetPokerXmrTransactionsSumIn() data.SumOut, _ = db.GetPokerXmrTransactionsSumOut() + sumXmrBalance, _ := db.GetUsersXmrBalance() + data.Discrepancy = (int64(data.SumIn) - int64(data.SumOut)) - int64(sumXmrBalance+data.PokerCasino.Rake.ToPiconero()) + data.DiscrepancyPiconero = database.Piconero(uint64(math.Abs(float64(data.Discrepancy)))) if err := db.DB(). Table("poker_xmr_transactions"). diff --git a/pkg/web/handlers/data.go b/pkg/web/handlers/data.go @@ -899,16 +899,18 @@ type adminCreateGistData struct { } type adminPokerTransactionsData struct { - ActiveTab string - PokerCasino database.PokerCasino - Transactions []database.PokerXmrTransaction - TransactionsCount int64 - CurrentPage int64 - MaxPage int64 - Balance database.Piconero - UnlockedBalance database.Piconero - SumIn database.Piconero - SumOut database.Piconero + ActiveTab string + PokerCasino database.PokerCasino + Transactions []database.PokerXmrTransaction + TransactionsCount int64 + CurrentPage int64 + MaxPage int64 + Balance database.Piconero + UnlockedBalance database.Piconero + SumIn database.Piconero + SumOut database.Piconero + Discrepancy int64 + DiscrepancyPiconero database.Piconero } type adminSpamFiltersData struct { diff --git a/pkg/web/public/views/pages/admin/poker-transactions.gohtml b/pkg/web/public/views/pages/admin/poker-transactions.gohtml @@ -11,6 +11,7 @@ <tr><td>Wallet unlocked balance:</td><td><span style="font-family: monospace;">{{ .Data.UnlockedBalance.XmrStr }}</span> <small>XMR</small></td><td>~{{ .Data.UnlockedBalance.UsdStr }}</td></tr> <tr><td>Sum ins:</td> <td><span style="font-family: monospace;">{{ .Data.SumIn.XmrStr }}</span> <small>XMR</small></td> <td>~{{ .Data.SumIn.UsdStr }}</td></tr> <tr><td>Sum outs:</td> <td><span style="font-family: monospace;">{{ .Data.SumOut.XmrStr }}</span> <small>XMR</small></td> <td>~{{ .Data.SumOut.UsdStr }}</td></tr> + <tr><td>Discrepancy:</td> <td><span style="font-family: monospace;">{{ .Data.Discrepancy }}</span> {{ .Data.DiscrepancyPiconero.XmrStr }} <small>XMR</small></td> <td>{{ .Data.DiscrepancyPiconero.UsdStr }}</td></tr> </table> </div>