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():