diff --git a/aleksis/apps/alsijil/model_extensions.py b/aleksis/apps/alsijil/model_extensions.py index b3fc034fdf7c4c4fab60f0467e357465838cf8d9..820a58c82b140e026e4a3e62ffda73e96ea2cbfb 100644 --- a/aleksis/apps/alsijil/model_extensions.py +++ b/aleksis/apps/alsijil/model_extensions.py @@ -7,6 +7,8 @@ from django.utils.translation import gettext as _ import reversion from calendarweek import CalendarWeek +from django_global_request.middleware import get_request +from reversion import set_user from aleksis.apps.chronos.models import LessonPeriod from aleksis.core.models import Group, Person @@ -55,6 +57,7 @@ def mark_absent( continue with reversion.create_revision(): + set_user(get_request().user) personal_note, created = ( PersonalNote.objects.select_related(None) .prefetch_related(None) diff --git a/aleksis/apps/alsijil/views.py b/aleksis/apps/alsijil/views.py index 21703feaf1a8aa8bc499ed11e3864a916520c6b2..5c0d38ca8bb239db6acd65e53b1d5b2600b35c8b 100644 --- a/aleksis/apps/alsijil/views.py +++ b/aleksis/apps/alsijil/views.py @@ -121,6 +121,7 @@ def lesson( "alsijil.edit_lessondocumentation", lesson_period ): with reversion.create_revision(): + reversion.set_user(request.user) lesson_documentation_form.save() messages.success(request, _("The lesson documentation has been saved.")) @@ -134,6 +135,7 @@ def lesson( "alsijil.edit_lesson_personalnote", lesson_period ): with reversion.create_revision(): + reversion.set_user(request.user) instances = personal_note_formset.save() # Iterate over personal notes and carry changed absences to following lessons @@ -562,6 +564,7 @@ def overview_person(request: HttpRequest, id_: Optional[int] = None) -> HttpResp note.excused = True note.excuse_type = excuse_type with reversion.create_revision(): + reversion.set_user(request.user) note.save() messages.success(request, _("The absences have been marked as excused.")) @@ -577,6 +580,7 @@ def overview_person(request: HttpRequest, id_: Optional[int] = None) -> HttpResp note.excused = True note.excuse_type = excuse_type with reversion.create_revision(): + reversion.set_user(request.user) note.save() messages.success(request, _("The absence has been marked as excused.")) except (PersonalNote.DoesNotExist, ValueError): @@ -712,6 +716,7 @@ class DeletePersonalNoteView(PermissionRequiredMixin, DetailView): def post(self, request, *args, **kwargs): note = self.get_object() with reversion.create_revision(): + reversion.set_user(request.user) note.reset_values() note.save() messages.success(request, _("The personal note has been deleted."))