35765-vm/core/decorators.py
Flatlogic Bot 1955ecf8b3 1.4
2025-11-15 19:14:03 +00:00

13 lines
565 B
Python

from django.contrib.auth.models import Group
from django.http import HttpResponseForbidden
def group_required(group_names):
def decorator(view_func):
def _wrapped_view(request, *args, **kwargs):
if request.user.is_authenticated:
if request.user.groups.filter(name__in=group_names).exists() or request.user.is_superuser:
return view_func(request, *args, **kwargs)
return HttpResponseForbidden("You don't have permission to access this page.")
return _wrapped_view
return decorator