dkforest

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

commit a73a9b1eb8518a3b49071350d138bd1408683843
parent 7d94fcabb112d83b182eaf40704072fe55897c81
Author: n0tr1v <n0tr1v@protonmail.com>
Date:   Sat, 30 Dec 2023 15:02:12 -0500

optim

Diffstat:
Mpkg/database/tableUsers.go | 15+++++++++++++++
Mpkg/web/handlers/api/v1/chatControlsHandler.go | 9+++------
2 files changed, 18 insertions(+), 6 deletions(-)

diff --git a/pkg/database/tableUsers.go b/pkg/database/tableUsers.go @@ -362,6 +362,21 @@ func (u *User) DoSave(db *DkfDB) { } } +func (u *User) ToggleDisplayHellbanned(db *DkfDB) { + u.DisplayHellbanned = !u.DisplayHellbanned + db.db.Exec(`UPDATE users SET display_hellbanned = ? WHERE id = ?`, u.DisplayHellbanned, u.ID) +} + +func (u *User) ToggleDisplayModerators(db *DkfDB) { + u.DisplayModerators = !u.DisplayModerators + db.db.Exec(`UPDATE users SET display_moderators = ? WHERE id = ?`, u.DisplayModerators, u.ID) +} + +func (u *User) ToggleDisplayIgnored(db *DkfDB) { + u.DisplayIgnored = !u.DisplayIgnored + db.db.Exec(`UPDATE users SET display_ignored = ? WHERE id = ?`, u.DisplayIgnored, u.ID) +} + func (u *User) HellBan(db *DkfDB) { u.setHellBan(db, true) } diff --git a/pkg/web/handlers/api/v1/chatControlsHandler.go b/pkg/web/handlers/api/v1/chatControlsHandler.go @@ -57,8 +57,7 @@ func handlePost(db *database.DkfDB, c echo.Context, data chatControlsData, authU func handleToggleHBPost(db *database.DkfDB, c echo.Context, authUser *database.User) error { if authUser.CanSeeHB() { - authUser.DisplayHellbanned = !authUser.DisplayHellbanned - authUser.DoSave(db) + authUser.ToggleDisplayHellbanned(db) database.MsgPubSub.Pub("refresh_"+string(authUser.Username), database.ChatMessageType{}) } return hutils.RedirectReferer(c) @@ -66,16 +65,14 @@ func handleToggleHBPost(db *database.DkfDB, c echo.Context, authUser *database.U func handleToggleMPost(db *database.DkfDB, c echo.Context, authUser *database.User) error { if authUser.IsModerator() { - authUser.DisplayModerators = !authUser.DisplayModerators - authUser.DoSave(db) + authUser.ToggleDisplayModerators(db) database.MsgPubSub.Pub("refresh_"+string(authUser.Username), database.ChatMessageType{}) } return hutils.RedirectReferer(c) } func handleToggleIgnoredPost(db *database.DkfDB, c echo.Context, authUser *database.User) error { - authUser.DisplayIgnored = !authUser.DisplayIgnored - authUser.DoSave(db) + authUser.ToggleDisplayIgnored(db) database.MsgPubSub.Pub("refresh_"+string(authUser.Username), database.ChatMessageType{}) return hutils.RedirectReferer(c) }