dkforest

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

commit 374715e98740076e21b6e71a7e968fd07512e94f
parent fa6c0dc5f0d492d9bf3dbd2d342222b75ac5457b
Author: n0tr1v <n0tr1v@protonmail.com>
Date:   Sun, 17 Dec 2023 23:17:07 -0500

helper

Diffstat:
Mpkg/web/handlers/data.go | 6++++++
Mpkg/web/handlers/handlers.go | 30++++++++++++++++++++++++++++++
Mpkg/web/public/views/pages/poker.gohtml | 20++++++++++++++++++++
3 files changed, 56 insertions(+), 0 deletions(-)

diff --git a/pkg/web/handlers/data.go b/pkg/web/handlers/data.go @@ -965,6 +965,12 @@ type pokerData struct { WithdrawAddress string WithdrawUnique int64 Error string + HelperAmount string + HelperType string + HelperXmr string + HelperpXmr database.Piconero + HelperChips database.PokerChip + HelperUsd string } type powHelperData struct { diff --git a/pkg/web/handlers/handlers.go b/pkg/web/handlers/handlers.go @@ -783,6 +783,11 @@ func PokerHomeHandler(c echo.Context) error { withdrawUniqueOrig, _ := pokerWithdrawCache.Get(authUser.ID) pokerWithdrawCache.SetD(authUser.ID, withdrawUnique) pokerTables, _ := db.GetPokerTables() + pxmr := database.Piconero(0) + data.HelperXmr = pxmr.XmrStr() + data.HelperChips = pxmr.ToPokerChip() + data.HelperpXmr = pxmr + data.HelperUsd = pxmr.UsdStr() for _, t := range pokerTables { var nbSeated int if g := poker.PokerInstance.GetGame(poker.RoomID(t.Slug)); g != nil { @@ -801,6 +806,31 @@ func PokerHomeHandler(c echo.Context) error { } formName := c.Request().PostFormValue("form_name") + if formName == "helper" { + data.HelperAmount = c.Request().PostFormValue("amount") + data.HelperType = c.Request().PostFormValue("type") + switch data.HelperType { + case "usd": + amount := utils.DoParseF64(data.HelperAmount) + pxmr = database.Piconero(amount / database.MoneroPrice * 1_000_000_000_000) + case "xmr": + amount := utils.DoParseF64(data.HelperAmount) + pxmr = database.Piconero(amount * 1_000_000_000_000) + case "pxmr": + amount := utils.DoParseUint64(data.HelperAmount) + pxmr = database.Piconero(amount) + case "chips": + amount := utils.DoParseUint64(data.HelperAmount) + chips := database.PokerChip(amount) + pxmr = chips.ToPiconero() + } + data.HelperXmr = pxmr.XmrStr() + data.HelperChips = pxmr.ToPokerChip() + data.HelperpXmr = pxmr + data.HelperUsd = pxmr.UsdStr() + return c.Render(http.StatusOK, "poker", data) + } + if formName == "reset_chips" { authUser.ChipsTest = 1000 authUser.DoSave(db) diff --git a/pkg/web/public/views/pages/poker.gohtml b/pkg/web/public/views/pages/poker.gohtml @@ -51,6 +51,26 @@ </form> <div>To withdraw, use the "balance" (<small>{{ .Data.XmrBalance.RawString }} <small>pXMR</small></small>) which denomination is in <a href="https://www.getmonero.org/resources/moneropedia/denominations.html" rel="noopener noreferrer" target="_blank">piconero</a></div> <hr /> + <span>Helper to convert from and to XMR/pXMR/chips/USD...</span> + <form method="post" class="form-inline"> + <input type="hidden" name="csrf" value="{{ .CSRF }}" /> + <input type="hidden" name="form_name" value="helper" /> + <input type="text" name="amount" placeholder="Amount" class="form-control form-control-sm mr-2" style="width: 170px;" autocomplete="off" value="{{ .Data.HelperAmount }}" /> + <select class="form-control form-control-sm mr-2" name="type"> + <option value="xmr"{{ if eq .Data.HelperType "xmr" }} selected{{ end }}>XMR</option> + <option value="pxmr"{{ if eq .Data.HelperType "pxmr" }} selected{{ end }}>pXMR</option> + <option value="chips"{{ if eq .Data.HelperType "chips" }} selected{{ end }}>Poker chips</option> + <option value="usd"{{ if eq .Data.HelperType "usd" }} selected{{ end }}>USD</option> + </select> + <button class="btn btn-primary btn-sm">Convert</button> + </form> + <span> + {{ .Data.HelperXmr }} <small>XMR</small> | + {{ .Data.HelperpXmr }} <small>pXMR</small> | + {{ .Data.HelperChips }} <small>chips</small> | + {{ .Data.HelperUsd }} + </span> + <hr /> </div> <h3>Tables</h3> <table class="table table-novpadding table-sm table-hover table-striped">