|
|
@@ -89,7 +89,10 @@ class OrderListView(ListView, BulkEditMixin):
|
|
89
|
89
|
Build the queryset for this list and also update the title that
|
|
90
|
90
|
describes the queryset
|
|
91
|
91
|
"""
|
|
|
92
|
+
|
|
92
|
93
|
queryset = self.model.objects.all().order_by('-date_placed')
|
|
|
94
|
+ queryset = self.sort_queryset(queryset)
|
|
|
95
|
+
|
|
93
|
96
|
self.description = self.base_description
|
|
94
|
97
|
|
|
95
|
98
|
# Look for shortcut query filters
|
|
|
@@ -167,6 +170,17 @@ class OrderListView(ListView, BulkEditMixin):
|
|
167
|
170
|
|
|
168
|
171
|
return queryset
|
|
169
|
172
|
|
|
|
173
|
+ def sort_queryset(self, queryset):
|
|
|
174
|
+ sort = self.request.GET.get('sort', None)
|
|
|
175
|
+ allowed_sorts = ['number',]
|
|
|
176
|
+
|
|
|
177
|
+ if sort in allowed_sorts:
|
|
|
178
|
+ direction = self.request.GET.get('dir', 'desc')
|
|
|
179
|
+ sort = ('-' if direction == 'desc' else '') + sort
|
|
|
180
|
+ queryset = queryset.order_by(sort)
|
|
|
181
|
+
|
|
|
182
|
+ return queryset
|
|
|
183
|
+
|
|
170
|
184
|
def get_context_data(self, **kwargs):
|
|
171
|
185
|
ctx = super(OrderListView, self).get_context_data(**kwargs)
|
|
172
|
186
|
ctx['queryset_description'] = self.description
|