mirror of
https://github.com/pretix/pretix.git
synced 2026-05-10 16:04:02 +00:00
Add permission for seating plans
This commit is contained in:
@@ -50,6 +50,7 @@ Possible values for ``limit_organizer_permissions`` defined in the core pretix s
|
|||||||
organizer.events:create
|
organizer.events:create
|
||||||
organizer.settings.general:write
|
organizer.settings.general:write
|
||||||
organizer.teams:write
|
organizer.teams:write
|
||||||
|
organizer.seatingplans:write
|
||||||
organizer.giftcards:read
|
organizer.giftcards:read
|
||||||
organizer.giftcards:write
|
organizer.giftcards:write
|
||||||
organizer.customers:read
|
organizer.customers:read
|
||||||
|
|||||||
@@ -154,8 +154,8 @@ class OrganizerViewSet(mixins.UpdateModelMixin, viewsets.ReadOnlyModelViewSet):
|
|||||||
class SeatingPlanViewSet(viewsets.ModelViewSet):
|
class SeatingPlanViewSet(viewsets.ModelViewSet):
|
||||||
serializer_class = SeatingPlanSerializer
|
serializer_class = SeatingPlanSerializer
|
||||||
queryset = SeatingPlan.objects.none()
|
queryset = SeatingPlan.objects.none()
|
||||||
permission = 'organizer.settings.general:write'
|
permission = None
|
||||||
write_permission = 'organizer.settings.general:write'
|
write_permission = 'organizer.seatingplans:write'
|
||||||
|
|
||||||
def get_queryset(self):
|
def get_queryset(self):
|
||||||
return self.request.organizer.seating_plans.order_by('name')
|
return self.request.organizer.seating_plans.order_by('name')
|
||||||
|
|||||||
@@ -112,4 +112,6 @@ def register_default_organizer_permissions(sender, **kwargs):
|
|||||||
Permission("organizer.devices:read", _("View devices and gates"), None, None),
|
Permission("organizer.devices:read", _("View devices and gates"), None, None),
|
||||||
Permission("organizer.devices:write", _("Change devices and gates"), None,
|
Permission("organizer.devices:write", _("Change devices and gates"), None,
|
||||||
_("This includes the ability to give access to events and data oneself does not have access to.")),
|
_("This includes the ability to give access to events and data oneself does not have access to.")),
|
||||||
|
Permission("organizer.seatingplans:write", _("Change seating plans"), None,
|
||||||
|
_("Read access is implicitly given to all teams.")),
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ OLD_TO_NEW_EVENT_MIGRATION = {
|
|||||||
OLD_TO_NEW_ORGANIZER_MIGRATION = {
|
OLD_TO_NEW_ORGANIZER_MIGRATION = {
|
||||||
"can_create_events": ["organizer.events:create"],
|
"can_create_events": ["organizer.events:create"],
|
||||||
"can_change_organizer_settings": ["organizer.settings.general:write", "organizer.devices:read",
|
"can_change_organizer_settings": ["organizer.settings.general:write", "organizer.devices:read",
|
||||||
"organizer.devices:write"],
|
"organizer.devices:write", "organizer.seatingplans:write"],
|
||||||
"can_change_teams": ["organizer.teams:write"],
|
"can_change_teams": ["organizer.teams:write"],
|
||||||
"can_manage_gift_cards": ["organizer.giftcards:read", "organizer.giftcards:write"],
|
"can_manage_gift_cards": ["organizer.giftcards:read", "organizer.giftcards:write"],
|
||||||
"can_manage_customers": ["organizer.customers:read", "organizer.customers:write"],
|
"can_manage_customers": ["organizer.customers:read", "organizer.customers:write"],
|
||||||
|
|||||||
@@ -274,6 +274,9 @@ org_permission_sub_urls = [
|
|||||||
('post', 'organizer.reusablemedia:write', 'reusablemedia/', 400),
|
('post', 'organizer.reusablemedia:write', 'reusablemedia/', 400),
|
||||||
('patch', 'organizer.reusablemedia:write', 'reusablemedia/1/', 404),
|
('patch', 'organizer.reusablemedia:write', 'reusablemedia/1/', 404),
|
||||||
('put', 'organizer.reusablemedia:write', 'reusablemedia/1/', 404),
|
('put', 'organizer.reusablemedia:write', 'reusablemedia/1/', 404),
|
||||||
|
('post', 'organizer.seatingplans:write', 'seatingplans/', 400),
|
||||||
|
('patch', 'organizer.seatingplans:write', 'seatingplans/1/', 404),
|
||||||
|
('put', 'organizer.seatingplans:write', 'seatingplans/1/', 404),
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user