from django.contrib import admin from django.contrib.auth.admin import UserAdmin as BaseUserAdmin from .models import User @admin.register(User) class UserAdmin(BaseUserAdmin): list_display = ["email", "full_name", "company_name", "role", "is_active", "created_at"] list_filter = ["role", "is_active"] search_fields = ["email", "full_name", "company_name"] ordering = ["-created_at"] fieldsets = ( (None, {"fields": ("email", "password")}), ("Personal Info", {"fields": ("full_name", "company_name")}), ("Permissions", {"fields": ("role", "is_active", "is_staff", "is_superuser", "groups", "user_permissions")}), ("Integrations", {"fields": ("stripe_customer_id", "keycloak_id")}), ("Important dates", {"fields": ("last_login", "created_at", "updated_at")}), ) readonly_fields = ["created_at", "updated_at", "keycloak_id"] add_fieldsets = ( (None, { "classes": ("wide",), "fields": ("email", "full_name", "company_name", "role", "password1", "password2"), }), )