summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorxianon <xianon@hotmail.co.jp>2022-01-22 02:13:29 +0900
committerGitHub <noreply@github.com>2022-01-22 02:13:29 +0900
commite2cefb7f476bfa46844a9ee027af523e9e01f21d (patch)
tree017e3db547cead5e2d8dc1e068b4b186e655b58f
parentfix(client): タイムラインのkeep-aliveが効かなくなっているの... (diff)
downloadsharkey-e2cefb7f476bfa46844a9ee027af523e9e01f21d.tar.gz
sharkey-e2cefb7f476bfa46844a9ee027af523e9e01f21d.tar.bz2
sharkey-e2cefb7f476bfa46844a9ee027af523e9e01f21d.zip
NodeInfo にユーザー数と投稿数の情報を追加する (#8126)
-rw-r--r--packages/backend/src/server/nodeinfo.ts32
1 files changed, 16 insertions, 16 deletions
diff --git a/packages/backend/src/server/nodeinfo.ts b/packages/backend/src/server/nodeinfo.ts
index 097c6c664d..44f32bf882 100644
--- a/packages/backend/src/server/nodeinfo.ts
+++ b/packages/backend/src/server/nodeinfo.ts
@@ -1,9 +1,8 @@
import * as Router from '@koa/router';
import config from '@/config/index';
import { fetchMeta } from '@/misc/fetch-meta';
-import { Users } from '@/models/index';
-// import User from '../models/user';
-// import Note from '../models/note';
+import { Users, Notes } from '@/models/index';
+import { Not, IsNull, MoreThan } from 'typeorm';
const router = new Router();
@@ -19,20 +18,21 @@ export const links = [/* (awaiting release) {
}];
const nodeinfo2 = async () => {
+ const now = Date.now();
const [
meta,
- // total,
- // activeHalfyear,
- // activeMonth,
- // localPosts,
- // localComments
+ total,
+ activeHalfyear,
+ activeMonth,
+ localPosts,
+ localComments,
] = await Promise.all([
fetchMeta(true),
- // User.count({ host: null }),
- // User.count({ host: null, updatedAt: { $gt: new Date(Date.now() - 15552000000) } }),
- // User.count({ host: null, updatedAt: { $gt: new Date(Date.now() - 2592000000) } }),
- // Note.count({ '_user.host': null, replyId: null }),
- // Note.count({ '_user.host': null, replyId: { $ne: null } })
+ Users.count({ where: { host: null } }),
+ Users.count({ where: { host: null, updatedAt: MoreThan(new Date(now - 15552000000)) } }),
+ Users.count({ where: { host: null, updatedAt: MoreThan(new Date(now - 2592000000)) } }),
+ Notes.count({ where: { userHost: null, replyId: null } }),
+ Notes.count({ where: { userHost: null, replyId: Not(IsNull()) } }),
]);
const proxyAccount = meta.proxyAccountId ? await Users.pack(meta.proxyAccountId).catch(() => null) : null;
@@ -50,9 +50,9 @@ const nodeinfo2 = async () => {
},
openRegistrations: !meta.disableRegistration,
usage: {
- users: {}, // { total, activeHalfyear, activeMonth },
- // localPosts,
- // localComments
+ users: { total, activeHalfyear, activeMonth },
+ localPosts,
+ localComments,
},
metadata: {
nodeName: meta.name,