From 300f8f666d84ad12bea6c755de5b60fb143ecdb2 Mon Sep 17 00:00:00 2001 From: Raphael Michel Date: Mon, 1 May 2017 22:57:29 +0200 Subject: [PATCH] Automatically sort new products to the end --- src/pretix/control/views/item.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/pretix/control/views/item.py b/src/pretix/control/views/item.py index 610284c930..661fc4920f 100644 --- a/src/pretix/control/views/item.py +++ b/src/pretix/control/views/item.py @@ -4,7 +4,7 @@ from django.contrib import messages from django.core.files import File from django.core.urlresolvers import resolve, reverse from django.db import transaction -from django.db.models import Count, F, Q +from django.db.models import Count, F, Max, Q from django.forms.models import ModelMultipleChoiceField, inlineformset_factory from django.http import Http404, HttpResponseRedirect from django.shortcuts import redirect @@ -72,7 +72,7 @@ def item_move(request, item, up=True): if item.position != i: item.position = i item.save() - messages.success(request, _('The order of items as been updated.')) + messages.success(request, _('The order of items has been updated.')) @event_permission_required("can_change_items") @@ -803,6 +803,8 @@ class ItemCreate(EventPermissionRequiredMixin, CreateView): form.instance.min_per_order = form.cleaned_data['copy_from'].min_per_order form.instance.max_per_order = form.cleaned_data['copy_from'].max_per_order + form.instance.position = (self.request.event.items.aggregate(p=Max('position'))['p'] or 0) + 1 + ret = super().form_valid(form) form.instance.log_action('pretix.event.item.added', user=self.request.user, data={ k: (form.cleaned_data.get(k).name