From d2d77f28aa5c380e68594e1ce11c69eb06331b28 Mon Sep 17 00:00:00 2001 From: Raphael Michel Date: Mon, 24 Jul 2017 09:14:54 +0200 Subject: [PATCH] Fix wrongly displayed download buttons --- .../presale/templates/pretixpresale/event/fragment_cart.html | 2 +- src/pretix/presale/views/order.py | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/pretix/presale/templates/pretixpresale/event/fragment_cart.html b/src/pretix/presale/templates/pretixpresale/event/fragment_cart.html index 7c7459ddb8..f0c5484a0d 100644 --- a/src/pretix/presale/templates/pretixpresale/event/fragment_cart.html +++ b/src/pretix/presale/templates/pretixpresale/event/fragment_cart.html @@ -130,7 +130,7 @@ {% endif %} {% endif %} - {% if download %} + {% if download and line.item.admission|default:event.settings.ticket_download_nonadm %}
{% if not line.addon_to or event.settings.ticket_download_addons %} {% for b in download_buttons %} diff --git a/src/pretix/presale/views/order.py b/src/pretix/presale/views/order.py index bac26cfc69..8dac0d305d 100644 --- a/src/pretix/presale/views/order.py +++ b/src/pretix/presale/views/order.py @@ -94,12 +94,15 @@ class OrderDetails(EventViewMixin, OrderDetailMixin, CartMixin, TemplateView): ) and self.order.status == Order.STATUS_PAID ) ctx['download_buttons'] = self.download_buttons - ctx['can_download_multi'] = any([b['multi'] for b in self.download_buttons]) ctx['cart'] = self.get_cart( answers=True, downloads=ctx['can_download'], queryset=self.order.positions.all(), payment_fee=self.order.payment_fee, payment_fee_tax_rate=self.order.payment_fee_tax_rate ) + ctx['can_download_multi'] = any([b['multi'] for b in self.download_buttons]) and ( + self.request.event.settings.ticket_download_nonadm or + any([p.item.admission for p in ctx['cart']['positions']]) + ) ctx['invoices'] = list(self.order.invoices.all()) ctx['can_generate_invoice'] = invoice_qualified(self.order) and ( self.request.event.settings.invoice_generate == 'user'