릴리스: v0.1.46 에디터 아이템 제거와 회원 정보 보강

This commit is contained in:
2026-03-27 10:54:31 +09:00
parent 282e89b738
commit e0eeaa01cd
7 changed files with 158 additions and 9 deletions

View File

@@ -37,6 +37,8 @@ function mapUserRow(row) {
isAdmin: !!row.is_admin,
avatarSrc: row.avatar_src || '',
createdAt: Number(row.created_at),
tierListCount: Number(row.tierlist_count || 0),
recentActivityAt: Number(row.recent_activity_at || row.created_at || 0),
}
}
@@ -326,9 +328,24 @@ async function updateUserProfile({ id, nickname, avatarSrc }) {
}
async function listUsers() {
const rows = await query(
'SELECT id, email, nickname, is_admin, avatar_src, created_at FROM users ORDER BY created_at ASC, email ASC'
)
const rows = await query(`
SELECT
u.id,
u.email,
u.nickname,
u.is_admin,
u.avatar_src,
u.created_at,
COUNT(t.id) AS tierlist_count,
GREATEST(
u.created_at,
COALESCE(MAX(t.updated_at), 0)
) AS recent_activity_at
FROM users u
LEFT JOIN tierlists t ON t.author_id = u.id
GROUP BY u.id, u.email, u.nickname, u.is_admin, u.avatar_src, u.created_at
ORDER BY recent_activity_at DESC, u.created_at ASC, u.email ASC
`)
return rows.map(mapUserRow)
}