mirror of
https://framagit.org/la-chariotte/la-chariotte.git
synced 2025-05-05 21:31:50 +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>
|
<ul>
|
||||||
{% for order in grouped_order.order_set.all %}
|
{% for order in grouped_order.order_set.all %}
|
||||||
<li>
|
<li>
|
||||||
{{ order }} : {{ order.articles_nb }}
|
{{ order }} : {{ order.articles_nb }} : order_id = {{ order.id }}
|
||||||
</li>
|
</li>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</ul>
|
</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
|
assert response.status_code == 302
|
||||||
|
order = Order.objects.get(grouped_order=grouped_order.pk)
|
||||||
assert response.url == reverse(
|
assert response.url == reverse(
|
||||||
"order:grouped_order_overview",
|
"order:order_confirm",
|
||||||
kwargs={
|
kwargs={
|
||||||
"pk": grouped_order.pk,
|
"grouped_order_id": grouped_order.pk,
|
||||||
|
"pk": order.pk,
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
item.refresh_from_db()
|
item.refresh_from_db()
|
||||||
|
|
|
@ -14,6 +14,11 @@ urlpatterns = [
|
||||||
name="grouped_order_overview",
|
name="grouped_order_overview",
|
||||||
),
|
),
|
||||||
path("<int:grouped_order_id>/commander/", views.order, name="order"),
|
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("creer", views.GroupedOrderCreateView.as_view(), name="create_grouped_order"),
|
||||||
path(
|
path(
|
||||||
"<int:pk>/gerer-produits",
|
"<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
|
# with POST data. This prevents data from being posted twice if a
|
||||||
# user hits the Back button.
|
# user hits the Back button.
|
||||||
return HttpResponseRedirect(
|
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
|
articles_nb += ord_item.nb
|
||||||
order.articles_nb = articles_nb
|
order.articles_nb = articles_nb
|
||||||
order.save()
|
order.save()
|
||||||
|
|
||||||
|
|
||||||
|
class OrderDetailView(generic.DetailView):
|
||||||
|
"""Confirmation page after a user orders"""
|
||||||
|
|
||||||
|
model = Order
|
||||||
|
|
Loading…
Reference in a new issue