mirror of
https://framagit.org/la-chariotte/la-chariotte.git
synced 2025-05-05 13:21:49 +02:00
confirmation page after a user orders
This commit is contained in:
parent
27dd27227b
commit
49df3498d9
5 changed files with 52 additions and 4 deletions
|
@ -24,7 +24,7 @@
|
|||
<ul>
|
||||
{% for order in grouped_order.order_set.all %}
|
||||
<li>
|
||||
{{ order }} : {{ order.articles_nb }}
|
||||
{{ order }} : {{ order.articles_nb }} : order_id = {{ order.id }}
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
|
|
35
la_chariotte/order/templates/order/order_detail.html
Normal file
35
la_chariotte/order/templates/order/order_detail.html
Normal file
|
@ -0,0 +1,35 @@
|
|||
{% extends 'base.html' %}
|
||||
|
||||
{% block title %}Votre commande{% endblock %}
|
||||
|
||||
{% block content_title %}Commande confirmée !{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<div class="box">
|
||||
<p class="title">Merci !</p>
|
||||
<p>Votre participation à la commande groupée "{{ order.grouped_order }}" a bien été confirmée !
|
||||
Dans une prochaine version de la Chariotte, vous recevrez un mail de confirmation :)</p>
|
||||
<p>En attendant, vous pouvez bien noter ces infos :</p>
|
||||
|
||||
<p><strong>Votre commande</strong></p>
|
||||
<ul>
|
||||
{% for item in order.ordered_items.all %}
|
||||
{% if item.nb > 0 %}
|
||||
<li>{{ item.nb }} {{ item.item }}</li>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</ul>
|
||||
|
||||
<p>Rendez-vous le <strong>{{ order.grouped_order.delivery_date }}</strong> à <strong>{{ order.grouped_order.place }}</strong> pour récupérer vos produits !</p>
|
||||
|
||||
<p>Pour toute question, vous pouvez contacter l'organisateur·ice de la commande, <strong>{{ order.grouped_order.orga }}</strong> :
|
||||
<a href="mailto:{{ order.grouped_order.orga.username }}">Envoyer un mail</a></p>
|
||||
|
||||
<div class="buttons">
|
||||
<a class="button is-primary" href="{% url 'order:grouped_order_detail' order.grouped_order.pk %}">Retour à la page de commande</a>
|
||||
{% if user == order.grouped_order.orga %}
|
||||
<a class="button is-primary is-light" href="{% url 'order:grouped_order_overview' order.grouped_order.pk %}">Page de gestion de la commande</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
|
@ -249,10 +249,12 @@ class TestGroupedOrderDetailView:
|
|||
},
|
||||
)
|
||||
assert response.status_code == 302
|
||||
order = Order.objects.get(grouped_order=grouped_order.pk)
|
||||
assert response.url == reverse(
|
||||
"order:grouped_order_overview",
|
||||
"order:order_confirm",
|
||||
kwargs={
|
||||
"pk": grouped_order.pk,
|
||||
"grouped_order_id": grouped_order.pk,
|
||||
"pk": order.pk,
|
||||
},
|
||||
)
|
||||
item.refresh_from_db()
|
||||
|
|
|
@ -14,6 +14,11 @@ urlpatterns = [
|
|||
name="grouped_order_overview",
|
||||
),
|
||||
path("<int:grouped_order_id>/commander/", views.order, name="order"),
|
||||
path(
|
||||
"<int:grouped_order_id>/<int:pk>/confirmation/",
|
||||
views.OrderDetailView.as_view(),
|
||||
name="order_confirm",
|
||||
),
|
||||
path("creer", views.GroupedOrderCreateView.as_view(), name="create_grouped_order"),
|
||||
path(
|
||||
"<int:pk>/gerer-produits",
|
||||
|
|
|
@ -156,7 +156,7 @@ def order(request, grouped_order_id):
|
|||
# with POST data. This prevents data from being posted twice if a
|
||||
# user hits the Back button.
|
||||
return HttpResponseRedirect(
|
||||
reverse("order:grouped_order_overview", args=(grouped_order.pk,))
|
||||
reverse("order:order_confirm", args=(grouped_order.pk, order.pk))
|
||||
)
|
||||
|
||||
|
||||
|
@ -176,3 +176,9 @@ def compute_order_articles_nb(order):
|
|||
articles_nb += ord_item.nb
|
||||
order.articles_nb = articles_nb
|
||||
order.save()
|
||||
|
||||
|
||||
class OrderDetailView(generic.DetailView):
|
||||
"""Confirmation page after a user orders"""
|
||||
|
||||
model = Order
|
||||
|
|
Loading…
Reference in a new issue