Add permission for seating plans

This commit is contained in:
Raphael Michel
2026-01-13 12:02:56 +01:00
parent 6804184bda
commit 864ff2dbd3
5 changed files with 9 additions and 3 deletions

View File

@@ -154,8 +154,8 @@ class OrganizerViewSet(mixins.UpdateModelMixin, viewsets.ReadOnlyModelViewSet):
class SeatingPlanViewSet(viewsets.ModelViewSet):
serializer_class = SeatingPlanSerializer
queryset = SeatingPlan.objects.none()
permission = 'organizer.settings.general:write'
write_permission = 'organizer.settings.general:write'
permission = None
write_permission = 'organizer.seatingplans:write'
def get_queryset(self):
return self.request.organizer.seating_plans.order_by('name')

View File

@@ -112,4 +112,6 @@ def register_default_organizer_permissions(sender, **kwargs):
Permission("organizer.devices:read", _("View devices and gates"), None, 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.")),
Permission("organizer.seatingplans:write", _("Change seating plans"), None,
_("Read access is implicitly given to all teams.")),
]

View File

@@ -42,7 +42,7 @@ OLD_TO_NEW_EVENT_MIGRATION = {
OLD_TO_NEW_ORGANIZER_MIGRATION = {
"can_create_events": ["organizer.events:create"],
"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_manage_gift_cards": ["organizer.giftcards:read", "organizer.giftcards:write"],
"can_manage_customers": ["organizer.customers:read", "organizer.customers:write"],

View File

@@ -274,6 +274,9 @@ org_permission_sub_urls = [
('post', 'organizer.reusablemedia:write', 'reusablemedia/', 400),
('patch', '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),
]