API - minor refactoring

This commit is contained in:
Sam 2021-12-01 19:44:57 +01:00
parent c4d19089e4
commit 1697f6051f

View File

@ -8,15 +8,22 @@ from fittrackee.responses import HttpResponse
from .utils import verify_user
def verify_auth_user(
f: Callable, verify_admin: bool, *args: Any, **kwargs: Any
) -> Union[Callable, HttpResponse]:
response_object, user = verify_user(request, verify_admin=verify_admin)
if response_object:
return response_object
return f(user, *args, **kwargs)
def authenticate(f: Callable) -> Callable:
@wraps(f)
def decorated_function(
*args: Any, **kwargs: Any
) -> Union[Callable, HttpResponse]:
response_object, user = verify_user(request, verify_admin=False)
if response_object:
return response_object
return f(user, *args, **kwargs)
verify_admin = False
return verify_auth_user(f, verify_admin, *args, **kwargs)
return decorated_function
@ -26,9 +33,7 @@ def authenticate_as_admin(f: Callable) -> Callable:
def decorated_function(
*args: Any, **kwargs: Any
) -> Union[Callable, HttpResponse]:
response_object, user = verify_user(request, verify_admin=True)
if response_object:
return response_object
return f(user, *args, **kwargs)
verify_admin = True
return verify_auth_user(f, verify_admin, *args, **kwargs)
return decorated_function