mirror of
https://github.com/pretix/pretix.git
synced 2026-05-09 15:54:03 +00:00
Permission bypass for superusers
This commit is contained in:
@@ -14,6 +14,8 @@ def event_permission_required(permission):
|
|||||||
if not request.user.is_authenticated: # NOQA
|
if not request.user.is_authenticated: # NOQA
|
||||||
# just a double check, should not ever happen
|
# just a double check, should not ever happen
|
||||||
raise PermissionDenied()
|
raise PermissionDenied()
|
||||||
|
if request.user.is_superuser:
|
||||||
|
return function(request, *args, **kw)
|
||||||
try:
|
try:
|
||||||
perm = EventPermission.objects.get(
|
perm = EventPermission.objects.get(
|
||||||
event=request.event,
|
event=request.event,
|
||||||
@@ -28,7 +30,7 @@ def event_permission_required(permission):
|
|||||||
allowed = getattr(perm, permission)
|
allowed = getattr(perm, permission)
|
||||||
except AttributeError:
|
except AttributeError:
|
||||||
pass
|
pass
|
||||||
if allowed:
|
if allowed or request.user.is_superuser:
|
||||||
return function(request, *args, **kw)
|
return function(request, *args, **kw)
|
||||||
raise PermissionDenied(_('You do not have permission to view this content.'))
|
raise PermissionDenied(_('You do not have permission to view this content.'))
|
||||||
return wrapper
|
return wrapper
|
||||||
@@ -58,6 +60,8 @@ def organizer_permission_required(permission):
|
|||||||
if not request.user.is_authenticated: # NOQA
|
if not request.user.is_authenticated: # NOQA
|
||||||
# just a double check, should not ever happen
|
# just a double check, should not ever happen
|
||||||
raise PermissionDenied()
|
raise PermissionDenied()
|
||||||
|
if request.user.is_superuser:
|
||||||
|
return function(request, *args, **kw)
|
||||||
try:
|
try:
|
||||||
perm = OrganizerPermission.objects.get(
|
perm = OrganizerPermission.objects.get(
|
||||||
organizer=request.organizer,
|
organizer=request.organizer,
|
||||||
|
|||||||
Reference in New Issue
Block a user