dkforest

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

commit fa4fbaf803f12f50ae4597b4ca16f88263311b85
parent 25f4ddb7a12b80e6dba0608e2c8d0d40b7ef3b02
Author: n0tr1v <n0tr1v@protonmail.com>
Date:   Mon,  4 Dec 2023 15:24:59 -0500

garbage code

Diffstat:
Mpkg/web/handlers/handlers.go | 34++++++++++++++++++++++++++++++++--
1 file changed, 32 insertions(+), 2 deletions(-)

diff --git a/pkg/web/handlers/handlers.go b/pkg/web/handlers/handlers.go @@ -800,6 +800,7 @@ type PokerSeatTakenEvent struct { } type PokerSeatLeftEvent struct { + Player string } var PokerPubSub = pubsub.NewPubSub[any]() @@ -1148,7 +1149,36 @@ Loop: continue } - if _, ok := payload.(PokerSeatTakenEvent); ok { + if evt, ok := payload.(PokerSeatLeftEvent); ok { + var idx int + for i, p := range g.Players { + if p == evt.Player { + g.Players[i] = "" + idx = i + break + } + } + + isSeated := false + for _, p := range g.Players { + if p == authUser.Username.String() { + isSeated = true + break + } + } + if !isSeated { + send(`<style>.takeSeat` + strconv.Itoa(idx+1) + ` { display: block; }</style>`) + } + for i, p := range g.Players { + if p != "" { + send(`<style>.takeSeat` + strconv.Itoa(i+1) + ` { display: none; }</style>`) + send(`<style>#seat` + strconv.Itoa(i+1) + `:before { content: "` + p + `"; }</style>`) + } else { + send(`<style>#seat` + strconv.Itoa(i+1) + `:before { content: ""; }</style>`) + } + } + + } else if _, ok := payload.(PokerSeatTakenEvent); ok { isSeated := false for _, p := range g.Players { @@ -1197,6 +1227,6 @@ Loop: c.Response().Flush() } } - //PokerPubSub.Pub(myTopic, PokerEvent{}) + PokerPubSub.Pub(myTopic, PokerSeatLeftEvent{Player: authUser.Username.String()}) return nil }