dkforest

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

commit 0ad4ddc85f60c5f74f50eba778e268a5688cf221
parent 5c44f5b18660b3ee9438cd6a6a36bbeba595cb68
Author: n0tr1v <n0tr1v@protonmail.com>
Date:   Fri,  9 Jun 2023 20:09:58 -0700

cleanup

Diffstat:
Mpkg/web/handlers/interceptors/slashInterceptor.go | 42+++++++++++++++++-------------------------
1 file changed, 17 insertions(+), 25 deletions(-)

diff --git a/pkg/web/handlers/interceptors/slashInterceptor.go b/pkg/web/handlers/interceptors/slashInterceptor.go @@ -1307,6 +1307,16 @@ func handleDeleteMsgCmd(c *command.Command) (handled bool) { _ = msg.Delete(c.DB) return command.ErrRedirect } + getMsgForUsername := func(msgs []database.ChatMessage, username database.Username) (database.ChatMessage, error) { + var msg database.ChatMessage + for _, msgTmp := range msgs { + if msgTmp.User.Username == c.AuthUser.Username { + msg = msgTmp + return msg, nil + } + } + return msg, errors.New("failed to find msg") + } if c.Message == "/d" { msg1, err := c.DB.GetUserLastChatMessageInRoom(c.AuthUser.ID, c.Room.ID) if err != nil { @@ -1314,15 +1324,9 @@ func handleDeleteMsgCmd(c *command.Command) (handled bool) { return true } msgs := []database.ChatMessage{msg1} - var msg database.ChatMessage - for _, msgTmp := range msgs { - if msgTmp.User.Username == c.AuthUser.Username { - msg = msgTmp - break - } - } - if msg.UUID == "" { - c.Err = errors.New("failed to find msg") + msg, err := getMsgForUsername(msgs, c.AuthUser.Username) + if err != nil { + c.Err = err return true } c.Err = delMsgFn(msg) @@ -1348,14 +1352,8 @@ func handleDeleteMsgCmd(c *command.Command) (handled bool) { } else if len(msgs) == 1 { if !c.AuthUser.IsModerator() { - var msg database.ChatMessage - for _, msgTmp := range msgs { - if msgTmp.User.Username == c.AuthUser.Username { - msg = msgTmp - break - } - } - if msg.UUID == "" { + msg, err := getMsgForUsername(msgs, c.AuthUser.Username) + if err != nil { c.Err = errors.New("failed to find msg") return true } @@ -1370,14 +1368,8 @@ func handleDeleteMsgCmd(c *command.Command) (handled bool) { } else if len(msgs) > 1 { if !c.AuthUser.IsModerator() { - var msg database.ChatMessage - for _, msgTmp := range msgs { - if msgTmp.User.Username == c.AuthUser.Username { - msg = msgTmp - break - } - } - if msg.UUID == "" { + msg, err := getMsgForUsername(msgs, c.AuthUser.Username) + if err != nil { c.Err = errors.New("failed to find msg") return true }