From a95af0e48ff2ca55f002916630099fbbe5acce75 Mon Sep 17 00:00:00 2001 From: Jannis Portmann Date: Fri, 8 Sep 2023 13:41:01 +0200 Subject: [PATCH] Use language of recipient --- pflaenzli/pflaenzli/mail.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pflaenzli/pflaenzli/mail.py b/pflaenzli/pflaenzli/mail.py index 8095fa2..f6d4bac 100644 --- a/pflaenzli/pflaenzli/mail.py +++ b/pflaenzli/pflaenzli/mail.py @@ -1,14 +1,15 @@ from django.core.mail import EmailMessage, EmailMultiAlternatives from django.urls import reverse from django.template.loader import render_to_string -from django.utils.translation import gettext_lazy as _ +from django.utils.translation import activate, get_language, gettext_lazy as _ def send_offer_email(request, offer, sender_user, recipient_user): + activate(recipient_user.language_code) + html_content = render_to_string('user/trade/offer_email.html', {'request': request, 'offer': offer, 'sender_user': sender_user, 'recipient_user': recipient_user}) plain_text = get_offer_text(request, offer, sender_user, recipient_user) - message = EmailMultiAlternatives( f'{sender_user.username} {_("wants to trade")}', plain_text, @@ -21,6 +22,8 @@ def send_offer_email(request, offer, sender_user, recipient_user): message.send() + activate(sender_user.language_code) + def get_offer_text(request, offer, sender_user, recipient_user): return f"{_('Hello')} {recipient_user.username},\n\n{sender_user.username} {_('is interested in')} {offer.title}!\n\n{_('Checkout their offers')}: {request.scheme}://{request.get_host()}{reverse('user_detail', args=[sender_user.id])}\n\n{_('Contact')} {sender_user.username}, {_('by replying to this mail')}."