릴리스: v0.1.19 티어표 저장 UI와 작성자 표시 정리

This commit is contained in:
2026-03-19 18:17:53 +09:00
parent 7bc1af268f
commit d4ab4b2cd1
7 changed files with 208 additions and 21 deletions

View File

@@ -77,6 +77,15 @@ function mapTierListRow(row) {
}
}
function getUserDisplayName(row) {
if (!row) return ''
const nickname = (row.nickname || '').trim()
if (nickname) return nickname
const email = (row.email || '').trim()
if (!email) return ''
return email.split('@')[0] || email
}
async function createPool() {
const rootConnection = await mysql.createConnection({
host: DB_HOST,
@@ -537,7 +546,8 @@ async function listPublicTierLists(gameId) {
t.updated_at,
t.author_id,
u.nickname,
u.email
u.email,
u.avatar_src
FROM tierlists t
INNER JOIN users u ON u.id = t.author_id
${whereClause}
@@ -554,16 +564,27 @@ async function listPublicTierLists(gameId) {
createdAt: Number(row.created_at),
updatedAt: Number(row.updated_at),
authorId: row.author_id,
authorName: row.nickname || row.email,
authorName: getUserDisplayName(row),
authorAvatarSrc: row.avatar_src || '',
}))
}
async function listUserTierLists(userId) {
const rows = await query(
`
SELECT id, game_id, title, created_at, updated_at, is_public
FROM tierlists
WHERE author_id = ?
SELECT
t.id,
t.game_id,
t.title,
t.created_at,
t.updated_at,
t.is_public,
u.nickname,
u.email,
u.avatar_src
FROM tierlists t
INNER JOIN users u ON u.id = t.author_id
WHERE t.author_id = ?
ORDER BY updated_at DESC
`,
[userId]
@@ -576,6 +597,8 @@ async function listUserTierLists(userId) {
createdAt: Number(row.created_at),
updatedAt: Number(row.updated_at),
isPublic: !!row.is_public,
authorName: getUserDisplayName(row),
authorAvatarSrc: row.avatar_src || '',
}))
}