From 767e67914009e53efa0690a78bb1448040cbd54a Mon Sep 17 00:00:00 2001
From: Raphael Michel
Date: Thu, 17 Oct 2019 17:07:59 +0200
Subject: [PATCH] Show issued gift card in order view
---
.../templates/pretixcontrol/order/index.html | 8 ++++++++
.../pretixcontrol/organizers/giftcards.html | 17 ++++++++---------
src/pretix/control/views/orders.py | 2 +-
.../pretixpresale/event/fragment_cart.html | 9 ++++++++-
src/pretix/presale/views/order.py | 2 +-
5 files changed, 26 insertions(+), 12 deletions(-)
diff --git a/src/pretix/control/templates/pretixcontrol/order/index.html b/src/pretix/control/templates/pretixcontrol/order/index.html
index 6e09438d7..62b270c80 100644
--- a/src/pretix/control/templates/pretixcontrol/order/index.html
+++ b/src/pretix/control/templates/pretixcontrol/order/index.html
@@ -310,6 +310,14 @@
{% eventsignal event "pretix.control.signals.order_position_buttons" order=order position=line request=request %}
{% endif %}
+ {% if line.issued_gift_cards %}
+
+ {% for gc in line.issued_gift_cards.all %}
+ - {% trans "Gift card code" %}
+ - {{ gc.secret }}
+ {% endfor %}
+
+ {% endif %}
{% if line.has_questions %}
{% if line.item.admission and event.settings.attendee_names_asked %}
diff --git a/src/pretix/control/templates/pretixcontrol/organizers/giftcards.html b/src/pretix/control/templates/pretixcontrol/organizers/giftcards.html
index b933bde8a..3d3eea518 100644
--- a/src/pretix/control/templates/pretixcontrol/organizers/giftcards.html
+++ b/src/pretix/control/templates/pretixcontrol/organizers/giftcards.html
@@ -85,7 +85,6 @@
{% endblocktrans %}
-
{% for gca in request.organizer.gift_card_issuer_acceptance.all %}
-
{{ gca.issuer }}
@@ -98,17 +97,17 @@
{% trans "You are currently not accepting gift cards from other organizers." %}
{% endfor %}
- -
{% if other_organizers %}
-
-
-
+
+ {% for o in other_organizers %}
+
+ {% endfor %}
+
+
+
+ {% endif %}
diff --git a/src/pretix/control/views/orders.py b/src/pretix/control/views/orders.py
index b0004f061..baeb225a4 100644
--- a/src/pretix/control/views/orders.py
+++ b/src/pretix/control/views/orders.py
@@ -237,7 +237,7 @@ class OrderDetail(OrderView):
).select_related(
'item', 'variation', 'addon_to', 'tax_rule'
).prefetch_related(
- 'item__questions',
+ 'item__questions', 'issued_gift_cards',
Prefetch('answers', queryset=QuestionAnswer.objects.prefetch_related('options').select_related('question')),
'checkins', 'checkins__list'
).order_by('positionid')
diff --git a/src/pretix/presale/templates/pretixpresale/event/fragment_cart.html b/src/pretix/presale/templates/pretixpresale/event/fragment_cart.html
index 5488b9f50..d04d7588f 100644
--- a/src/pretix/presale/templates/pretixpresale/event/fragment_cart.html
+++ b/src/pretix/presale/templates/pretixpresale/event/fragment_cart.html
@@ -33,7 +33,14 @@
{% endif %}
{% endif %}
-
+ {% if line.issued_gift_cards %}
+
+ {% for gc in line.issued_gift_cards.all %}
+ - {% trans "Gift card code" %}
+ - {{ gc.secret }}
+ {% endfor %}
+
+ {% endif %}
{% if line.has_questions %}
{% if line.item.admission and event.settings.attendee_names_asked %}
diff --git a/src/pretix/presale/views/order.py b/src/pretix/presale/views/order.py
index e133d065f..146ef3b59 100644
--- a/src/pretix/presale/views/order.py
+++ b/src/pretix/presale/views/order.py
@@ -163,7 +163,7 @@ class OrderDetails(EventViewMixin, OrderDetailMixin, CartMixin, TicketPageMixin,
ctx = super().get_context_data(**kwargs)
ctx['cart'] = self.get_cart(
answers=True, downloads=ctx['can_download'],
- queryset=self.order.positions.select_related('tax_rule'),
+ queryset=self.order.positions.prefetch_related('issued_gift_cards').select_related('tax_rule'),
order=self.order
)
ctx['can_download_multi'] = any([b['multi'] for b in self.download_buttons]) and (