diff options
| author | syuilo <Syuilotan@yahoo.co.jp> | 2018-04-03 17:19:52 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-04-03 17:19:52 +0900 |
| commit | c666a2b26ea664cea5694bb42a6f18e13a742909 (patch) | |
| tree | 3ff6b88fce69b533a93b6c33c0818c346b738194 /src/server/api/endpoints | |
| parent | Merge pull request #1381 from akihikodaki/unfollow (diff) | |
| parent | Implement remote account unfollow (diff) | |
| download | sharkey-c666a2b26ea664cea5694bb42a6f18e13a742909.tar.gz sharkey-c666a2b26ea664cea5694bb42a6f18e13a742909.tar.bz2 sharkey-c666a2b26ea664cea5694bb42a6f18e13a742909.zip | |
Merge pull request #1382 from akihikodaki/unfollow
Implement remote account unfollow
Diffstat (limited to 'src/server/api/endpoints')
| -rw-r--r-- | src/server/api/endpoints/following/delete.ts | 33 |
1 files changed, 10 insertions, 23 deletions
diff --git a/src/server/api/endpoints/following/delete.ts b/src/server/api/endpoints/following/delete.ts index 5deddc9196..bf21bf0cb7 100644 --- a/src/server/api/endpoints/following/delete.ts +++ b/src/server/api/endpoints/following/delete.ts @@ -2,9 +2,9 @@ * Module dependencies */ import $ from 'cafy'; -import User, { pack as packUser } from '../../../../models/user'; +import User from '../../../../models/user'; import Following from '../../../../models/following'; -import event from '../../../../publishers/stream'; +import queue from '../../../../queue'; /** * Unfollow a user @@ -49,28 +49,15 @@ module.exports = (params, user) => new Promise(async (res, rej) => { return rej('already not following'); } - // Delete following - await Following.findOneAndDelete({ - _id: exist._id - }); - - // Send response - res(); - - // Decrement following count - User.update({ _id: follower._id }, { - $inc: { - followingCount: -1 + queue.create('http', { + type: 'unfollow', + id: exist._id + }).save(error => { + if (error) { + return rej('unfollow failed'); } - }); - // Decrement followers count - User.update({ _id: followee._id }, { - $inc: { - followersCount: -1 - } + // Send response + res(); }); - - // Publish follow event - event(follower._id, 'unfollow', await packUser(followee, follower)); }); |