Load ticket page with no msgs

This commit is contained in:
rxdn 2021-03-20 19:12:24 +00:00
parent 52934a0f63
commit c83858bebf

View File

@ -62,40 +62,34 @@ func GetTicket(ctx *gin.Context) {
return return
} }
if ticket.ChannelId == nil {
ctx.AbortWithStatusJSON(404, gin.H{
"success": false,
"error": "Ticket channel does not exist",
})
return
}
// Get messages
messages, _ := rest.GetChannelMessages(botContext.Token, botContext.RateLimiter, *ticket.ChannelId, rest.GetChannelMessagesData{Limit: 100})
// Format messages, exclude unneeded data
messagesFormatted := make([]map[string]interface{}, 0) messagesFormatted := make([]map[string]interface{}, 0)
for _, message := range utils.Reverse(messages) { if ticket.ChannelId != nil {
content := message.Content // Get messages
messages, _ := rest.GetChannelMessages(botContext.Token, botContext.RateLimiter, *ticket.ChannelId, rest.GetChannelMessagesData{Limit: 100})
// Format mentions properly // Format messages, exclude unneeded data
match := MentionRegex.FindAllStringSubmatch(content, -1) for _, message := range utils.Reverse(messages) {
for _, mention := range match { content := message.Content
if len(mention) >= 2 {
mentionedId, err := strconv.ParseUint(mention[1], 10, 64) // Format mentions properly
if err != nil { match := MentionRegex.FindAllStringSubmatch(content, -1)
continue for _, mention := range match {
if len(mention) >= 2 {
mentionedId, err := strconv.ParseUint(mention[1], 10, 64)
if err != nil {
continue
}
user, _ := cache.Instance.GetUser(mentionedId)
content = strings.ReplaceAll(content, fmt.Sprintf("<@%d>", mentionedId), fmt.Sprintf("@%s", user.Username))
} }
user, _ := cache.Instance.GetUser(mentionedId)
content = strings.ReplaceAll(content, fmt.Sprintf("<@%d>", mentionedId), fmt.Sprintf("@%s", user.Username))
} }
}
messagesFormatted = append(messagesFormatted, map[string]interface{}{ messagesFormatted = append(messagesFormatted, map[string]interface{}{
"username": message.Author.Username, "username": message.Author.Username,
"content": content, "content": content,
}) })
}
} }
ctx.JSON(200, gin.H{ ctx.JSON(200, gin.H{