mirror of
https://github.com/pretix/pretix.git
synced 2026-08-03 09:37:51 +00:00
code style
This commit is contained in:
@@ -82,8 +82,10 @@ class WaitingListEntryEditForm(I18nModelForm):
|
||||
|
||||
items = self.event.items.prefetch_related('variations').prefetch_related('quotas')
|
||||
for item in items:
|
||||
if not item.allow_waitinglist | item.quotas.exists(): # don't offer items in the selection if they don't allow waitinglists or aren't on sale at all
|
||||
if not self.instance.item.pk == item.pk: # except if they are currently set in the waitinglist, this will be then caught on submit in the clean step
|
||||
# don't offer items in the selection if they don't allow waitinglists or aren't on sale at all
|
||||
if not item.allow_waitinglist | item.quotas.exists():
|
||||
# except if they are currently set in the waitinglist, this will be then caught on submit in the clean step
|
||||
if not self.instance.item.pk == item.pk:
|
||||
continue
|
||||
|
||||
if len(item.variations.all()) > 0:
|
||||
|
||||
@@ -478,7 +478,7 @@ urlpatterns = [
|
||||
name='event.orders.waitinglist.delete'),
|
||||
re_path(r'^waitinglist/(?P<entry>\d+)/edit$', waitinglist.EntryEdit.as_view(),
|
||||
name='event.orders.waitinglist.edit'),
|
||||
re_path(r'^waitinglist/(?P<entry>\d+)/transfer$', waitinglist.EntryEdit.as_view(), # alias of /edit
|
||||
re_path(r'^waitinglist/(?P<entry>\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'),
|
||||
|
||||
@@ -53,9 +53,7 @@ from pretix.base.models import Item, LogEntry, Quota, WaitingListEntry
|
||||
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 (
|
||||
WaitingListEntryEditForm,
|
||||
)
|
||||
from pretix.control.forms.waitinglist import WaitingListEntryEditForm
|
||||
from pretix.control.permissions import EventPermissionRequiredMixin
|
||||
from pretix.control.views import PaginationMixin
|
||||
|
||||
@@ -401,6 +399,7 @@ class EntryDelete(EventPermissionRequiredMixin, CompatDeleteView):
|
||||
'organizer': self.request.event.organizer.slug
|
||||
})
|
||||
|
||||
|
||||
class EntryEdit(EventPermissionRequiredMixin, UpdateView):
|
||||
model = WaitingListEntry
|
||||
template_name = 'pretixcontrol/waitinglist/edit.html'
|
||||
|
||||
@@ -56,11 +56,8 @@ def env():
|
||||
event.settings.set('waiting_list_names_asked', False)
|
||||
event.settings.set('waiting_list_names_required', False)
|
||||
user = User.objects.create_user('dummy@dummy.dummy', 'dummy')
|
||||
item1 = Item.objects.create(event=event, name="Ticket", default_price=23,
|
||||
admission=True, allow_waitinglist=True)
|
||||
item2 = Item.objects.create(event=event, name="Ticket", default_price=23,
|
||||
admission=True)
|
||||
|
||||
item1 = Item.objects.create(event=event, name="Ticket", default_price=23, admission=True, allow_waitinglist=True)
|
||||
item2 = Item.objects.create(event=event, name="Ticket", default_price=23, admission=True)
|
||||
|
||||
for i in range(5):
|
||||
WaitingListEntry.objects.create(
|
||||
@@ -198,8 +195,7 @@ def test_delete_bulk(client, env):
|
||||
@pytest.mark.django_db
|
||||
def test_edit(client, env):
|
||||
event = env[0]
|
||||
item = Item.objects.create(event=event, name="Ticket", default_price=23,
|
||||
admission=True, allow_waitinglist=True)
|
||||
item = Item.objects.create(event=event, name="Ticket", default_price=23, admission=True, allow_waitinglist=True)
|
||||
quota = Quota.objects.create(event=event)
|
||||
quota.items.add(item)
|
||||
|
||||
@@ -221,12 +217,12 @@ def test_edit(client, env):
|
||||
)
|
||||
assert response.wsgi_request.path == '/control/event/dummy/dummy/waitinglist/'
|
||||
|
||||
|
||||
@pytest.mark.django_db
|
||||
def test_edit_itemvariation(client, env):
|
||||
event = env[0]
|
||||
|
||||
item = Item.objects.create(event=event, name="Ticket", default_price=23,
|
||||
admission=True, allow_waitinglist=True)
|
||||
item = Item.objects.create(event=event, name="Ticket", default_price=23, admission=True, allow_waitinglist=True)
|
||||
variation = ItemVariation.objects.create(item=item)
|
||||
quota = Quota.objects.create(event=event)
|
||||
quota.items.add(item)
|
||||
@@ -257,8 +253,7 @@ def test_edit_itemvariation(client, env):
|
||||
def test_edit_voucher_send_out(client, env):
|
||||
event = env[0]
|
||||
|
||||
item = Item.objects.create(event=event, name="Ticket", default_price=23,
|
||||
admission=True, allow_waitinglist=True)
|
||||
item = Item.objects.create(event=event, name="Ticket", default_price=23, admission=True, allow_waitinglist=True)
|
||||
|
||||
quota = Quota.objects.create(event=event, size=100)
|
||||
quota.items.add(item)
|
||||
@@ -281,13 +276,12 @@ def test_edit_voucher_send_out(client, env):
|
||||
)
|
||||
assert response.status_code == 404
|
||||
|
||||
|
||||
@pytest.mark.django_db
|
||||
def test_edit_item_without_waitinglist(client, env):
|
||||
event = env[0]
|
||||
item = Item.objects.create(event=event, name="Ticket", default_price=23,
|
||||
admission=True, allow_waitinglist=True)
|
||||
item_without_waitinglist = Item.objects.create(event=event, name="Ticket", default_price=23,
|
||||
admission=True, allow_waitinglist=False)
|
||||
item = Item.objects.create(event=event, name="Ticket", default_price=23, admission=True, allow_waitinglist=True)
|
||||
item_without_waitinglist = Item.objects.create(event=event, name="Ticket", default_price=23, admission=True, allow_waitinglist=False)
|
||||
quota = Quota.objects.create(event=event)
|
||||
quota.items.add(item)
|
||||
quota.items.add(item_without_waitinglist)
|
||||
@@ -310,17 +304,15 @@ def test_edit_item_without_waitinglist(client, env):
|
||||
)
|
||||
assert response.context['form'].errors == {'itemvar': ["The selected product does not allow waiting list entries."]}
|
||||
|
||||
|
||||
@pytest.mark.django_db
|
||||
def test_edit_item_without_quota(client, env):
|
||||
event = env[0]
|
||||
item = Item.objects.create(event=event, name="Ticket", default_price=23,
|
||||
admission=True, allow_waitinglist=True)
|
||||
item_without_waitinglist = Item.objects.create(event=event, name="Ticket", default_price=23,
|
||||
admission=True, allow_waitinglist=True)
|
||||
item = Item.objects.create(event=event, name="Ticket", default_price=23, admission=True, allow_waitinglist=True)
|
||||
item_without_waitinglist = Item.objects.create(event=event, name="Ticket", default_price=23, admission=True, allow_waitinglist=True)
|
||||
quota = Quota.objects.create(event=event)
|
||||
quota.items.add(item)
|
||||
|
||||
|
||||
client.login(email='dummy@dummy.dummy', password='dummy')
|
||||
with scopes_disabled():
|
||||
wle = WaitingListEntry.objects.create(
|
||||
@@ -339,6 +331,7 @@ def test_edit_item_without_quota(client, env):
|
||||
)
|
||||
assert response.context['form'].errors == {'itemvar': ["The selected product is not on sale because there is no quota configured for it."]}
|
||||
|
||||
|
||||
@pytest.mark.django_db
|
||||
def test_dashboard(client, env):
|
||||
with scopes_disabled():
|
||||
|
||||
Reference in New Issue
Block a user