mirror of
https://github.com/pretix/pretix.git
synced 2026-05-05 15:14:04 +00:00
Fix bulk edit of revoked devices (Z#23187227) (#4960)
When selecting revoked devices and using bulk edit on them, the edit was performed either *on all active devices* or not at all. This commit fixes that behaviour so that the selected devices are edited.
This commit is contained in:
@@ -44,7 +44,9 @@ import dateutil
|
|||||||
from django import forms
|
from django import forms
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from django.contrib import messages
|
from django.contrib import messages
|
||||||
from django.core.exceptions import PermissionDenied, ValidationError
|
from django.core.exceptions import (
|
||||||
|
BadRequest, PermissionDenied, ValidationError,
|
||||||
|
)
|
||||||
from django.core.files import File
|
from django.core.files import File
|
||||||
from django.db import transaction
|
from django.db import transaction
|
||||||
from django.db.models import (
|
from django.db.models import (
|
||||||
@@ -944,13 +946,16 @@ class DeviceQueryMixin:
|
|||||||
qs = self.request.organizer.devices.prefetch_related(
|
qs = self.request.organizer.devices.prefetch_related(
|
||||||
'limit_events', 'gate',
|
'limit_events', 'gate',
|
||||||
).order_by('revoked', '-device_id')
|
).order_by('revoked', '-device_id')
|
||||||
if self.filter_form.is_valid():
|
|
||||||
qs = self.filter_form.filter_qs(qs)
|
|
||||||
|
|
||||||
if 'device' in self.request_data and '__ALL' not in self.request_data:
|
if 'device' in self.request_data and '__ALL' not in self.request_data:
|
||||||
qs = qs.filter(
|
qs = qs.filter(
|
||||||
id__in=self.request_data.getlist('device')
|
id__in=self.request_data.getlist('device')
|
||||||
)
|
)
|
||||||
|
elif self.request.method == 'GET' or '__ALL' in self.request_data:
|
||||||
|
if self.filter_form.is_valid():
|
||||||
|
qs = self.filter_form.filter_qs(qs)
|
||||||
|
else:
|
||||||
|
raise BadRequest("No devices selected")
|
||||||
|
|
||||||
return qs
|
return qs
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user