[API] notes/mentions にミュートを適用するように

This commit is contained in:
syuilo 2018-12-30 01:40:24 +09:00
parent f11ebafe47
commit ac423f1ef4
No known key found for this signature in database
GPG Key ID: BDC4C49D06AB9D69
1 changed files with 20 additions and 0 deletions

View File

@ -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
};