Coverage for website/thaliawebsite/admin.py: 100.00%
9 statements
« prev ^ index » next coverage.py v7.6.7, created at 2025-08-14 10:31 +0000
« prev ^ index » next coverage.py v7.6.7, created at 2025-08-14 10:31 +0000
1"""Settings for the admin site."""
3from django.conf import settings
4from django.contrib import admin
5from django.utils.translation import gettext_lazy as _
7from django_otp import user_has_device
10class ThaliaAdminSite(admin.AdminSite):
11 site_header = _("Thalia administration")
12 site_title = _("Thalia")
14 def has_permission(self, request):
15 return super().has_permission(request) and (
16 not settings.ADMIN_REQUIRE_2FA or user_has_device(request.user)
17 )