Coverage for app/venv/lib/python3.14/site-packages/weblate/accounts/admin.py: 79%
37 statements
« prev ^ index » next coverage.py v7.15.2, created at 2026-10-07 07:15 +0000
« prev ^ index » next coverage.py v7.15.2, created at 2026-10-07 07:15 +0000
1# Copyright © Michal Čihař <michal@weblate.org>
2#
3# SPDX-License-Identifier: GPL-3.0-or-later
4from __future__ import annotations
6from typing import TYPE_CHECKING
8from django.contrib import admin
10from weblate.wladmin.models import WeblateModelAdmin
12from .models import AuditLog, Profile, VerifiedEmail
14if TYPE_CHECKING: 14 ↛ 15line 14 didn't jump to line 15 because the condition on line 14 was never true
15 from weblate.auth.models import AuthenticatedHttpRequest
18@admin.register(AuditLog)
19class AuditLogAdmin(WeblateModelAdmin):
20 list_display = ("get_message", "user", "address", "user_agent", "timestamp")
21 search_fields = ("user__username", "user__email", "address", "activity")
22 date_hierarchy = "timestamp"
23 ordering = ("-timestamp",)
25 def has_delete_permission(
26 self, request: AuthenticatedHttpRequest, obj=None
27 ) -> bool:
28 return False
30 def has_add_permission(self, request: AuthenticatedHttpRequest, obj=None) -> bool:
31 return False
33 def has_change_permission(
34 self, request: AuthenticatedHttpRequest, obj=None
35 ) -> bool:
36 return False
39@admin.register(Profile)
40class ProfileAdmin(WeblateModelAdmin):
41 list_display = ("user", "full_name", "language", "suggested", "translated")
42 search_fields = ("user__username", "user__email", "user__full_name")
43 list_filter = ("language",)
44 filter_horizontal = ("languages", "secondary_languages", "watched")
46 def has_delete_permission(
47 self, request: AuthenticatedHttpRequest, obj=None
48 ) -> bool:
49 return False
51 def has_add_permission(self, request: AuthenticatedHttpRequest, obj=None) -> bool:
52 return False
55@admin.register(VerifiedEmail)
56class VerifiedEmailAdmin(WeblateModelAdmin):
57 list_display = ("social", "provider", "email")
58 search_fields = ("email", "social__user__username", "social__user__email")
59 raw_id_fields = ("social",)
60 ordering = ("email",)
62 def has_delete_permission(
63 self, request: AuthenticatedHttpRequest, obj=None
64 ) -> bool:
65 return False