summaryrefslogtreecommitdiff
path: root/src/server/api/common/generate-muted-user-query.ts
diff options
context:
space:
mode:
authorsyuilo <Syuilotan@yahoo.co.jp>2021-11-13 12:23:49 +0900
committersyuilo <Syuilotan@yahoo.co.jp>2021-11-13 12:23:49 +0900
commit2795fe457909c687f668d020ef65d52abc3182fb (patch)
tree0a52e4e4d854333496fcc487560c93c3de5d5eb5 /src/server/api/common/generate-muted-user-query.ts
parentMerge branch 'develop' (diff)
parent12.96.0 (diff)
downloadmisskey-2795fe457909c687f668d020ef65d52abc3182fb.tar.gz
misskey-2795fe457909c687f668d020ef65d52abc3182fb.tar.bz2
misskey-2795fe457909c687f668d020ef65d52abc3182fb.zip
Merge branch 'develop'
Diffstat (limited to 'src/server/api/common/generate-muted-user-query.ts')
-rw-r--r--src/server/api/common/generate-muted-user-query.ts40
1 files changed, 0 insertions, 40 deletions
diff --git a/src/server/api/common/generate-muted-user-query.ts b/src/server/api/common/generate-muted-user-query.ts
deleted file mode 100644
index 7e200b87ef..0000000000
--- a/src/server/api/common/generate-muted-user-query.ts
+++ /dev/null
@@ -1,40 +0,0 @@
-import { User } from '@/models/entities/user';
-import { Mutings } from '@/models/index';
-import { SelectQueryBuilder, Brackets } from 'typeorm';
-
-export function generateMutedUserQuery(q: SelectQueryBuilder<any>, me: { id: User['id'] }, exclude?: User) {
- const mutingQuery = Mutings.createQueryBuilder('muting')
- .select('muting.muteeId')
- .where('muting.muterId = :muterId', { muterId: me.id });
-
- if (exclude) {
- mutingQuery.andWhere('muting.muteeId != :excludeId', { excludeId: exclude.id });
- }
-
- // 投稿の作者をミュートしていない かつ
- // 投稿の返信先の作者をミュートしていない かつ
- // 投稿の引用元の作者をミュートしていない
- q
- .andWhere(`note.userId NOT IN (${ mutingQuery.getQuery() })`)
- .andWhere(new Brackets(qb => { qb
- .where(`note.replyUserId IS NULL`)
- .orWhere(`note.replyUserId NOT IN (${ mutingQuery.getQuery() })`);
- }))
- .andWhere(new Brackets(qb => { qb
- .where(`note.renoteUserId IS NULL`)
- .orWhere(`note.renoteUserId NOT IN (${ mutingQuery.getQuery() })`);
- }));
-
- q.setParameters(mutingQuery.getParameters());
-}
-
-export function generateMutedUserQueryForUsers(q: SelectQueryBuilder<any>, me: { id: User['id'] }) {
- const mutingQuery = Mutings.createQueryBuilder('muting')
- .select('muting.muteeId')
- .where('muting.muterId = :muterId', { muterId: me.id });
-
- q
- .andWhere(`user.id NOT IN (${ mutingQuery.getQuery() })`);
-
- q.setParameters(mutingQuery.getParameters());
-}