summaryrefslogtreecommitdiff
path: root/src/server/api
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2020-03-23 19:48:33 +0900
committersyuilo <syuilotan@yahoo.co.jp>2020-03-23 19:48:33 +0900
commit639e0137cc5b3754e647574d80a3293570d9d7ff (patch)
treed499d132f11f320fdce53ffd01961589cb46a19d /src/server/api
parentMerge branch 'develop' (diff)
parent12.25.0 (diff)
downloadsharkey-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.ts8
-rw-r--r--src/server/api/endpoints/notes/timeline.ts11
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());