diff --git a/JugarAlPadel/K8S/Makefile b/JugarAlPadel/K8S/Makefile index 85120a9..c6b1d88 100644 --- a/JugarAlPadel/K8S/Makefile +++ b/JugarAlPadel/K8S/Makefile @@ -2,7 +2,7 @@ export ARQUITECTURA := $(shell lscpu |grep itectur | tr -d ' '| cut -f2 -d':') #export REGISTRY=localhost:5000 export REGISTRY=registry.reymota.es -export IMG_VERSION = 0.70.4 +export IMG_VERSION = 0.70.11 export IMG_NGINX_VERSION = 2.3 # limpia todo diff --git a/JugarAlPadel/gestion_reservas/eventos/views.py b/JugarAlPadel/gestion_reservas/eventos/views.py index adc51c2..a27b754 100644 --- a/JugarAlPadel/gestion_reservas/eventos/views.py +++ b/JugarAlPadel/gestion_reservas/eventos/views.py @@ -6,6 +6,8 @@ from django.conf import settings from django.template.loader import render_to_string from django.utils import timezone +import logging + from django.core.mail import send_mail from rest_framework.response import Response @@ -15,6 +17,8 @@ from .serializers import EventoSerializer, ReservaSerializer, ListaEsperaSeriali from .models import Evento, Reserva, ListaEspera, Noticia from .forms import ListaEsperaForm, EventoForm, MensajeCorreoForm +logger = logging.getLogger(__name__) + @login_required def reservar_evento(request, evento_id): @@ -316,6 +320,10 @@ def enviar_correo_inscritos(request, evento_id): messages.warning(request, "No hay correos disponibles para los inscritos.") return redirect('eventos:detalle_evento', evento_id=evento.id) + destinatarios_str = ', '.join(destinatarios) + + logger.info("destinatarios: " + destinatarios_str) + if request.method == "POST": form = MensajeCorreoForm(request.POST) if form.is_valid(): @@ -327,13 +335,16 @@ def enviar_correo_inscritos(request, evento_id): firma = "\n\n\nSaludos, \n\nPádel entre amigos" mensaje = f"{mensaje_usuario}{firma}" - send_mail( - asunto, - mensaje, - settings.DEFAULT_FROM_EMAIL, - destinatarios, - fail_silently=False - ) + for destinatario in destinatarios: + send_mail( + asunto, + mensaje, + settings.DEFAULT_FROM_EMAIL, + destinatario.split(), + fail_silently=False + ) + + logger.debug('Correo enviado') messages.success(request, f"Correo enviado a {len(destinatarios)} inscritos.") return redirect('eventos:detalle_evento', evento_id=evento.id) diff --git a/JugarAlPadel/gestion_reservas/gestion_reservas/settings.py b/JugarAlPadel/gestion_reservas/gestion_reservas/settings.py index 3ced22e..898ef8c 100644 --- a/JugarAlPadel/gestion_reservas/gestion_reservas/settings.py +++ b/JugarAlPadel/gestion_reservas/gestion_reservas/settings.py @@ -12,6 +12,8 @@ https://docs.djangoproject.com/en/5.1/ref/settings/ from pathlib import Path import os +import logging + # Build paths inside the project like this: BASE_DIR / 'subdir'. BASE_DIR = Path(__file__).resolve().parent.parent @@ -175,3 +177,58 @@ ADMIN_EMAIL = '' # El tiempo de validez del enlace para resetear la contraseña (por defecto es de 3 días) PASSWORD_RESET_TIMEOUT = 86400 # 1 día en segundos + +LOGGING = { + 'version': 1, + 'disable_existing_loggers': False, + 'formatters': { + 'verbose': { + 'format': '{levelname} {asctime} {module} {message}', + 'style': '{', + }, + 'simple': { + 'format': '{levelname} {message}', + 'style': '{', + }, + }, + 'handlers': { + 'console': { + 'level': 'DEBUG', + 'class': 'logging.StreamHandler', + 'formatter': 'simple', + }, + 'file': { + 'level': 'DEBUG', + 'class': 'logging.FileHandler', + 'filename': '/dev/null', + 'formatter': 'verbose', + }, + 'mail_admins': { + 'level': 'ERROR', + 'class': 'django.utils.log.AdminEmailHandler', + }, + }, + 'loggers': { + 'django': { + 'handlers': ['file'], + 'level': 'DEBUG', + 'propagate': True, + }, + 'eventos': { + 'handlers': ['console', 'file'], + 'level': 'DEBUG', + 'propagate': False, + }, + 'gestion_reservas': { + 'handlers': ['console', 'file'], + 'level': 'DEBUG', + 'propagate': False, + }, + 'django.request': { + 'handlers': ['mail_admins'], + 'level': 'ERROR', + 'propagate': False, + }, + }, +} +