check account readiness in profile page

This commit is contained in:
mein Name 2025-03-12 14:26:50 -04:00 committed by Henri Dickson
parent ab13aabf9f
commit ebd6041310

View file

@ -90,13 +90,17 @@ def profile_identity_required(func):
try: try:
target = APIdentity.get_by_handle(user_name, match_linked=True) target = APIdentity.get_by_handle(user_name, match_linked=True)
# this should trigger ObjectDoesNotExist if Takahe identity is not sync-ed
blocked = target.restricted
except ObjectDoesNotExist: except ObjectDoesNotExist:
raise Http404(_("User not found")) raise Http404(_("User not found"))
target_user = target.user target_user = target.user
viewer = None viewer = None
if target_user and not target_user.is_active: if target_user and not target_user.is_active:
raise Http404(_("User no longer exists")) raise Http404(_("User no longer exists"))
if request.user.is_authenticated: if blocked:
raise PermissionDenied(_("Access denied"))
elif request.user.is_authenticated:
try: try:
viewer = APIdentity.objects.get(user=request.user) viewer = APIdentity.objects.get(user=request.user)
except APIdentity.DoesNotExist: except APIdentity.DoesNotExist: