From c7ebf6f990660b5c8b2a6bb53dbd9ef6ff058531 Mon Sep 17 00:00:00 2001 From: MeiMei <30769358+mei23@users.noreply.github.com> Date: Fri, 1 Feb 2019 09:57:51 +0900 Subject: Hide suspended users (#4075) --- src/server/api/common/get-hide-users.ts | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 src/server/api/common/get-hide-users.ts (limited to 'src/server/api/common') diff --git a/src/server/api/common/get-hide-users.ts b/src/server/api/common/get-hide-users.ts new file mode 100644 index 0000000000..b3ddcec1f5 --- /dev/null +++ b/src/server/api/common/get-hide-users.ts @@ -0,0 +1,20 @@ +import * as mongo from 'mongodb'; +import Mute from '../../../models/mute'; +import User, { IUser } from '../../../models/user'; +import { unique } from '../../../prelude/array'; + +export async function getHideUserIds(me: IUser) { + return me ? await getHideUserIdsById(me._id) : []; +} + +export async function getHideUserIdsById(meId: mongo.ObjectID) { + const suspended = (await User.find({ + isSuspended: true + })).map(user => user._id); + + const muted = meId ? (await Mute.find({ + muterId: meId + })).map(mute => mute.muteeId) : []; + + return unique(suspended.concat(muted)); +} -- cgit v1.2.3-freya