@@ -37,11 +38,31 @@
{% for item in tup.1 %}
| {{ item.name }} |
- {{ item.num_total|togglesum }} |
- {{ item.num_pending|togglesum }} |
- {{ item.num_cancelled|togglesum }} |
- {{ item.num_refunded|togglesum }} |
- {{ item.num_paid|togglesum }} |
+
+
+ {{ item.num_total|togglesum }}
+
+ |
+
+
+ {{ item.num_pending|togglesum }}
+
+ |
+
+
+ {{ item.num_cancelled|togglesum }}
+
+ |
+
+
+ {{ item.num_refunded|togglesum }}
+
+ |
+
+
+ {{ item.num_paid|togglesum }}
+
+ |
{% if item.has_variations %}
{% for var in item.all_variations %}
diff --git a/src/pretix/control/views/orders.py b/src/pretix/control/views/orders.py
index 81cae8c41..9710edaa7 100644
--- a/src/pretix/control/views/orders.py
+++ b/src/pretix/control/views/orders.py
@@ -8,7 +8,7 @@ from django.http import HttpResponse
from django.shortcuts import redirect, render
from django.utils.functional import cached_property
from django.views.generic import ListView, DetailView, TemplateView, View
-from pretix.base.models import Order, Quota, OrderPosition, ItemCategory
+from pretix.base.models import Order, Quota, OrderPosition, ItemCategory, Item
from pretix.base.services.orders import mark_order_paid
from pretix.base.signals import register_payment_providers
from pretix.control.forms.orders import ExtendForm
@@ -35,8 +35,16 @@ class OrderList(EventPermissionRequiredMixin, ListView):
if self.request.GET.get("status", "") != "":
s = self.request.GET.get("status", "")
qs = qs.filter(status=s)
+ if self.request.GET.get("item", "") != "":
+ i = self.request.GET.get("item", "")
+ qs = qs.filter(positions__item_id__in=(i,)).distinct()
return qs.select_related("user")
+ def get_context_data(self, **kwargs):
+ ctx = super().get_context_data(**kwargs)
+ ctx['items'] = Item.objects.current.filter(event=self.request.event)
+ return ctx
+
class OrderView(EventPermissionRequiredMixin, DetailView):
context_object_name = 'order'