First Commit

This commit is contained in:
mrtoine 2025-09-12 11:11:44 +02:00
commit ce0758fbbb
496 changed files with 52062 additions and 0 deletions

13
users/decorators.py Executable file
View file

@ -0,0 +1,13 @@
from django.core.exceptions import PermissionDenied
from django.contrib.auth.decorators import login_required
def groups_required(*group_names):
def decorator(view_func):
@login_required
def _wrapped_view(request, *args, **kwargs):
if any(request.user.groups.filter(name=group_name).exists() for group_name in group_names):
return view_func(request, *args, **kwargs)
else:
raise PermissionDenied
return _wrapped_view
return decorator