Commit Graph

5 Commits

Author SHA1 Message Date
Inna b8cd6bac0c Distingue WoW Classic en la etiqueta de expansión
3.4.3 (54261) es WotLK Classic, no el WotLK retail/clásico (3.3.5a=12340). La
etiqueta ahora diferencia: 12340->'WotLK', 3.4.x->'WotLK Classic',
15595->'Cataclysm', 4.4.x->'Cataclysm Classic'. Nova WoW -> 'WotLK Classic'.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-12 20:35:26 +00:00
Inna 3be9a30dcc Ajusta el corte WotLK/Cataclysm Classic al build real 3.4.3 (54261)
El build de Nova WoW es 54261 (WotLK Classic 3.4.3), que caía en la franja
marcada como Cataclysm. WotLK Classic llega a 54261 y Cataclysm Classic empieza
en 4.4.0=54332, así que el corte se fija en 54261. ServerSelection -> build 54261.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-12 20:32:58 +00:00
Inna d1becaaf14 Corrige a 3.4.3 (WotLK Classic + bnet) textos y lógica de expansión
- Plantillas: los textos hardcodeados "WotLK 3.3.5a" pasan a "3.4.3" (title,
  description, keywords, og:* en head.html; encabezado de la portada).
- Expansión: se centraliza en ServerSelection (helper expansion_from_gamebuild
  + propiedad .expansion) y se reconoce WoW Classic: WotLK Classic 3.4.x
  (~44832–51536, p.ej. 3.4.3=51505) además de 3.3.5a (12340), y Cataclysm
  Classic 4.4.x además de 4.3.4 (15595). Se elimina la lógica duplicada de los
  4 sitios (api, context_processor, pages x2) que solo mapeaban 12340->WotLK.

El ServerSelection de Nova WoW queda en build 51505 (3.4.3) -> etiqueta WotLK,
puerto 1119 (bnetserver).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-12 20:31:40 +00:00
Inna 96ab91a82b Corrige ContentCreator.__str__ (self.titles -> self.title)
El campo se llama `title`; `self.titles` no existía y provocaba
AttributeError al representar el modelo (p. ej. en el admin de Django).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-12 19:16:22 +00:00
Inna 585285640d Divide home/models.py en el paquete home/models/ por secciones
El módulo (~310 líneas, 30 modelos) se convierte en un paquete cuyo
__init__.py re-exporta todos los modelos, de modo que `from home.models
import X`, el admin y el resto de consumidores siguen funcionando igual.

Módulos por sección: pricing (precios/costes de servicios + GuildRenameSettings),
store (Category, Item, StripeLog, Pedido), site (contenido/config del sitio),
recruit, accounts (activación, token de seguridad, LoginAttempt), voting
(VoteSite, VoteLog, HomeApiPoints) e history. Las claves foráneas por clase
directa quedan en el mismo módulo; cada submódulo importa solo lo que usa.

Se eliminan imports de cabecera muertos (ValidationError, uuid, secrets) y las
líneas de import duplicadas del original.

Migración-neutral: `makemigrations home --dry-run` -> "No changes detected"
(app_label=home y nombres/tablas de modelo intactos). Definición de cada
modelo idéntica (extracción por AST). `manage.py check` sin incidencias.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-12 19:15:12 +00:00