Skip to content
Snippets Groups Projects
Verified Commit 29019828 authored by Nik | Klampfradler's avatar Nik | Klampfradler
Browse files

Re-sync groups to Django on user change

parent 27929007
No related branches found
No related tags found
1 merge request!935Resolve "After changing the user of a person, groups are not synced"
Pipeline #51718 passed
...@@ -14,6 +14,7 @@ Fixed ...@@ -14,6 +14,7 @@ Fixed
* PDF generation failed with S3 storage due to incompatibility with boto3 * PDF generation failed with S3 storage due to incompatibility with boto3
* Form for editing group type displayed irrelevant fields * Form for editing group type displayed irrelevant fields
* Permission groups could get outdated if re-assigning a user account to a different person
`2.7`_ - 2022-01-24 `2.7`_ - 2022-01-24
------------------- -------------------
......
...@@ -316,7 +316,7 @@ class Person(ExtensibleModel): ...@@ -316,7 +316,7 @@ class Person(ExtensibleModel):
def initials(self): def initials(self):
return f"{self.first_name[0]}{self.last_name[0]}".upper() return f"{self.first_name[0]}{self.last_name[0]}".upper()
user_info_tracker = FieldTracker(fields=("first_name", "last_name", "email")) user_info_tracker = FieldTracker(fields=("first_name", "last_name", "email", "user"))
@property @property
def member_of_recursive(self) -> QuerySet: def member_of_recursive(self) -> QuerySet:
...@@ -347,6 +347,10 @@ class Person(ExtensibleModel): ...@@ -347,6 +347,10 @@ class Person(ExtensibleModel):
self.user.email = self.email self.user.email = self.email
self.user.save() self.user.save()
# Synchronise groups to Django
for group in self.member_of.all():
group.save()
# Select a primary group if none is set # Select a primary group if none is set
self.auto_select_primary_group() self.auto_select_primary_group()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment