Merge branch 'Kerl/registration_less_email_errors' into 'master'

Erreurs de mails lors de l'inscription d'un nouveau membre

Closes #173

See merge request klub-dev-ens/gestioCOF!348
This commit is contained in:
Ludovic Stephan 2019-06-17 22:31:43 +02:00
commit 92ebf0d233
2 changed files with 27 additions and 6 deletions

View file

@ -1,5 +1,7 @@
- On ne peut plus modifier des comptes COF depuis l'interface K-Fêt
- Le champ de paiement BdA se fait au niveau des attributions
- Affiche un message d'erreur plutôt que de crasher si échec de l'envoi du mail
de bienvenue aux nouveaux membres
- On peut supprimer des comptes et des articles K-Fêt
- Passage à Django2
- Dev : on peut désactiver la barre de debug avec une variable shell

View file

@ -1,5 +1,6 @@
import uuid
from datetime import timedelta
from smtplib import SMTPRecipientsRefused
import unicodecsv
from custommail.shortcuts import send_custom_mail
@ -445,6 +446,29 @@ def registration_form2(request, login_clipper=None, username=None, fullname=None
)
def notify_new_member(request, member: User):
if not member.email:
messages.warning(
request,
"GestioCOF n'a pas d'adresse mail pour {}, ".format(member)
+ "aucun email de bienvenue n'a été envoyé",
)
return
# Try to send a welcome email and report SMTP errors
try:
send_custom_mail(
"welcome", "cof@ens.fr", [member.email], context={"member": member}
)
except SMTPRecipientsRefused:
messages.error(
request,
"Error lors de l'envoi de l'email de bienvenue à {} ({})".format(
member, member.email
),
)
@buro_required
def registration(request):
if request.POST:
@ -494,12 +518,7 @@ def registration(request):
# Enregistrement du profil
profile = profile_form.save()
if profile.is_cof and not was_cof:
send_custom_mail(
"welcome",
"cof@ens.fr",
[member.email],
context={"member": member},
)
notify_new_member(request, member)
# Enregistrement des inscriptions aux événements
for form in event_formset:
if "status" not in form.cleaned_data: