Fix mails when the user or the club has a negative balance

This commit is contained in:
Yohann D'ANELLO 2020-09-01 15:52:27 +02:00
parent 2b70a05a9e
commit eaf256b1b6
3 changed files with 9 additions and 8 deletions

View File

@ -4,7 +4,9 @@
import unicodedata import unicodedata
from django.conf import settings from django.conf import settings
from django.conf.global_settings import DEFAULT_FROM_EMAIL
from django.core.exceptions import ValidationError from django.core.exceptions import ValidationError
from django.core.mail import send_mail
from django.core.validators import RegexValidator from django.core.validators import RegexValidator
from django.db import models from django.db import models
from django.template.loader import render_to_string from django.template.loader import render_to_string
@ -193,7 +195,6 @@ class NoteClub(Note):
super().save(*args, **kwargs) super().save(*args, **kwargs)
if old_note.balance >= 0: if old_note.balance >= 0:
# Passage en négatif # Passage en négatif
super().save(*args, **kwargs)
self.last_negative = timezone.now() self.last_negative = timezone.now()
self._force_save = True self._force_save = True
self.save(*args, **kwargs) self.save(*args, **kwargs)
@ -204,8 +205,8 @@ class NoteClub(Note):
def send_mail_negative_balance(self): def send_mail_negative_balance(self):
plain_text = render_to_string("note/mails/negative_balance.txt", dict(note=self)) plain_text = render_to_string("note/mails/negative_balance.txt", dict(note=self))
html = render_to_string("note/mails/negative_balance.html", dict(note=self)) html = render_to_string("note/mails/negative_balance.html", dict(note=self))
self.user.email_user("[Note Kfet] Passage en négatif (club {})" send_mail("[Note Kfet] Passage en négatif (club {})".format(self.club.name), plain_text, DEFAULT_FROM_EMAIL,
.format(self.club.name), plain_text, html_message=html) [self.club.email], html_message=html)
class NoteSpecial(Note): class NoteSpecial(Note):

View File

@ -6,11 +6,11 @@
<html lang="fr"> <html lang="fr">
<head> <head>
<meta charset="UTF-8"> <meta charset="UTF-8">
<title>Passage en négatif (compte n°{{ note.user.pk }})</title> <title>Passage en négatif (compte n°{{ note.pk }})</title>
</head> </head>
<body> <body>
<p> <p>
Bonjour {{ note }}, Bonjour {% if note.user %}{{ note.user }}{% else %}{{ note.club.name }}{% endif %},
</p> </p>
<p> <p>
@ -28,7 +28,7 @@
<p> <p>
Si tu ne comprends pas ton solde, tu peux consulter ton historique Si tu ne comprends pas ton solde, tu peux consulter ton historique
sur <a href="https://{{ "NOTE_URL"|getenv }}{% url "member:user_detail" pk=note.user.pk %}">ton compte</a>. sur <a href="https://{{ "NOTE_URL"|getenv }}{% if note.user %}{% url "member:user_detail" pk=note.user.pk %}{% else %}{% url "member:club_detail" pk=note.club.pk %}{% endif %}">ton compte</a>.
</p> </p>
<p> <p>

View File

@ -2,7 +2,7 @@
{% load getenv %} {% load getenv %}
{% load i18n %} {% load i18n %}
Bonjour {{ note }}, Bonjour {% if note.user %}{{ note.user }}{% else %}{{ note.club.name }}{% endif %},
Ce mail t'a été envoyé parce que le solde de ta Note Kfet Ce mail t'a été envoyé parce que le solde de ta Note Kfet
{{ note }} est négatif ! {{ note }} est négatif !
@ -13,7 +13,7 @@ Par ailleurs, le BDE ne sert pas d'alcool aux adhérents dont le solde
est inférieur à 0 € depuis plus de 24h. est inférieur à 0 € depuis plus de 24h.
Si tu ne comprends pas ton solde, tu peux consulter ton historique Si tu ne comprends pas ton solde, tu peux consulter ton historique
sur ton compte {{ "NOTE_URL"|getenv }}{% url "member:user_detail" pk=note.user.pk %} sur ton compte {{ "NOTE_URL"|getenv }}{% if note.user %}{% url "member:user_detail" pk=note.user.pk %}{% else %}{% url "member:club_detail" pk=note.club.pk %}{% endif %}
Tu peux venir recharger ta note rapidement à la Kfet, ou envoyer un mail à Tu peux venir recharger ta note rapidement à la Kfet, ou envoyer un mail à
la trésorerie du BdE (tresorerie.bde@lists.crans.org) pour payer par la trésorerie du BdE (tresorerie.bde@lists.crans.org) pour payer par