from django.contrib import admin
from django.contrib.auth.admin import UserAdmin

from django.contrib.auth import get_user_model

User = get_user_model()


@admin.register(User)
class CustomUserAdmin(UserAdmin):
    list_display = ("username", "email", "first_name", "last_name", "is_staff", "is_active")
    list_filter = ("is_staff", "is_active")
    ordering = ("username",)

    fieldsets = (
        (None, {"fields": ("username", "email", "password")}),
        ("Personal info", {"fields": ("first_name", "middle_name", "last_name")}),
        ("Permissions", {"fields": ("is_staff", "is_active", "is_superuser", "groups", "user_permissions")}),
        ("Important dates", {"fields": ("last_login", "date_joined")}),
    )

    add_fieldsets = (
        (None, {
            "classes": ("wide",),
            "fields": ("username", "email", "first_name", "middle_name", "last_name", "password1", "password2", "is_staff", "is_active"),
        }),
    )


# class CustomerInline(admin.StackedInline):
#     can_delete = False
#     verbose_name_plural = 'Customer Profile'
#     fields = ['phone', 'address']

# # Add CustomerInline to CustomUserAdmin
# CustomUserAdmin.inlines = (CustomerInline,)
