commit 9148cffc32b2a830950fee4153753af3199e87aa
parent 6c789cc8277ef5e8487481ea2a65cd9de120b7b4
Author: n0tr1v <n0tr1v@protonmail.com>
Date: Fri, 9 Jun 2023 19:41:09 -0700
simplify code
Diffstat:
1 file changed, 8 insertions(+), 19 deletions(-)
diff --git a/pkg/web/handlers/interceptors/slashInterceptor.go b/pkg/web/handlers/interceptors/slashInterceptor.go
@@ -1296,12 +1296,16 @@ func handleTutorialCmd(c *command.Command) (handled bool) {
}
func handleDeleteMsgCmd(c *command.Command) (handled bool) {
- delMsgFn := func(msg database.ChatMessage) {
+ delMsgFn := func(msg database.ChatMessage) error {
+ if msg.TooOldToDelete() {
+ return errors.New("message is too old to be deleted")
+ }
if msg.RoomID == config.GeneralRoomID && msg.ToUserID == nil {
msg.User.GeneralMessagesCount--
msg.User.DoSave(c.DB)
}
_ = msg.Delete(c.DB)
+ return command.ErrRedirect
}
if c.Message == "/d" {
msg, err := c.DB.GetUserLastChatMessageInRoom(c.AuthUser.ID, c.Room.ID)
@@ -1309,12 +1313,7 @@ func handleDeleteMsgCmd(c *command.Command) (handled bool) {
c.Err = errors.New("unable to find last message")
return true
}
- if msg.TooOldToDelete() {
- c.Err = errors.New("message is too old to be deleted")
- return true
- }
- delMsgFn(msg)
- c.Err = command.ErrRedirect
+ c.Err = delMsgFn(msg)
return true
} else if m := deleteMsgRgx.FindStringSubmatch(c.Message); len(m) == 3 {
@@ -1342,12 +1341,7 @@ func handleDeleteMsgCmd(c *command.Command) (handled bool) {
c.Err = errors.New("failed to find msg")
return true
}
- if msg.TooOldToDelete() {
- c.Err = errors.New("message is too old to be deleted")
- return true
- }
- delMsgFn(msg)
- c.Err = command.ErrRedirect
+ c.Err = delMsgFn(msg)
return true
}
// Moderator
@@ -1368,12 +1362,7 @@ func handleDeleteMsgCmd(c *command.Command) (handled bool) {
c.Err = errors.New("failed to find msg")
return true
}
- if msg.TooOldToDelete() {
- c.Err = errors.New("message is too old to be deleted")
- return true
- }
- delMsgFn(msg)
- c.Err = command.ErrRedirect
+ c.Err = delMsgFn(msg)
return true
}