From 77ac8e0c04be0a5cb40fd10d86eb27371a018a99 Mon Sep 17 00:00:00 2001 From: Hugh Rundle Date: Sun, 3 Oct 2021 11:45:53 +1100 Subject: [PATCH] add group membership to raise_not_deletable for lists --- bookwyrm/models/list.py | 7 ++++--- bookwyrm/views/list.py | 5 ----- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/bookwyrm/models/list.py b/bookwyrm/models/list.py index bb2a22d1..c801ec44 100644 --- a/bookwyrm/models/list.py +++ b/bookwyrm/models/list.py @@ -101,7 +101,6 @@ class ListItem(CollectionItemMixin, BookWyrmModel): notification_type="ADD", ) -<<<<<<< HEAD if self.book_list.group: for membership in self.book_list.group.memberships.all(): if membership.user != self.user: @@ -111,14 +110,16 @@ class ListItem(CollectionItemMixin, BookWyrmModel): related_list_item=self, notification_type="ADD" ) -======= def raise_not_deletable(self, viewer): """the associated user OR the list owner can delete""" if self.book_list.user == viewer: return + # group members can delete items in group lists + is_group_member = models.GroupMember.objects.filter(group=self.book_list.group, user=viewer).exists() + if is_group_member: + return super().raise_not_deletable(viewer) ->>>>>>> main class Meta: """A book may only be placed into a list once, and each order in the list may be used only once""" diff --git a/bookwyrm/views/list.py b/bookwyrm/views/list.py index 8c4bab28..88f4d6d8 100644 --- a/bookwyrm/views/list.py +++ b/bookwyrm/views/list.py @@ -341,11 +341,6 @@ def remove_book(request, list_id): book_list = get_object_or_404(models.List, id=list_id) item = get_object_or_404(models.ListItem, id=request.POST.get("item")) - # TODO: put this logiv into raise_not_deletable - # is_group_member = models.GroupMember.objects.filter(group=book_list.group, user=request.user).exists() - # if not book_list.user == request.user and not item.user == request.user and not is_group_member: - # return HttpResponseNotFound() - item.raise_not_deletable(request.user) with transaction.atomic():