summaryrefslogtreecommitdiff
path: root/src/services/note/delete.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/services/note/delete.ts')
-rw-r--r--src/services/note/delete.ts17
1 files changed, 16 insertions, 1 deletions
diff --git a/src/services/note/delete.ts b/src/services/note/delete.ts
index 8e8c20bfce..2b797545ed 100644
--- a/src/services/note/delete.ts
+++ b/src/services/note/delete.ts
@@ -1,5 +1,5 @@
import Note, { INote } from '../../models/note';
-import { IUser, isLocalUser } from '../../models/user';
+import { IUser, isLocalUser, isRemoteUser } from '../../models/user';
import { publishNoteStream } from '../stream';
import renderDelete from '../../remote/activitypub/renderer/delete';
import { renderActivity } from '../../remote/activitypub/renderer';
@@ -12,6 +12,9 @@ import config from '../../config';
import NoteUnread from '../../models/note-unread';
import read from './read';
import DriveFile from '../../models/drive-file';
+import { registerOrFetchInstanceDoc } from '../register-or-fetch-instance-doc';
+import Instance from '../../models/instance';
+import instanceChart from '../../services/chart/instance';
/**
* 投稿を削除します。
@@ -91,4 +94,16 @@ export default async function(user: IUser, note: INote) {
// 統計を更新
notesChart.update(note, false);
perUserNotesChart.update(user, note, false);
+
+ if (isRemoteUser(user)) {
+ registerOrFetchInstanceDoc(user.host).then(i => {
+ Instance.update({ _id: i._id }, {
+ $inc: {
+ notesCount: -1
+ }
+ });
+
+ instanceChart.updateNote(i.host, false);
+ });
+ }
}