d1becaaf14
- 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>
40 lines
1.4 KiB
Python
40 lines
1.4 KiB
Python
from django.conf import settings
|
|
from .models import ServerSelection
|
|
from django.db import connections
|
|
import socket
|
|
|
|
def url_principal(request):
|
|
"""Devuelve la URL principal del sitio."""
|
|
current_domain = f"{request.scheme}://{request.get_host()}"
|
|
return {'URL_PRINCIPAL': current_domain}
|
|
|
|
def configuracion_global(request):
|
|
"""Devuelve configuraciones globales como el nombre del servidor y el año actual."""
|
|
return {
|
|
'NOMBRE_SERVIDOR': settings.NOMBRE_SERVIDOR,
|
|
'ANIO_ACTUAL': settings.ANIO_ACTUAL,
|
|
}
|
|
|
|
def get_server_info(request):
|
|
"""Devuelve información del servidor para que esté disponible en todas las plantillas."""
|
|
server_selection = ServerSelection.objects.first()
|
|
|
|
online_count = 0
|
|
if server_selection:
|
|
# Obtener la cantidad de personajes en línea
|
|
try:
|
|
with connections['acore_characters'].cursor() as cursor:
|
|
cursor.execute("SELECT COUNT(*) FROM characters WHERE online = 1")
|
|
result = cursor.fetchone()
|
|
if result is not None:
|
|
online_count = result[0]
|
|
except Exception as e:
|
|
# Manejar errores de conexión o consulta
|
|
print(f"Error al obtener personajes en línea: {e}")
|
|
|
|
return {
|
|
'server': server_selection,
|
|
'online_characters': online_count,
|
|
'expansion': server_selection.expansion if server_selection else 'Unknown',
|
|
}
|