Polish player profile layout name fallback and user copy
This commit is contained in:
@@ -0,0 +1,76 @@
|
||||
# TASK-256 - Polish player profile layout, name fallback and user copy
|
||||
|
||||
## Summary
|
||||
|
||||
This task polishes the public player profile in `stats.html` after TASK-253 and TASK-255.
|
||||
|
||||
Changes included:
|
||||
|
||||
- moved external profile links out of the lower summary grid
|
||||
- kept selected search-result names as UI fallback when the profile payload has no player name
|
||||
- replaced technical user-facing copy with player-friendly messages
|
||||
- kept KPM visibility restricted to `kpm_status == ready`
|
||||
|
||||
## External Profile Layout
|
||||
|
||||
`Perfiles externos` now renders directly under the `Perfil personal` state text and before the weekly/monthly comparison cards.
|
||||
|
||||
The lower summary grid now only contains:
|
||||
|
||||
- `Identidad`
|
||||
- `Ventana semanal`
|
||||
- `Ventana mensual`
|
||||
|
||||
The links remain responsive and wrap on narrow screens.
|
||||
|
||||
## Player Name Fallback
|
||||
|
||||
Root cause:
|
||||
|
||||
- degraded weekly/monthly profile payloads can return no `player_name`
|
||||
- the frontend then fell back to `Sin nombre`
|
||||
- this ignored the player name already selected from search results
|
||||
|
||||
Fix:
|
||||
|
||||
- the selected result name is passed into `loadPlayerProfile(...)`
|
||||
- visible name priority is:
|
||||
- payload player name if it is usable
|
||||
- selected search-result name
|
||||
- current search text if it looks like a name
|
||||
- `Jugador seleccionado`
|
||||
|
||||
Raw Steam/Epic identifiers are not used as visible profile names.
|
||||
|
||||
## User Copy
|
||||
|
||||
Replaced visible technical wording:
|
||||
|
||||
- `Backend no disponible...` -> `Servicio no disponible...`
|
||||
- `Verifica backend...` -> `Intentalo de nuevo en unos segundos.`
|
||||
- `Jugador sin estadisticas suficientes...` -> `Todavia no hay estadisticas suficientes para este jugador.`
|
||||
- `Ranking ausente` -> `Sin posicion`
|
||||
- backend/recalculation note -> `Comparativa basada en los datos disponibles actualmente.`
|
||||
|
||||
Internal variable names and fetch URLs still use backend terminology where required by code.
|
||||
|
||||
## Validation
|
||||
|
||||
Executed:
|
||||
|
||||
- `node --check frontend/assets/js/stats.js`
|
||||
|
||||
Static checks:
|
||||
|
||||
- no visible `Sin nombre` fallback remains in stats UI
|
||||
- no visible profile copy mentions backend, endpoint, payload, read model, ranking block, or recalculation
|
||||
- KPM is still rendered only for `kpm_status == ready`
|
||||
- Steam profile links still resolve to Steam + Hellor + HLL Records + Helo
|
||||
- Epic profile links still resolve to Hellor + HLL Records
|
||||
|
||||
## Notes
|
||||
|
||||
- No backend changes.
|
||||
- No TeamKills changes.
|
||||
- No asset changes.
|
||||
- No scheduler/RCON/server configuration changes.
|
||||
Reference in New Issue
Block a user