Foro: avatares por clase del personaje principal

Los avatares salían vacíos (el original usaba getAvatar, que no teníamos). Ahora
cada post muestra el avatar de FusionCMS correspondiente a la CLASE del personaje
de más nivel de la cuenta que postea, usando datos reales de acore_characters.

- Se descargan 10 avatares (uno por clase jugable en WotLK 3.4.3: 1..9 y 11) a
  public/forum/avatars/class-<id>.gif.
- resolvePosters() consulta la clase del personaje top de cada cuenta y mapea a su
  avatar; sin personaje (o acore_characters vacía) cae a guerrero por defecto.
- La página de tema pinta el avatar en el recuadro lateral.

Nota: la tabla characters de AzerothCore usa `guid` como clave (no `id`); ordenar
por `id` lanzaba error y devolvía siempre el avatar por defecto. Corregido.

Verificado en producción: una cuenta con Paladín de nivel máximo muestra class-2.gif.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-16 12:38:21 +00:00
parent 9b44af9675
commit 18648c6a7e
12 changed files with 43 additions and 2 deletions
@@ -101,7 +101,12 @@ export default async function TopicPage({
<span className="username">{author?.name ?? `#${post.poster}`}</span>
</div>
<div className={`user_avatar${isStaff ? ' isStaff' : ''}`}>
<span />
<span
style={{
background: `url(${author?.avatar ?? '/forum/avatars/class-1.gif'}) no-repeat center`,
backgroundSize: 'cover',
}}
/>
</div>
<div className="user_info">
<h3 className="post_field">