MM-29988 - Update exising Post APIs with collapsed threads (#16503)

This commit is contained in:
Eli Yukelzon
2021-01-14 13:46:27 +02:00
committed by GitHub
parent 2e1b578ccd
commit b0bddeb5e6
28 changed files with 616 additions and 257 deletions

View File

@@ -234,8 +234,9 @@ func (s *SqlThreadStore) GetThreadsForUser(userId, teamId string, opts model.Get
}
var users []*model.User
if opts.Extended {
query, args, _ := s.getQueryBuilder().Select("*").From("Users").Where(sq.Eq{"Id": userIds}).ToSql()
if _, err := s.GetReplica().Select(&users, query, args...); err != nil {
var err error
users, err = s.User().GetProfileByIds(userIds, &store.UserGetByIdsOpts{}, true)
if err != nil {
return nil, errors.Wrapf(err, "failed to get threads for user id=%s", userId)
}
} else {
@@ -414,6 +415,18 @@ func (s *SqlThreadStore) CreateMembershipIfNeeded(userId, postId string, followi
LastUpdated: now,
UnreadMentions: int64(mentions),
})
if err != nil {
return err
}
thread, err := s.Get(postId)
if err != nil {
return err
}
if !thread.Participants.Contains(userId) {
thread.Participants = append(thread.Participants, userId)
_, err = s.Update(thread)
}
return err
}