Files

43 lines
1.3 KiB
Python

from django.contrib import admin
from django.contrib.auth.admin import UserAdmin as DjangoUserAdmin
from apps.accounts.models import PhoneOTP, User
@admin.register(User)
class UserAdmin(DjangoUserAdmin):
model = User
list_display = ("phone_number", "email", "role", "is_staff", "is_phone_verified")
list_filter = ("role", "is_staff", "is_phone_verified")
ordering = ("phone_number",)
search_fields = ("email", "phone_number")
fieldsets = (
(None, {"fields": ("phone_number", "password")}),
("Personal", {"fields": ("first_name", "last_name", "phone_number")}),
("Roles", {"fields": ("role", "is_phone_verified")}),
("Permissions", {"fields": ("is_active", "is_staff", "is_superuser", "groups", "user_permissions")}),
("Dates", {"fields": ("last_login",)}),
)
add_fieldsets = (
(None, {
"classes": ("wide",),
"fields": ("phone_number", "password1", "password2", "role"),
}),
)
@admin.register(PhoneOTP)
class PhoneOTPAdmin(admin.ModelAdmin):
list_display = (
"phone_number",
"channel",
"purpose",
"provider",
"created_at",
"expires_at",
"verified_at",
"attempt_count",
)
list_filter = ("channel", "purpose", "provider")
search_fields = ("phone_number",)