mirror of
https://framagit.org/la-chariotte/la-chariotte.git
synced 2025-04-30 19:02:38 +02:00
add plain text alternative to mail
This commit is contained in:
parent
4885025e99
commit
8c4f45ac0d
6 changed files with 16 additions and 7 deletions
|
@ -62,7 +62,7 @@ source .venv/bin/activate
|
|||
|
||||
### Installation de la base de données
|
||||
|
||||
Chariotte nécessite une base de données, et est actuellement compatible avec PostgreSQL ([instructions d'installation ici](https://www.digitalocean.com/community/tutorials/how-to-install-postgresql-on-ubuntu-20-04-quickstart)).
|
||||
La Chariotte nécessite une base de données, et est actuellement compatible avec PostgreSQL ([instructions d'installation ici](https://www.digitalocean.com/community/tutorials/how-to-install-postgresql-on-ubuntu-20-04-quickstart)).
|
||||
|
||||
Pour le développement, nous vous conseillons de créer une base de données nommée ```chariotte``` accessible par l'utilisateur et le mot de passe du même nom.
|
||||
|
||||
|
|
|
@ -33,5 +33,7 @@ def simple_grouped_order(other_user):
|
|||
delivery_date=date,
|
||||
deadline=deadline,
|
||||
)
|
||||
grouped_order.create_code_from_pk()
|
||||
grouped_order.save()
|
||||
item = Item.objects.create(name="test item", grouped_order=grouped_order, price=2)
|
||||
return grouped_order
|
||||
|
|
|
@ -20,9 +20,7 @@
|
|||
<a href="mailto:{{ order.grouped_order.orga.username }}">Envoyer un mail</a></p>
|
||||
|
||||
<div class="buttons">
|
||||
<a class="button" href="[[ base_url }}{% url 'order:grouped_order_detail' order.grouped_order.pk %}">
|
||||
<i class="fa fa-arrow-left mr-3" aria-hidden="true"></i>Voir la page de commande
|
||||
</a>
|
||||
<a class="button" href="{{ base_url }}{% url 'order:grouped_order_detail' order.grouped_order.pk %}">Voir la page de commande</a>
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
|
@ -17,7 +17,7 @@ def test_send_order_confirmation_mail(mailoutbox, simple_grouped_order, client):
|
|||
order_url = reverse(
|
||||
"order:order",
|
||||
kwargs={
|
||||
"grouped_order_id": simple_grouped_order.pk,
|
||||
"code": simple_grouped_order.code,
|
||||
},
|
||||
)
|
||||
response = client.post(
|
||||
|
@ -34,7 +34,8 @@ def test_send_order_confirmation_mail(mailoutbox, simple_grouped_order, client):
|
|||
assert len(mailoutbox) == 1
|
||||
m = mailoutbox[0]
|
||||
assert (
|
||||
m.subject == f"[{settings.PROJECT_NAME}] Votre commande pour Test grouped order"
|
||||
m.subject
|
||||
== f"[{settings.PROJECT_NAME}] Votre commande pour «Test grouped order»"
|
||||
)
|
||||
assert f"{settings.BASE_URL}" in m.alternatives[0][0]
|
||||
assert m.alternatives[0][1] == "text/html"
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
import html2text
|
||||
from django.core import mail
|
||||
from django.template.loader import render_to_string
|
||||
from django.utils.html import strip_tags
|
||||
|
@ -14,7 +15,12 @@ def send_order_confirmation_mail(order):
|
|||
html_message = render_to_string(
|
||||
template_name, {"order": order, "base_url": settings.BASE_URL}
|
||||
)
|
||||
plain_message = strip_tags(html_message)
|
||||
|
||||
# create plain message text from html
|
||||
plain_message = html2text.html2text(html_message)
|
||||
# do not render the logo link
|
||||
plain_message = plain_message[plain_message.rfind("Merci,") :]
|
||||
|
||||
from_email = settings.DEFAULT_FROM_EMAIL
|
||||
to = order.author.email
|
||||
|
||||
|
|
|
@ -33,6 +33,8 @@ cssselect2==0.7.0
|
|||
# via svglib
|
||||
django==4.2.1
|
||||
# via la-chariotte (pyproject.toml)
|
||||
html2text==2020.1.16
|
||||
# à la main
|
||||
html5lib==1.1
|
||||
# via xhtml2pdf
|
||||
idna==3.4
|
||||
|
|
Loading…
Reference in a new issue