diff options
| author | syuilo <syuilotan@yahoo.co.jp> | 2018-12-30 01:40:24 +0900 |
|---|---|---|
| committer | syuilo <syuilotan@yahoo.co.jp> | 2018-12-30 01:40:24 +0900 |
| commit | ac423f1ef4444e864470ab4576c751e4986e688b (patch) | |
| tree | 21489d6f8ba749140b72f48dd33e910ea70f6a31 /src/server | |
| parent | :art: (diff) | |
| download | sharkey-ac423f1ef4444e864470ab4576c751e4986e688b.tar.gz sharkey-ac423f1ef4444e864470ab4576c751e4986e688b.tar.bz2 sharkey-ac423f1ef4444e864470ab4576c751e4986e688b.zip | |
[API] notes/mentions にミュートを適用するように
Diffstat (limited to 'src/server')
| -rw-r--r-- | src/server/api/endpoints/notes/mentions.ts | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/server/api/endpoints/notes/mentions.ts b/src/server/api/endpoints/notes/mentions.ts index a353165cd0..4c7c397c77 100644 --- a/src/server/api/endpoints/notes/mentions.ts +++ b/src/server/api/endpoints/notes/mentions.ts @@ -4,6 +4,7 @@ import { getFriendIds } from '../../common/get-friends'; import { packMany } from '../../../../models/note'; import define from '../../define'; import read from '../../../../services/note/read'; +import Mute from '../../../../models/mute'; export const meta = { desc: { @@ -56,6 +57,25 @@ export default define(meta, (ps, user) => new Promise(async (res, rej) => { }] } as any; + // ミュートしているユーザーを取得 + const mutedUserIds = (await Mute.find({ + muterId: user._id + })).map(m => m.muteeId); + + if (mutedUserIds && mutedUserIds.length > 0) { + query.userId = { + $nin: mutedUserIds + }; + + query['_reply.userId'] = { + $nin: mutedUserIds + }; + + query['_renote.userId'] = { + $nin: mutedUserIds + }; + } + const sort = { _id: -1 }; |