This commit is contained in:
syuilo 2020-02-26 07:56:32 +09:00
parent f6c376f20d
commit 7121bdef6b
3 changed files with 5 additions and 5 deletions

View file

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

View file

@ -30,7 +30,7 @@ import { isDuplicateKeyValueError } from '../../misc/is-duplicate-key-value-erro
import { ensure } from '../../prelude/ensure'; import { ensure } from '../../prelude/ensure';
import { checkHitAntenna } from '../../misc/check-hit-antenna'; import { checkHitAntenna } from '../../misc/check-hit-antenna';
import { addNoteToAntenna } from '../add-note-to-antenna'; import { addNoteToAntenna } from '../add-note-to-antenna';
import countSameRenotes from '../count-same-renotes'; import { countSameRenotes } from '../../misc/count-same-renotes';
type NotificationType = 'reply' | 'renote' | 'quote' | 'mention'; type NotificationType = 'reply' | 'renote' | 'quote' | 'mention';
@ -237,7 +237,7 @@ export default async (user: User, data: Option, silent = false) => new Promise<N
saveReply(data.reply, note); saveReply(data.reply, note);
} }
//この投稿を除く指定したユーザーによる指定したノートのリノートが存在しないとき // この投稿を除く指定したユーザーによる指定したノートのリノートが存在しないとき
if (data.renote && (await countSameRenotes(user.id, data.renote.id, note.id) === 0)) { if (data.renote && (await countSameRenotes(user.id, data.renote.id, note.id) === 0)) {
incRenoteCount(data.renote); incRenoteCount(data.renote);
} }

View file

@ -11,7 +11,7 @@ import { Note } from '../../models/entities/note';
import { Notes, Users, Instances } from '../../models'; import { Notes, Users, Instances } from '../../models';
import { notesChart, perUserNotesChart, instanceChart } from '../chart'; import { notesChart, perUserNotesChart, instanceChart } from '../chart';
import { deliverToFollowers } from '../../remote/activitypub/deliver-manager'; import { deliverToFollowers } from '../../remote/activitypub/deliver-manager';
import countSameRenotes from '../count-same-renotes'; import { countSameRenotes } from '../../misc/count-same-renotes';
/** /**
* 稿 * 稿
@ -21,7 +21,7 @@ import countSameRenotes from '../count-same-renotes';
export default async function(user: User, note: Note, quiet = false) { export default async function(user: User, note: Note, quiet = false) {
const deletedAt = new Date(); const deletedAt = new Date();
//この投稿を除く指定したユーザーによる指定したノートのリノートが存在しないとき // この投稿を除く指定したユーザーによる指定したノートのリノートが存在しないとき
if (note.renoteId && (await countSameRenotes(user.id, note.renoteId, note.id)) === 0) { if (note.renoteId && (await countSameRenotes(user.id, note.renoteId, note.id)) === 0) {
Notes.decrement({ id: note.renoteId }, 'renoteCount', 1); Notes.decrement({ id: note.renoteId }, 'renoteCount', 1);
Notes.decrement({ id: note.renoteId }, 'score', 1); Notes.decrement({ id: note.renoteId }, 'score', 1);