diff options
| author | syuilo <syuilotan@yahoo.co.jp> | 2019-03-14 15:19:09 +0900 |
|---|---|---|
| committer | syuilo <syuilotan@yahoo.co.jp> | 2019-03-14 15:19:09 +0900 |
| commit | d762a6ce5807ebc0acf3620d5f8ed1de7e1b306e (patch) | |
| tree | c8f9a34b804f1da57e2af1beb8ca07a1ee2db06f /src/server/api | |
| parent | Fix #4489 (diff) | |
| parent | unFollowAll on suspend (#4490) (diff) | |
| download | sharkey-d762a6ce5807ebc0acf3620d5f8ed1de7e1b306e.tar.gz sharkey-d762a6ce5807ebc0acf3620d5f8ed1de7e1b306e.tar.bz2 sharkey-d762a6ce5807ebc0acf3620d5f8ed1de7e1b306e.zip | |
Merge branch 'develop' of https://github.com/syuilo/misskey into develop
Diffstat (limited to 'src/server/api')
| -rw-r--r-- | src/server/api/endpoints/admin/suspend-user.ts | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/src/server/api/endpoints/admin/suspend-user.ts b/src/server/api/endpoints/admin/suspend-user.ts index 83b39fb0b9..0a2d309530 100644 --- a/src/server/api/endpoints/admin/suspend-user.ts +++ b/src/server/api/endpoints/admin/suspend-user.ts @@ -1,7 +1,9 @@ import $ from 'cafy'; import ID, { transform } from '../../../../misc/cafy-id'; import define from '../../define'; -import User from '../../../../models/user'; +import User, { IUser } from '../../../../models/user'; +import Following from '../../../../models/following'; +import deleteFollowing from '../../../../services/following/delete'; export const meta = { desc: { @@ -51,5 +53,25 @@ export default define(meta, async (ps) => { } }); + unFollowAll(user); + return; }); + +async function unFollowAll(follower: IUser) { + const followings = await Following.find({ + followerId: follower._id + }); + + for (const following of followings) { + const followee = await User.findOne({ + _id: following.followeeId + }); + + if (followee == null) { + throw `Cant find followee ${following.followeeId}`; + } + + await deleteFollowing(follower, followee, true); + } +} |