Foro: paginación de temas (20/pág) y de posts (15/pág)

- lib/forum.ts: countTopics/countPosts + offset/limit en getTopics/getPosts
  (mismos límites que Django: FORUM_TOPICS_PER_PAGE=20, FORUM_POSTS_PER_PAGE=15).
- components/Pagination.tsx: paginación reutilizable (ventana ±2, primera/última,
  prev/next) con enlaces ?page=N; no renderiza si solo hay una página.
- Foro y tema aceptan ?page=N (clamp al rango válido).
- El formulario de respuesta solo aparece en la última página; enlace a ella si no.
- i18n: namespace Common (prev/next/page) + replyOnLastPage.

Build OK. Sin datos de foro en acore_web (estado vacío correcto).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-13 00:32:16 +00:00
parent 1de1002938
commit 36a4354ff7
6 changed files with 143 additions and 11 deletions
+7 -1
View File
@@ -290,7 +290,8 @@
"searchHint": "Type at least 2 characters to search.",
"noResults": "No results for “{query}”.",
"resultsCount": "{count} result(s) for “{query}”.",
"in": "in"
"in": "in",
"replyOnLastPage": "Go to the last page to reply"
},
"Admin": {
"title": "Admin panel",
@@ -339,5 +340,10 @@
"genericError": "Something went wrong. Please try again later.",
"noSites": "No vote sites configured yet.",
"loginToVote": "Sign in to vote."
},
"Common": {
"prev": "Previous",
"next": "Next",
"page": "Page"
}
}