Skip to content
Snippets Groups Projects
Verified Commit 0b0fb203 authored by Jonathan Weth's avatar Jonathan Weth :keyboard:
Browse files

Fix person_required with support for anonymous users (3. try)

Addition to MR #110
parent d1b725b0
No related branches found
No related tags found
No related merge requests found
Pipeline #580 failed
from typing import Callable
from django.contrib.auth.decorators import login_required, user_passes_test
from aleksis.core.util.core_helpers import has_person
from django.contrib.auth.models import User
def admin_required(function: Callable = None) -> Callable:
......@@ -10,8 +9,12 @@ def admin_required(function: Callable = None) -> Callable:
return actual_decorator(function)
def has_person_by_user(user: User) -> bool:
return getattr(user, "person", None) is not None
def person_required(function: Callable = None) -> Callable:
""" Requires a logged-in user which is linked to a person. """
actual_decorator = user_passes_test(has_person)
actual_decorator = user_passes_test(has_person_by_user)
return actual_decorator(login_required(function))
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment