commit 5c44f5b18660b3ee9438cd6a6a36bbeba595cb68
parent 9148cffc32b2a830950fee4153753af3199e87aa
Author: n0tr1v <n0tr1v@protonmail.com>
Date: Fri, 9 Jun 2023 20:07:17 -0700
cleanup
Diffstat:
1 file changed, 22 insertions(+), 3 deletions(-)
diff --git a/pkg/web/handlers/interceptors/slashInterceptor.go b/pkg/web/handlers/interceptors/slashInterceptor.go
@@ -1308,11 +1308,23 @@ func handleDeleteMsgCmd(c *command.Command) (handled bool) {
return command.ErrRedirect
}
if c.Message == "/d" {
- msg, err := c.DB.GetUserLastChatMessageInRoom(c.AuthUser.ID, c.Room.ID)
+ msg1, err := c.DB.GetUserLastChatMessageInRoom(c.AuthUser.ID, c.Room.ID)
if err != nil {
c.Err = errors.New("unable to find last message")
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")
+ return true
+ }
c.Err = delMsgFn(msg)
return true
@@ -1335,9 +1347,15 @@ func handleDeleteMsgCmd(c *command.Command) (handled bool) {
return true
} else if len(msgs) == 1 {
- msg := msgs[0]
if !c.AuthUser.IsModerator() {
- if msg.User.Username != c.AuthUser.Username {
+ 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")
return true
}
@@ -1345,6 +1363,7 @@ func handleDeleteMsgCmd(c *command.Command) (handled bool) {
return true
}
// Moderator
+ msg := msgs[0]
_ = msg.Delete(c.DB)
c.Err = command.ErrRedirect
return true