Browse Source

Merge pull request #743 from sschiz/deleted-message

add getting deleted message
bwmarrin 5 years ago
parent
commit
53f194f13f
2 changed files with 8 additions and 0 deletions
  1. 1 0
      events.go
  2. 7 0
      state.go

+ 1 - 0
events.go

@@ -169,6 +169,7 @@ type MessageUpdate struct {
 // MessageDelete is the data for a MessageDelete event.
 type MessageDelete struct {
 	*Message
+	BeforeDelete *Message `json:"-"`
 }
 
 // MessageReactionAdd is the data for a MessageReactionAdd event.

+ 7 - 0
state.go

@@ -893,6 +893,13 @@ func (s *State) OnInterface(se *Session, i interface{}) (err error) {
 		}
 	case *MessageDelete:
 		if s.MaxMessageCount != 0 {
+			var old *Message
+			old, err = s.Message(t.ChannelID, t.ID)
+			if err == nil {
+				oldCopy := *old
+				t.BeforeDelete = &oldCopy
+			}
+
 			err = s.MessageRemove(t.Message)
 		}
 	case *MessageDeleteBulk: