From 3185cf44f4cbf01bb7fecdbd1c370d64e7c9e05d Mon Sep 17 00:00:00 2001 From: Your Name Date: Fri, 29 Dec 2023 02:11:36 -0500 Subject: [PATCH] move anonymous viewable to identity --- journal/models/common.py | 2 +- journal/templates/profile.html | 2 +- journal/templates/review.html | 12 ++++++-- journal/views/profile.py | 2 +- journal/views/review.py | 2 +- takahe/utils.py | 3 +- users/data.py | 6 ++-- .../0018_apidentity_anonymous_viewable.py | 28 +++++++++++++++++++ users/models/apidentity.py | 1 + users/models/preference.py | 2 +- users/templates/users/preferences.html | 6 ++-- 11 files changed, 53 insertions(+), 13 deletions(-) create mode 100644 users/migrations/0018_apidentity_anonymous_viewable.py diff --git a/journal/models/common.py b/journal/models/common.py index 3d267563..5642a0bd 100644 --- a/journal/models/common.py +++ b/journal/models/common.py @@ -64,7 +64,7 @@ def max_visiblity_to_user(viewing_user: User, owner: APIdentity): def q_piece_visible_to_user(user: User): if not user or not user.is_authenticated or not user.identity: - return Q(visibility=0, owner__user__preference__no_anonymous_view=False) + return Q(visibility=0, owner__anonymous_viewable=True) return ( Q(visibility=0) | Q(owner_id__in=user.identity.following, visibility=1) diff --git a/journal/templates/profile.html b/journal/templates/profile.html index 2c9dd830..b2ab368b 100644 --- a/journal/templates/profile.html +++ b/journal/templates/profile.html @@ -20,7 +20,7 @@ - {% if identity.preference.no_anonymous_view %}{% endif %} + {% if not identity.anonymous_viewable %}{% endif %} - {% if identity.preference.no_anonymous_view %}{% endif %} + {% if not identity.anonymous_viewable %}{% endif %} {{ site_name }}{% trans '评论' %} - {{ review.title }} {% include "common_libs.html" with jquery=0 v2=1 %} @@ -58,7 +58,15 @@ -
{{ review.html_content | safe }}
+
+ {% if request.user.is_authenticated or review.owner.anonymous_viewable %} + {{ review.html_content | safe }} + {% else %} +

+ 作者已设置为登录后可查看 +

+ {% endif %} +