i701 dd21b848b9
Some checks failed
Build and Push Docker Images / Build and Push Docker Images (push) Failing after 1m19s
Add TemporaryUser model and related functionality for user registration and OTP verification
2025-04-16 11:01:43 +05:00

124 lines
3.1 KiB
Python

from django.contrib import admin
from django.contrib.auth.admin import UserAdmin as BaseUserAdmin
from api.models import User, Atoll, Island, TemporaryUser
from django.contrib.auth.models import Permission
# Define a new User admin
class UserAdmin(BaseUserAdmin):
list_display = (
"username",
"email",
"first_name",
"last_name",
"verified",
"is_active",
"is_staff",
"mobile",
"address",
"wallet_balance",
"acc_no",
"id_card",
"dob",
"atoll",
"island",
"terms_accepted",
"policy_accepted",
) # Add custom fields here
fieldsets = (
(None, {"fields": ("username", "password")}),
(
"Personal info",
{
"fields": (
"first_name",
"last_name",
"email",
"mobile",
"address",
"verified",
"wallet_balance",
"acc_no",
"id_card",
"dob",
"atoll",
"island",
"terms_accepted",
"policy_accepted",
)
},
), # Add custom fields here
(
"Permissions",
{
"fields": (
"is_active",
"is_staff",
"is_superuser",
"groups",
"user_permissions",
)
},
),
("Important dates", {"fields": ("last_login", "date_joined")}),
)
class TemporaryUserAdmin(admin.ModelAdmin):
list_display = (
"t_username",
"t_email",
"t_first_name",
"t_last_name",
"t_verified",
"t_mobile",
"t_address",
"t_wallet_balance",
"otp_verified",
"t_acc_no",
"t_id_card",
"t_dob",
"t_atoll",
"t_island",
"t_terms_accepted",
"t_policy_accepted",
)
fieldsets = (
(None, {"fields": ("t_username",)}),
(
"Personal info",
{
"fields": (
"t_first_name",
"t_last_name",
"t_email",
"t_mobile",
"t_address",
"t_verified",
"otp_verified",
"otp_expiry",
"t_wallet_balance",
"t_acc_no",
"t_id_card",
"t_dob",
"t_atoll",
"t_island",
"t_terms_accepted",
"t_policy_accepted",
)
},
),
)
# Re-register UserAdmin
admin.site.register(User, UserAdmin)
admin.site.register(Permission)
admin.site.register(Atoll)
admin.site.register(Island)
admin.site.register(TemporaryUser, TemporaryUserAdmin)
# TokenAdmin.raw_id_fields = ["user"]