Files
djangocms/core/decorators.py
2024-11-19 13:00:24 +07:00

20 lines
735 B
Python

from django.http import Http404
from functools import wraps
def admin_role_required(view_func):
@wraps(view_func)
def _wrapped_view(request, *args, **kwargs):
if request.user.is_authenticated and request.user.role == 'Admin':
return view_func(request, *args, **kwargs)
else:
raise Http404("Page not found")
return _wrapped_view
def both_role_required(view_func):
@wraps(view_func)
def _wrapped_view(request, *args, **kwargs):
if request.user.is_authenticated and request.user.role == 'Admin' or request.user.role == 'Editor':
return view_func(request, *args, **kwargs)
else:
raise Http404("Page not fount")
return _wrapped_view