rename extension extras

This commit is contained in:
Patrick Jentsch
2024-04-18 15:35:41 +02:00
parent 8f960cf359
commit c191e7bd4a
17 changed files with 57 additions and 52 deletions

View File

@ -0,0 +1,3 @@
from .decorators import login_required
from .decorators import permission_required
from .decorators import admin_required

View File

@ -0,0 +1,27 @@
from flask_login import current_user
from functools import wraps
from app.models import Permission as UserPermission
def login_required(f):
@wraps(f)
def wrapper(*args, **kwargs):
if current_user.is_authenticated:
return f(*args, **kwargs)
return {'code': 401, 'body': 'Unauthorized'}
return wrapper
def permission_required(permission):
def decorator(f):
@wraps(f)
def wrapper(*args, **kwargs):
if not current_user.can(permission):
return {'code': 403, 'body': 'Forbidden'}
return f(*args, **kwargs)
return wrapper
return decorator
def admin_required(f):
return permission_required(UserPermission.ADMINISTRATE)(f)