blob: ab00fe8f3dd6eb14268e9712fe3d629b45a1ed05 [file] [log] [blame]
"""Permissions for accessing the stats API."""
from django.core.exceptions import PermissionDenied
from crashreports.permissions import user_is_hiccup_staff
from hiccup.allauth_adapters import FP_STAFF_GROUP_NAME
def check_user_is_hiccup_staff(user):
"""Check if the user is part of the Hiccup staff.
Returns:
True if the user is part of the Hiccup staff group, False if the user
is not logged in.
Raises:
PermissionDenied: If the user is not part of the Hiccup staff group.
"""
if not user.is_authenticated:
return False
if not user_is_hiccup_staff(user):
raise PermissionDenied(
"User %s not part of the %s group" % (user, FP_STAFF_GROUP_NAME)
)
return True