summaryrefslogtreecommitdiff
path: root/src/services/following/requests/create.ts
diff options
context:
space:
mode:
authorMeiMei <30769358+mei23@users.noreply.github.com>2018-10-29 20:32:42 +0900
committersyuilo <Syuilotan@yahoo.co.jp>2018-10-29 20:32:42 +0900
commitd64dc458999afdc0bfd5f662a583bd1a0f6eebb3 (patch)
tree7bafd2682c100ef3badb7dd0d992dbf35930678a /src/services/following/requests/create.ts
parentMerge branch 'develop' of https://github.com/syuilo/misskey into develop (diff)
downloadmisskey-d64dc458999afdc0bfd5f662a583bd1a0f6eebb3.tar.gz
misskey-d64dc458999afdc0bfd5f662a583bd1a0f6eebb3.tar.bz2
misskey-d64dc458999afdc0bfd5f662a583bd1a0f6eebb3.zip
User blocking (Following part) (#3035)
* block wip * UndoBlock * UnBlock * wip * follow * UI * fix
Diffstat (limited to 'src/services/following/requests/create.ts')
-rw-r--r--src/services/following/requests/create.ts16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/services/following/requests/create.ts b/src/services/following/requests/create.ts
index d28c93929a..a87e472ad8 100644
--- a/src/services/following/requests/create.ts
+++ b/src/services/following/requests/create.ts
@@ -5,8 +5,24 @@ import pack from '../../../remote/activitypub/renderer';
import renderFollow from '../../../remote/activitypub/renderer/follow';
import { deliver } from '../../../queue';
import FollowRequest from '../../../models/follow-request';
+import Blocking from '../../../models/blocking';
export default async function(follower: IUser, followee: IUser, requestId?: string) {
+ // check blocking
+ const [ blocking, blocked ] = await Promise.all([
+ Blocking.findOne({
+ blockerId: follower._id,
+ blockeeId: followee._id,
+ }),
+ Blocking.findOne({
+ blockerId: followee._id,
+ blockeeId: follower._id,
+ })
+ ]);
+
+ if (blocking != null) throw new Error('blocking');
+ if (blocked != null) throw new Error('blocked');
+
await FollowRequest.insert({
createdAt: new Date(),
followerId: follower._id,