Adds functionality for sending nag e-mails
This commit is contained in:
parent
051a942ffe
commit
19b59d7676
2 changed files with 21 additions and 1 deletions
|
@ -402,7 +402,9 @@ class InvoiceNagForm(forms.Form):
|
||||||
widget=forms.CheckboxSelectMultiple,
|
widget=forms.CheckboxSelectMultiple,
|
||||||
queryset=commerce.Invoice.objects.all(),
|
queryset=commerce.Invoice.objects.all(),
|
||||||
)
|
)
|
||||||
message = forms.CharField(
|
from_email = forms.CharField()
|
||||||
|
subject = forms.CharField()
|
||||||
|
body = forms.CharField(
|
||||||
widget=forms.Textarea,
|
widget=forms.Textarea,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
@ -26,9 +26,11 @@ from django.contrib.auth.models import User
|
||||||
from django.contrib import messages
|
from django.contrib import messages
|
||||||
from django.core.exceptions import ObjectDoesNotExist
|
from django.core.exceptions import ObjectDoesNotExist
|
||||||
from django.core.exceptions import ValidationError
|
from django.core.exceptions import ValidationError
|
||||||
|
from django.core.mail import send_mass_mail
|
||||||
from django.http import Http404
|
from django.http import Http404
|
||||||
from django.shortcuts import redirect
|
from django.shortcuts import redirect
|
||||||
from django.shortcuts import render
|
from django.shortcuts import render
|
||||||
|
from django.template import Context, Template
|
||||||
|
|
||||||
|
|
||||||
_GuidedRegistrationSection = namedtuple(
|
_GuidedRegistrationSection = namedtuple(
|
||||||
|
@ -931,6 +933,22 @@ def nag_unpaid(request):
|
||||||
product=product,
|
product=product,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
if form.is_valid():
|
||||||
|
emails = []
|
||||||
|
for invoice in form.cleaned_data["invoice"]:
|
||||||
|
# datatuple = (subject, message, from_email, recipient_list)
|
||||||
|
from_email = form.cleaned_data["from_email"]
|
||||||
|
subject = form.cleaned_data["subject"]
|
||||||
|
body = Template(form.cleaned_data["body"]).render(
|
||||||
|
Context({
|
||||||
|
"invoice" : invoice,
|
||||||
|
})
|
||||||
|
)
|
||||||
|
recipient_list = [invoice.user.email]
|
||||||
|
emails.append((subject, body, from_email, recipient_list))
|
||||||
|
send_mass_mail(emails)
|
||||||
|
messages.info(request, "The e-mails have been sent.")
|
||||||
|
|
||||||
data = {
|
data = {
|
||||||
"form": form,
|
"form": form,
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue