diff --git a/club/models.py b/club/models.py index 235de34a..e31af2af 100644 --- a/club/models.py +++ b/club/models.py @@ -112,24 +112,24 @@ class Club(models.Model): public = Group.objects.filter(id=settings.SITH_GROUP_PUBLIC_ID).first() p = Page(name=self.unix_name) p.parent = club_root - p.set_lock(root) + p.save(force_lock=True) if public: p.view_groups.add(public) - p.save() + p.save(force_lock=True) if self.parent and self.parent.page: p.parent = self.parent.page self.page = p self.save() elif self.page and self.page.name != self.unix_name: self.page.unset_lock() - self.page.set_lock(root) + # self.page.set_lock(root) self.page.name = self.unix_name - self.page.save() + self.page.save(force_lock=True) elif self.page and self.parent and self.parent.page and self.page.parent != self.parent.page: self.page.unset_lock() - self.page.set_lock(root) + # self.page.set_lock(root) self.page.parent = self.parent.page - self.page.save() + self.page.save(force_lock=True) def save(self, *args, **kwargs): with transaction.atomic(): diff --git a/core/models.py b/core/models.py index b9dda65f..b5fc8c4a 100644 --- a/core/models.py +++ b/core/models.py @@ -1007,8 +1007,8 @@ class Page(models.Model): @property def is_club_page(self): - unauthorized_parent = Page.objects.filter(name=settings.SITH_CLUB_ROOT_PAGE).first() - return unauthorized_parent is not None and (self == unauthorized_parent or unauthorized_parent in self.get_parent_list()) + club_root_page = Page.objects.filter(name=settings.SITH_CLUB_ROOT_PAGE).first() + return club_root_page is not None and (self == club_root_page or club_root_page in self.get_parent_list()) def delete(self): self.unset_lock_recursive()