summaryrefslogtreecommitdiff
path: root/src/misc/count-same-renotes.ts
blob: bc1072080ab0a0e873aa263ee82693f0353bcc79 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import { Notes } from '../models';

export async function countSameRenotes(userId: string, renoteId: string, excludeNoteId: string | undefined): Promise<number> {
	// 指定したユーザーの指定したノートのリノートがいくつあるか数える
	const query = Notes.createQueryBuilder('note')
		.where('note.userId = :userId', { userId })
		.andWhere('note.renoteId = :renoteId', { renoteId });

	// 指定した投稿を除く
	if (excludeNoteId) {
		query.andWhere('note.id != :excludeNoteId', { excludeNoteId });
	}

	return await query.getCount();
}