From c3cd0451ad4ba4ef7c15bb1a3cf54a19d8c5d2ef Mon Sep 17 00:00:00 2001
From: syuilo <syuilotan@yahoo.co.jp>
Date: Sat, 18 Aug 2018 23:15:16 +0900
Subject: [PATCH] wip

---
 src/services/update-chart.ts | 20 ++++++++++++++++++--
 1 file changed, 18 insertions(+), 2 deletions(-)

diff --git a/src/services/update-chart.ts b/src/services/update-chart.ts
index f6835fb789..f7997cb774 100644
--- a/src/services/update-chart.ts
+++ b/src/services/update-chart.ts
@@ -1,6 +1,6 @@
 import { INote } from '../models/note';
 import Chart, { IChart } from '../models/chart';
-import { isLocalUser } from '../models/user';
+import { isLocalUser, IUser } from '../models/user';
 
 async function getTodayStats(): Promise<IChart> {
 	const now = new Date();
@@ -22,7 +22,7 @@ async function getTodayStats(): Promise<IChart> {
 		//   「昨日の」と決め打ちせずに「もっとも最近の」とします
 		const mostRecentStats = await Chart.findOne({}, {
 			sort: {
-				createdAt: -1
+				date: -1
 			}
 		});
 
@@ -114,6 +114,22 @@ async function update(inc: any) {
 	});
 }
 
+export async function updateUserStats(user: IUser, isAdditional: boolean) {
+	const inc = {} as any;
+
+	const val = isAdditional ? 1 : -1;
+
+	if (isLocalUser(user)) {
+		inc['users.local.total'] = val;
+		inc['users.local.diff'] = val;
+	} else {
+		inc['users.remote.total'] = val;
+		inc['users.remote.diff'] = val;
+	}
+
+	await update(inc);
+}
+
 export async function updateNoteStats(note: INote, isAdditional: boolean) {
 	const inc = {} as any;