Send logged messages when joining a channel

This commit is contained in:
Ken-Håvard Lieng 2017-05-20 23:22:56 +02:00
parent a4e9eeefed
commit 62a69dfd44
3 changed files with 39 additions and 29 deletions

View file

@ -127,6 +127,41 @@ func (s *Session) sendError(err error, server string) {
})
}
func (s *Session) sendLastMessages(server, channel string, count int) {
messages, hasMore, err := s.user.GetLastMessages(server, channel, count)
if err == nil && len(messages) > 0 {
res := Messages{
Server: server,
To: channel,
Messages: messages,
}
if hasMore {
res.Next = messages[0].ID
}
s.sendJSON("messages", res)
}
}
func (s *Session) sendMessages(server, channel string, count int, fromID string) {
messages, hasMore, err := s.user.GetMessages(server, channel, count, fromID)
if err == nil && len(messages) > 0 {
res := Messages{
Server: server,
To: channel,
Messages: messages,
Prepend: true,
}
if hasMore {
res.Next = messages[0].ID
}
s.sendJSON("messages", res)
}
}
func (s *Session) print(server string, a ...interface{}) {
s.sendJSON("print", Message{
Server: server,