From 730a60ba45ec1459a1a1908b3041f23a39e7abd5 Mon Sep 17 00:00:00 2001 From: Lukas Bockstaller Date: Thu, 18 Dec 2025 12:33:52 +0100 Subject: [PATCH] change transfer to edit --- src/pretix/control/forms/waitinglist.py | 3 +-- .../waitinglist/{transfer.html => edit.html} | 6 +++--- .../templates/pretixcontrol/waitinglist/index.html | 4 ++-- src/pretix/control/urls.py | 6 ++++-- src/pretix/control/views/waitinglist.py | 8 ++++---- 5 files changed, 14 insertions(+), 13 deletions(-) rename src/pretix/control/templates/pretixcontrol/waitinglist/{transfer.html => edit.html} (89%) diff --git a/src/pretix/control/forms/waitinglist.py b/src/pretix/control/forms/waitinglist.py index 07fd69645d..213eb2ebb2 100644 --- a/src/pretix/control/forms/waitinglist.py +++ b/src/pretix/control/forms/waitinglist.py @@ -33,7 +33,7 @@ from pretix.base.models import Item, ItemVariation, WaitingListEntry from pretix.control.forms.widgets import Select2, Select2ItemVarQuota -class WaitingListEntryTransferForm(I18nModelForm): +class WaitingListEntryEditForm(I18nModelForm): itemvar = ChoiceField() def __init__(self, *args, **kwargs): @@ -125,7 +125,6 @@ class WaitingListEntryTransferForm(I18nModelForm): if not self.instance.item.allow_waitinglist: self.add_error('itemvar', _('The selected product does not allow waiting list entries.')) - if self.instance.item and not self.instance.item.quotas.filter(subevent=self.data.get('subevent')).exists(): self.add_error('itemvar', _('The selected product is not on sale because there is no quota configured for it.')) if self.instance.variation and not self.instance.variation.quotas.filter(subevent=self.data.get('subevent')).exists(): diff --git a/src/pretix/control/templates/pretixcontrol/waitinglist/transfer.html b/src/pretix/control/templates/pretixcontrol/waitinglist/edit.html similarity index 89% rename from src/pretix/control/templates/pretixcontrol/waitinglist/transfer.html rename to src/pretix/control/templates/pretixcontrol/waitinglist/edit.html index b374ff834c..7790926dac 100644 --- a/src/pretix/control/templates/pretixcontrol/waitinglist/transfer.html +++ b/src/pretix/control/templates/pretixcontrol/waitinglist/edit.html @@ -1,9 +1,9 @@ {% extends "pretixcontrol/event/base.html" %} {% load i18n %} {% load bootstrap3 %} -{% block title %}{% trans "Transfer entry" %}{% endblock %} +{% block title %}{% trans "Edit entry" %}{% endblock %} {% block content %} -

{% trans "Transfer entry" %}

+

{% trans "Edit entry" %}

{% csrf_token %}

{% blocktrans trimmed context "subevent" %} @@ -29,7 +29,7 @@ {% trans "Cancel" %}

diff --git a/src/pretix/control/templates/pretixcontrol/waitinglist/index.html b/src/pretix/control/templates/pretixcontrol/waitinglist/index.html index a0546c7b3e..72202f8ecd 100644 --- a/src/pretix/control/templates/pretixcontrol/waitinglist/index.html +++ b/src/pretix/control/templates/pretixcontrol/waitinglist/index.html @@ -269,8 +269,8 @@ - diff --git a/src/pretix/control/urls.py b/src/pretix/control/urls.py index d310572e30..64a2af31f9 100644 --- a/src/pretix/control/urls.py +++ b/src/pretix/control/urls.py @@ -476,8 +476,10 @@ urlpatterns = [ re_path(r'^waitinglist/auto_assign$', waitinglist.AutoAssign.as_view(), name='event.orders.waitinglist.auto'), re_path(r'^waitinglist/(?P\d+)/delete$', waitinglist.EntryDelete.as_view(), name='event.orders.waitinglist.delete'), - re_path(r'^waitinglist/(?P\d+)/transfer$', waitinglist.EntryTransfer.as_view(), - name='event.orders.waitinglist.transfer'), + re_path(r'^waitinglist/(?P\d+)/edit$', waitinglist.EntryEdit.as_view(), + name='event.orders.waitinglist.edit'), + re_path(r'^waitinglist/(?P\d+)/transfer$', waitinglist.EntryEdit.as_view(), # alias of /edit + name='event.orders.waitinglist.edit'), re_path(r'^checkins/$', checkin.CheckinListView.as_view(), name='event.orders.checkins'), re_path(r'^checkinlists/$', checkin.CheckinListList.as_view(), name='event.orders.checkinlists'), re_path(r'^checkinlists/add$', checkin.CheckinListCreate.as_view(), name='event.orders.checkinlists.add'), diff --git a/src/pretix/control/views/waitinglist.py b/src/pretix/control/views/waitinglist.py index 6b86c9bea0..080117219d 100644 --- a/src/pretix/control/views/waitinglist.py +++ b/src/pretix/control/views/waitinglist.py @@ -54,7 +54,7 @@ from pretix.base.models.waitinglist import WaitingListException from pretix.base.services.waitinglist import assign_automatically from pretix.base.views.tasks import AsyncAction from pretix.control.forms.waitinglist import ( - WaitingListEntryTransferForm, + WaitingListEntryEditForm, ) from pretix.control.permissions import EventPermissionRequiredMixin from pretix.control.views import PaginationMixin @@ -401,11 +401,11 @@ class EntryDelete(EventPermissionRequiredMixin, CompatDeleteView): 'organizer': self.request.event.organizer.slug }) -class EntryTransfer(EventPermissionRequiredMixin, UpdateView): +class EntryEdit(EventPermissionRequiredMixin, UpdateView): model = WaitingListEntry - template_name = 'pretixcontrol/waitinglist/transfer.html' + template_name = 'pretixcontrol/waitinglist/edit.html' permission = 'can_change_orders' - form_class = WaitingListEntryTransferForm + form_class = WaitingListEntryEditForm context_object_name = 'entry' def get_object(self, queryset=None) -> WaitingListEntry: