* return first inaccessible post time instead of has inaccessible posts
Этот коммит содержится в:
Nathaniel Allred
2022-07-25 16:01:59 -05:00
коммит произвёл GitHub
родитель 478ff50ffd
Коммит 77881fc357
9 изменённых файлов: 147 добавлений и 80 удалений

Просмотреть файл

@@ -870,11 +870,11 @@ func (a *App) GetSinglePost(postID string, includeDeleted bool) (*model.Post, *m
}
}
isInaccessible, appErr := a.isInaccessiblePost(post)
firstInaccessiblePostTime, appErr := a.isInaccessiblePost(post)
if appErr != nil {
return nil, appErr
}
if isInaccessible {
if firstInaccessiblePostTime != 0 {
return nil, model.NewAppError("GetSinglePost", "app.post.cloud.get.app_error", nil, "", http.StatusForbidden)
}
@@ -1881,24 +1881,24 @@ func (a *App) GetPostIfAuthorized(c request.CTX, postID string, session *model.S
}
// GetPostsByIds response bool value indicates, if the post is inaccessible due to cloud plan's limit.
func (a *App) GetPostsByIds(postIDs []string) ([]*model.Post, bool, *model.AppError) {
func (a *App) GetPostsByIds(postIDs []string) ([]*model.Post, int64, *model.AppError) {
posts, err := a.Srv().Store.Post().GetPostsByIds(postIDs)
if err != nil {
var nfErr *store.ErrNotFound
switch {
case errors.As(err, &nfErr):
return nil, false, model.NewAppError("GetPostsByIds", "app.post.get.app_error", nil, nfErr.Error(), http.StatusNotFound)
return nil, 0, model.NewAppError("GetPostsByIds", "app.post.get.app_error", nil, nfErr.Error(), http.StatusNotFound)
default:
return nil, false, model.NewAppError("GetPostsByIds", "app.post.get.app_error", nil, err.Error(), http.StatusInternalServerError)
return nil, 0, model.NewAppError("GetPostsByIds", "app.post.get.app_error", nil, err.Error(), http.StatusInternalServerError)
}
}
posts, hasInaccessiblePosts, appErr := a.getFilteredAccessiblePosts(posts, filterPostOptions{assumeSortedCreatedAt: true})
posts, firstInaccessiblePostTime, appErr := a.getFilteredAccessiblePosts(posts, filterPostOptions{assumeSortedCreatedAt: true})
if appErr != nil {
return nil, false, appErr
return nil, 0, appErr
}
return posts, hasInaccessiblePosts, nil
return posts, firstInaccessiblePostTime, nil
}
func (a *App) GetTopThreadsForTeamSince(c request.CTX, teamID, userID string, opts *model.InsightsOpts) (*model.TopThreadList, *model.AppError) {