schon/payments/utils/emailing.py
Egor fureunoir Gorbunov fdd92dbf8b Features: 1) Introduced strict parameter for zip function in widgets.py; 2) Added EXTENSIONS_MAX_UNIQUE_QUERY_ATTEMPTS setting;
Fixes: 1) Resolved redundant lines and formatting inconsistencies across multiple files; 2) Corrected Collection typing imports and Optional replacements with union types (e.g., `str | None`);

Extra: Improved formatting and readability by consolidating single-line code sections and simplifying expressions.
2025-06-21 20:38:37 +03:00

32 lines
924 B
Python

from celery.app import shared_task
from constance import config
from django.core.mail import EmailMessage
from django.template.loader import render_to_string
from django.utils import timezone
from django.utils.translation import activate
from vibes_auth.models import User
@shared_task
def balance_email(user_pk: str) -> tuple[bool, str]:
pass
try:
user = User.objects.get(pk=user_pk)
except User.DoesNotExist:
return False, f"Order not found with the given pk: {user_pk}"
activate(user.language)
email = EmailMessage(
"eVibes | Successful Order",
render_to_string(
"balance_deposit_email.html", {"user": user, "current_year": timezone.now().year, "config": config}
),
to=[user.email],
from_email=f"{config.PROJECT_NAME} <{config.EMAIL_FROM}>",
)
email.content_subtype = "html"
email.send()
return True, user.uuid