Foro: selector de personaje también al crear tema
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -1,10 +1,11 @@
|
|||||||
import { notFound, redirect } from 'next/navigation'
|
import { notFound, redirect } from 'next/navigation'
|
||||||
import { getTranslations, setRequestLocale } from 'next-intl/server'
|
import { getTranslations, setRequestLocale } from 'next-intl/server'
|
||||||
import { getForum, getForumPath } from '@/lib/forum'
|
import { getForum, getForumPath, getAccountCharactersForForum, getForumCharacterPick } from '@/lib/forum'
|
||||||
import { getSession } from '@/lib/session'
|
import { getSession } from '@/lib/session'
|
||||||
import { PageShell } from '@/components/PageShell'
|
import { PageShell } from '@/components/PageShell'
|
||||||
import { ForumBreadcrumb } from '@/components/ForumBreadcrumb'
|
import { ForumBreadcrumb } from '@/components/ForumBreadcrumb'
|
||||||
import { CreateTopicForm } from '@/components/CreateTopicForm'
|
import { CreateTopicForm } from '@/components/CreateTopicForm'
|
||||||
|
import { ForumCharacterPicker } from '@/components/ForumCharacterPicker'
|
||||||
|
|
||||||
export const dynamic = 'force-dynamic'
|
export const dynamic = 'force-dynamic'
|
||||||
|
|
||||||
@@ -24,6 +25,10 @@ export default async function CreateTopicPage({
|
|||||||
const session = await getSession()
|
const session = await getSession()
|
||||||
if (!session.username) redirect(`/${locale}/forum/${id}`)
|
if (!session.username) redirect(`/${locale}/forum/${id}`)
|
||||||
|
|
||||||
|
const [forumChars, forumPick] = session.accountId
|
||||||
|
? await Promise.all([getAccountCharactersForForum(session.accountId), getForumCharacterPick(session.accountId)])
|
||||||
|
: [[], null]
|
||||||
|
|
||||||
const path = await getForumPath(id, locale)
|
const path = await getForumPath(id, locale)
|
||||||
|
|
||||||
return (
|
return (
|
||||||
@@ -44,6 +49,19 @@ export default async function CreateTopicPage({
|
|||||||
{forum.description && <h3>{forum.description}</h3>}
|
{forum.description && <h3>{forum.description}</h3>}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<ForumCharacterPicker
|
||||||
|
locale={locale}
|
||||||
|
initialChars={forumChars}
|
||||||
|
initialCurrent={forumPick}
|
||||||
|
labels={{
|
||||||
|
postingAs: t('postingAs'),
|
||||||
|
change: t('changeCharacter'),
|
||||||
|
title: t('changeCharacter'),
|
||||||
|
filter: t('filter'),
|
||||||
|
empty: t('noCharacters'),
|
||||||
|
auto: t('autoCharacter'),
|
||||||
|
}}
|
||||||
|
/>
|
||||||
<CreateTopicForm forumId={id} />
|
<CreateTopicForm forumId={id} />
|
||||||
</div>
|
</div>
|
||||||
</PageShell>
|
</PageShell>
|
||||||
|
|||||||
Reference in New Issue
Block a user