summaryrefslogtreecommitdiff
path: root/src/server/api/common/watch-post.ts
blob: 61ea444430f29f13472b32bf7c2007becaf7dbac (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import * as mongodb from 'mongodb';
import Watching from '../models/post-watching';

export default async (me: mongodb.ObjectID, post: object) => {
	// 自分の投稿はwatchできない
	if (me.equals((post as any).userId)) {
		return;
	}

	// if watching now
	const exist = await Watching.findOne({
		postId: (post as any)._id,
		userId: me,
		deletedAt: { $exists: false }
	});

	if (exist !== null) {
		return;
	}

	await Watching.insert({
		createdAt: new Date(),
		postId: (post as any)._id,
		userId: me
	});
};