mirror of
https://github.com/bookwyrm-social/bookwyrm.git
synced 2024-12-16 13:16:33 +00:00
Fixes privacy display
This commit is contained in:
parent
66a2b4c7c7
commit
c6caa5a3f4
2 changed files with 11 additions and 5 deletions
|
@ -69,17 +69,13 @@ class BookWyrmModel(models.Model):
|
||||||
# you can see the followers only posts of people you follow
|
# you can see the followers only posts of people you follow
|
||||||
if self.privacy == "followers" and (
|
if self.privacy == "followers" and (
|
||||||
self.user.followers.filter(id=viewer.id).first()
|
self.user.followers.filter(id=viewer.id).first()
|
||||||
or (
|
|
||||||
hasattr(self, "mention_users")
|
|
||||||
and self.mention_users.filter(id=viewer.id)
|
|
||||||
)
|
|
||||||
):
|
):
|
||||||
return
|
return
|
||||||
|
|
||||||
# you can see dms you are tagged in
|
# you can see dms you are tagged in
|
||||||
if hasattr(self, "mention_users"):
|
if hasattr(self, "mention_users"):
|
||||||
if (
|
if (
|
||||||
self.privacy == "direct"
|
self.privacy in ["direct", "followers"]
|
||||||
and self.mention_users.filter(id=viewer.id).first()
|
and self.mention_users.filter(id=viewer.id).first()
|
||||||
):
|
):
|
||||||
return
|
return
|
||||||
|
|
|
@ -220,6 +220,16 @@ class Status(OrderedCollectionPageMixin, BookWyrmModel):
|
||||||
~Q(Q(user=viewer) | Q(mention_users=viewer)), privacy="direct"
|
~Q(Q(user=viewer) | Q(mention_users=viewer)), privacy="direct"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def followers_filter(cls, queryset, viewer):
|
||||||
|
"""Override-able filter for "followers" privacy level"""
|
||||||
|
return queryset.exclude(
|
||||||
|
~Q( # not yourself, a follower, or someone who is tagged
|
||||||
|
Q(user__followers=viewer) | Q(user=viewer) | Q(mention_users=viewer)
|
||||||
|
),
|
||||||
|
privacy="followers", # and the status is followers only
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
class GeneratedNote(Status):
|
class GeneratedNote(Status):
|
||||||
"""these are app-generated messages about user activity"""
|
"""these are app-generated messages about user activity"""
|
||||||
|
|
Loading…
Reference in a new issue