Files
pretix_cgo/src/pretix/control/views/attendees.py
2016-03-10 15:36:18 +01:00

31 lines
1.1 KiB
Python

from django.views.generic import ListView
from pretix.base.models import Item, OrderPosition
from pretix.control.permissions import EventPermissionRequiredMixin
class AttendeeList(EventPermissionRequiredMixin, ListView):
model = OrderPosition
context_object_name = 'attendees'
template_name = 'pretixcontrol/attendees/index.html'
paginate_by = 30
permission = 'can_view_orders'
def get_queryset(self):
qs = OrderPosition.objects.filter(
order__event=self.request.event,
item__admission=True
).select_related('order')
if self.request.GET.get("status", "") != "":
s = self.request.GET.get("status", "")
qs = qs.filter(order__status=s)
if self.request.GET.get("item", "") != "":
i = self.request.GET.get("item", "")
qs = qs.filter(item_id__in=(i,)).distinct()
return qs
def get_context_data(self, **kwargs):
ctx = super().get_context_data(**kwargs)
ctx['items'] = Item.objects.filter(event=self.request.event, admission=True)
return ctx