From ac8b93d7ec8114bf28c5c94768004b7b87dc1589 Mon Sep 17 00:00:00 2001 From: Jonathan Weth <git@jonathanweth.de> Date: Thu, 4 Apr 2024 22:12:37 +0200 Subject: [PATCH] Use reversion for coursebook entries --- aleksis/apps/alsijil/schema/documentation.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/aleksis/apps/alsijil/schema/documentation.py b/aleksis/apps/alsijil/schema/documentation.py index 8ce3adb7b..442f2156a 100644 --- a/aleksis/apps/alsijil/schema/documentation.py +++ b/aleksis/apps/alsijil/schema/documentation.py @@ -6,6 +6,7 @@ from django.utils.timezone import localdate, localtime import graphene from graphene_django.types import DjangoObjectType from guardian.shortcuts import get_objects_for_user +from reversion import create_revision, set_comment, set_user from aleksis.apps.alsijil.util.predicates import can_edit_documentation, is_in_allowed_time_range from aleksis.apps.chronos.models import LessonEvent @@ -117,8 +118,6 @@ class DocumentationBatchCreateOrUpdateMutation(graphene.Mutation): and datetime_start <= localtime() ) ): - # Timezone removal is necessary due to ISO style offsets are no valid timezones. - # Instead, we take the timezone from the lesson_event and save it in a dedicated field. obj = Documentation.objects.create( datetime_start=datetime_start, datetime_end=datetime_end, @@ -159,6 +158,9 @@ class DocumentationBatchCreateOrUpdateMutation(graphene.Mutation): @classmethod def mutate(cls, root, info, input): # noqa - objs = [cls.create_or_update(info, doc) for doc in input] + with create_revision(): + set_user(info.context.user) + set_comment("Updated in coursebook") + objs = [cls.create_or_update(info, doc) for doc in input] return DocumentationBatchCreateOrUpdateMutation(documentations=objs) -- GitLab