Foro: paginación en la búsqueda y contador de visitas por tema

- búsqueda paginada (count_search_topics + offset/limit) con controles en la plantilla
- contador de visitas: columna opcional forum_topics.views con detección automática
  (has_views_column), increment_views al ver el tema, mostrado en lista y cabecera
- sql/forum_views.sql (ALTER opcional) + docs

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-12 17:22:05 +00:00
parent fd49d6cd96
commit eb93758c43
7 changed files with 90 additions and 12 deletions
+5 -3
View File
@@ -23,7 +23,8 @@ Symfony *NovaWeb-main*, contra las **mismas tablas** en la base de datos
- Crear tema, responder, editar y borrar el post propio.
- Moderación: fijar/desfijar, bloquear/desbloquear, mover, borrar/restaurar temas
y posts.
- Buscador de temas (por título y contenido) en `/es/forum/search`.
- Buscador de temas (por título y contenido) **paginado** en `/es/forum/search`.
- Contador de **visitas** por tema (columna opcional `forum_topics.views`).
- Perfil público básico (`/es/profile/<usuario>`).
- El autor se muestra con un **nombre legible** (parte local del email de la
cuenta) en vez de `<bnetId>#1`.
@@ -68,6 +69,8 @@ es seguro.
```
(Si ya existe la BD del portal Symfony con esas tablas, apunta `DB_NAME_WEB`
a ella y omite este paso.)
- Opcional (contador de visitas): `mysql acore_web < sql/forum_views.sql`.
El foro detecta la columna automáticamente y funciona sin ella.
2. Configurar variables de entorno:
```
DB_NAME_WEB=acore_web
@@ -81,5 +84,4 @@ es seguro.
- Sistema de nicks propio del foro (ahora el nombre visible es la parte local del
email de la cuenta).
- Paginación/relevancia en los resultados de búsqueda (ahora lista los 50 temas
más recientes que coinciden).
- Avatares de usuario y firmas.