diff --git a/aleksis/apps/alsijil/schema/documentation.py b/aleksis/apps/alsijil/schema/documentation.py index 8ce3adb7bd078792d059840ac61b0b2091b9c14d..442f2156a92778861d5d5a7584e34a12ddae9767 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)