diff options
| author | MeiMei <30769358+mei23@users.noreply.github.com> | 2019-02-01 09:57:51 +0900 |
|---|---|---|
| committer | syuilo <Syuilotan@yahoo.co.jp> | 2019-02-01 09:57:51 +0900 |
| commit | c7ebf6f990660b5c8b2a6bb53dbd9ef6ff058531 (patch) | |
| tree | 1539c8f06508dc7cb7206420e40bf91811948d39 /src/server/api/common/get-hide-users.ts | |
| parent | Fix path (diff) | |
| download | sharkey-c7ebf6f990660b5c8b2a6bb53dbd9ef6ff058531.tar.gz sharkey-c7ebf6f990660b5c8b2a6bb53dbd9ef6ff058531.tar.bz2 sharkey-c7ebf6f990660b5c8b2a6bb53dbd9ef6ff058531.zip | |
Hide suspended users (#4075)
Diffstat (limited to 'src/server/api/common/get-hide-users.ts')
| -rw-r--r-- | src/server/api/common/get-hide-users.ts | 20 |
1 files changed, 20 insertions, 0 deletions
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)); +} |