diff options
| author | syuilo <syuilotan@yahoo.co.jp> | 2020-03-23 19:48:33 +0900 |
|---|---|---|
| committer | syuilo <syuilotan@yahoo.co.jp> | 2020-03-23 19:48:33 +0900 |
| commit | 639e0137cc5b3754e647574d80a3293570d9d7ff (patch) | |
| tree | d499d132f11f320fdce53ffd01961589cb46a19d /src/server/api | |
| parent | Merge branch 'develop' (diff) | |
| parent | 12.25.0 (diff) | |
| download | sharkey-639e0137cc5b3754e647574d80a3293570d9d7ff.tar.gz sharkey-639e0137cc5b3754e647574d80a3293570d9d7ff.tar.bz2 sharkey-639e0137cc5b3754e647574d80a3293570d9d7ff.zip | |
Merge branch 'develop'
Diffstat (limited to 'src/server/api')
| -rw-r--r-- | src/server/api/endpoints/notes/state.ts | 8 | ||||
| -rw-r--r-- | src/server/api/endpoints/notes/timeline.ts | 11 |
2 files changed, 13 insertions, 6 deletions
diff --git a/src/server/api/endpoints/notes/state.ts b/src/server/api/endpoints/notes/state.ts index 2ec4a93d5b..b41b56162c 100644 --- a/src/server/api/endpoints/notes/state.ts +++ b/src/server/api/endpoints/notes/state.ts @@ -28,15 +28,15 @@ export default define(meta, async (ps, user) => { const [favorite, watching] = await Promise.all([ NoteFavorites.count({ where: { - userId: user.id, - noteId: ps.noteId + userId: user.id, + noteId: ps.noteId }, take: 1 }), NoteWatchings.count({ where: { - userId: user.id, - noteId: ps.noteId + userId: user.id, + noteId: ps.noteId }, take: 1 }) diff --git a/src/server/api/endpoints/notes/timeline.ts b/src/server/api/endpoints/notes/timeline.ts index 3eed9f0ca8..d60136a9ca 100644 --- a/src/server/api/endpoints/notes/timeline.ts +++ b/src/server/api/endpoints/notes/timeline.ts @@ -102,6 +102,13 @@ export const meta = { }; export default define(meta, async (ps, user) => { + const hasFollowing = (await Followings.count({ + where: { + followerId: user.id, + }, + take: 1 + })) !== 0; + //#region Construct query const followingQuery = Followings.createQueryBuilder('following') .select('following.followeeId') @@ -110,8 +117,8 @@ export default define(meta, async (ps, user) => { const query = makePaginationQuery(Notes.createQueryBuilder('note'), ps.sinceId, ps.untilId, ps.sinceDate, ps.untilDate) .andWhere(new Brackets(qb => { qb - .where(`note.userId IN (${ followingQuery.getQuery() })`) - .orWhere('note.userId = :meId', { meId: user.id }); + .where('note.userId = :meId', { meId: user.id }); + if (hasFollowing) qb.orWhere(`note.userId IN (${ followingQuery.getQuery() })`); })) .leftJoinAndSelect('note.user', 'user') .setParameters(followingQuery.getParameters()); |