dkforest

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

commit 60dca108abb94e239389c8574975ca5f84b9e4fa
parent 79e225c8048e767f5214e7bf154a20d95a771d78
Author: n0tr1v <n0tr1v@protonmail.com>
Date:   Fri,  2 Dec 2022 18:04:10 -0500

utils functions

Diffstat:
Mpkg/database/utils/utils.go | 14++++++++++++++
Mpkg/web/handlers/admin.go | 5+++--
Mpkg/web/handlers/api/v1/handlers.go | 5+++--
Mpkg/web/handlers/handlers.go | 7++++---
4 files changed, 24 insertions(+), 7 deletions(-)

diff --git a/pkg/database/utils/utils.go b/pkg/database/utils/utils.go @@ -3,6 +3,7 @@ package utils import ( "dkforest/pkg/config" "dkforest/pkg/database" + "dkforest/pkg/utils" "github.com/sirupsen/logrus" ) @@ -37,3 +38,16 @@ func SendNewChessGameMessages(key, roomKey string, roomID int64, zeroUser, playe _, _ = database.CreateMsg(raw, msg, roomKey, roomID, zeroUser.ID, &user.ID) } } + +func ParseUserID(v string) (database.UserID, error) { + p, err := utils.ParseInt64(v) + if err != nil { + return 0, err + } + return database.UserID(p), nil +} + +func DoParseUserID(v string) (out database.UserID) { + out, _ = ParseUserID(v) + return +} diff --git a/pkg/web/handlers/admin.go b/pkg/web/handlers/admin.go @@ -1,6 +1,7 @@ package handlers import ( + dutils "dkforest/pkg/database/utils" "math" "net/http" "os" @@ -534,13 +535,13 @@ func AdminDeleteRoomHandler(c echo.Context) error { func AdminUserSecurityLogsHandler(c echo.Context) error { //authUser := c.Get("authUser").(*database.User) - userID, err := strconv.ParseInt(c.Param("userID"), 10, 64) + userID, err := dutils.ParseUserID(c.Param("userID")) if err != nil { return c.Redirect(http.StatusFound, "/admin/users") } var data settingsSecurityData data.ActiveTab = "security" - data.Logs, _ = database.GetSecurityLogs(database.UserID(userID)) + data.Logs, _ = database.GetSecurityLogs(userID) return c.Render(http.StatusOK, "admin.user-security-logs", data) } diff --git a/pkg/web/handlers/api/v1/handlers.go b/pkg/web/handlers/api/v1/handlers.go @@ -2,6 +2,7 @@ package v1 import ( "dkforest/pkg/config" + dutils "dkforest/pkg/database/utils" "dkforest/pkg/global" "dkforest/pkg/hashset" "errors" @@ -167,7 +168,7 @@ func ChatMessagesHandler(c echo.Context) error { func UserHellbanHandler(c echo.Context) error { authUser := c.Get("authUser").(*database.User) if authUser.IsModerator() { - userID := database.UserID(utils.DoParseInt64(c.Param("userID"))) + userID := dutils.DoParseUserID(c.Param("userID")) user, err := database.GetUserByID(userID) if err != nil { return c.Redirect(http.StatusFound, c.Request().Referer()) @@ -188,7 +189,7 @@ func UserHellbanHandler(c echo.Context) error { func KickHandler(c echo.Context) error { authUser := c.Get("authUser").(*database.User) if authUser.IsModerator() { - userID := database.UserID(utils.DoParseInt64(c.Param("userID"))) + userID := dutils.DoParseUserID(c.Param("userID")) user, err := database.GetUserByID(userID) if err != nil { return c.Redirect(http.StatusFound, c.Request().Referer()) diff --git a/pkg/web/handlers/handlers.go b/pkg/web/handlers/handlers.go @@ -2,6 +2,7 @@ package handlers import ( "bytes" + dutils "dkforest/pkg/database/utils" pubsub2 "dkforest/pkg/pubsub" v1 "dkforest/pkg/web/handlers/api/v1" "encoding/base64" @@ -2493,7 +2494,7 @@ func SettingsChatPMHandler(c echo.Context) error { return c.Redirect(http.StatusFound, c.Request().Referer()) } else if formName == "rmWhitelist" { - userID := database.UserID(utils.DoParseInt64(c.Request().PostFormValue("userID"))) + userID := dutils.DoParseUserID(c.Request().PostFormValue("userID")) database.RmWhitelistedUser(authUser.ID, userID) return c.Redirect(http.StatusFound, c.Request().Referer()) @@ -2508,7 +2509,7 @@ func SettingsChatPMHandler(c echo.Context) error { return c.Redirect(http.StatusFound, c.Request().Referer()) } else if formName == "rmBlacklist" { - userID := database.UserID(utils.DoParseInt64(c.Request().PostFormValue("userID"))) + userID := dutils.DoParseUserID(c.Request().PostFormValue("userID")) database.RmBlacklistedUser(authUser.ID, userID) return c.Redirect(http.StatusFound, c.Request().Referer()) } @@ -2545,7 +2546,7 @@ func SettingsChatIgnoreHandler(c echo.Context) error { return c.Redirect(http.StatusFound, c.Request().Referer()) } else if formName == "rmIgnored" { - userID := database.UserID(utils.DoParseInt64(c.Request().PostFormValue("userID"))) + userID := dutils.DoParseUserID(c.Request().PostFormValue("userID")) database.UnIgnoreUser(authUser.ID, userID) return c.Redirect(http.StatusFound, c.Request().Referer()) }