Fix #172 -- Add a filter for overdue orders (#216)

This commit is contained in:
Tobias Kunze
2016-08-29 19:16:49 +02:00
committed by Raphael Michel
parent 7cbc497737
commit 9548dc69a7
2 changed files with 5 additions and 1 deletions

View File

@@ -39,6 +39,7 @@
<option value="">{% trans "All orders" %}</option>
<option value="p" {% if request.GET.status == "p" %}selected="selected"{% endif %}>{% trans "Paid" %}</option>
<option value="n" {% if request.GET.status == "n" %}selected="selected"{% endif %}>{% trans "Pending" %}</option>
<option value="o" {% if request.GET.status == "o" %}selected="selected"{% endif %}>{% trans "Pending (overdue)" %}</option>
<option value="e" {% if request.GET.status == "e" %}selected="selected"{% endif %}>{% trans "Pending (expired)" %}</option>
<option value="c" {% if request.GET.status == "c" %}selected="selected"{% endif %}>{% trans "Cancelled" %}</option>
<option value="r" {% if request.GET.status == "r" %}selected="selected"{% endif %}>{% trans "Refunded" %}</option>

View File

@@ -51,7 +51,10 @@ class OrderList(EventPermissionRequiredMixin, ListView):
)
if self.request.GET.get("status", "") != "":
s = self.request.GET.get("status", "")
qs = qs.filter(status=s)
if s == 'o':
qs = qs.filter(status=Order.STATUS_PENDING, expires__lt=now())
else:
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()