Files
booking_backend/accounts/admin.py
2026-04-10 20:51:43 -05:00

51 lines
1.7 KiB
Python

from django.contrib import admin
from django.contrib.auth.admin import UserAdmin as DjangoUserAdmin
from .models import CustomerProfile, User, VendorProfile
@admin.register(User)
class UserAdmin(DjangoUserAdmin):
ordering = ("email",)
list_display = ("email", "first_name", "last_name", "is_vendor", "is_customer", "is_staff")
search_fields = ("email", "first_name", "last_name", "phone_number")
list_filter = ("is_vendor", "is_customer", "is_staff", "is_superuser", "is_active")
fieldsets = (
(None, {"fields": ("email", "password")}),
("Personal info", {"fields": ("first_name", "last_name", "phone_number")}),
(
"Roles",
{"fields": ("is_vendor", "is_customer")},
),
(
"Permissions",
{"fields": ("is_active", "is_staff", "is_superuser", "groups", "user_permissions")},
),
("Important dates", {"fields": ("last_login", "date_joined")}),
)
add_fieldsets = (
(
None,
{
"classes": ("wide",),
"fields": ("email", "password1", "password2", "is_vendor", "is_customer"),
},
),
)
@admin.register(VendorProfile)
class VendorProfileAdmin(admin.ModelAdmin):
list_display = ("business_name", "user", "slug", "city", "country", "updated_at")
search_fields = ("business_name", "user__email", "contact_email")
list_filter = ("country", "state")
readonly_fields = ("created_at", "updated_at")
@admin.register(CustomerProfile)
class CustomerProfileAdmin(admin.ModelAdmin):
list_display = ("user", "preferred_contact_method", "updated_at")
search_fields = ("user__email", "emergency_contact_name")
readonly_fields = ("created_at", "updated_at")