server: implements /markConversation
This commit is contained in:
@@ -151,21 +151,27 @@ func (s *Server) AppendMessageToConversation(conversation *model.Conversation, m
|
||||
|
||||
func (s *Server) SendMessage(conversation *model.Conversation, message model.Message) {
|
||||
s.AppendMessageToConversation(conversation, message)
|
||||
conversation.LastMessagePreview = message.Text
|
||||
conversation.Date = message.Date
|
||||
|
||||
// Update Conversation
|
||||
ourConversation, _ := s.ConversationForGUID(conversation.Guid)
|
||||
ourConversation.LastMessagePreview = message.Text
|
||||
ourConversation.Date = message.Date
|
||||
|
||||
log.Info().EmbedObject(message).Msgf("Sent message to conversation %s", conversation.Guid)
|
||||
}
|
||||
|
||||
func (s *Server) ReceiveMessage(conversation *model.Conversation, message model.Message) {
|
||||
s.AppendMessageToConversation(conversation, message)
|
||||
conversation.LastMessagePreview = message.Text
|
||||
conversation.Date = message.Date
|
||||
conversation.UnreadCount += 1
|
||||
|
||||
// Update conversation
|
||||
ourConversation, _ := s.ConversationForGUID(conversation.Guid)
|
||||
ourConversation.LastMessagePreview = message.Text
|
||||
ourConversation.Date = message.Date
|
||||
ourConversation.UnreadCount += 1
|
||||
|
||||
// Enqueue Update
|
||||
s.EnqueueUpdateItem(model.UpdateItem{
|
||||
Conversation: conversation,
|
||||
Conversation: ourConversation,
|
||||
Message: &message,
|
||||
})
|
||||
|
||||
@@ -209,6 +215,15 @@ func (s *Server) FetchUpdatesBlocking(since int) []model.UpdateItem {
|
||||
}
|
||||
}
|
||||
|
||||
func (s *Server) MarkConversationAsRead(conversation *model.Conversation) {
|
||||
conversation.UnreadCount = 0
|
||||
|
||||
// enqueue update
|
||||
s.EnqueueUpdateItem(model.UpdateItem{
|
||||
Conversation: conversation,
|
||||
})
|
||||
}
|
||||
|
||||
// Private
|
||||
|
||||
func (s *Server) registerAuthToken(token *model.AuthToken) {
|
||||
|
||||
Reference in New Issue
Block a user