Merge branch 'main' of https://github.com/neodb-social/neodb
Some checks failed
code check / lint (3.12) (push) Has been cancelled
code check / type-checker (3.12) (push) Has been cancelled
Mirror to Codeberg / to_codeberg (push) Has been cancelled
unit test / django (3.12) (push) Has been cancelled

This commit is contained in:
gesang 2025-03-13 09:28:02 +01:00
commit 33ae11dffd
Signed by: gesang
GPG key ID: 6CE35141D31CEAFB
2 changed files with 10 additions and 3 deletions

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:

View file

@ -14,8 +14,11 @@ def activate_language_for_user(user: "User | None", request=None):
user_language = getattr(user, "language", "") user_language = getattr(user, "language", "")
if not user_language: if not user_language:
if request: if request:
user_language = request.GET.get("lang") try:
if not user_language: user_language = translation.get_supported_language_variant(
request.GET.get("lang")
)
except Exception:
user_language = translation.get_language_from_request(request) user_language = translation.get_language_from_request(request)
else: else:
user_language = settings.LANGUAGE_CODE user_language = settings.LANGUAGE_CODE