from django.contrib import admin from django.contrib.auth.admin import UserAdmin as BaseUserAdmin from django.utils.translation import gettext_lazy as _ from outbo.apps.authentication.models import User @admin.register(User) class UserAdmin(BaseUserAdmin): fieldsets = ( (None, {"fields": ("username", "password")}), ( _("Personal info"), {"fields": ("first_name", "last_name", "email", "photo", "phone_number")}, ), (_("Organization info"), {"fields": ("organization", "job_title", "is_observer", "is_trader", "category")}), ) add_fieldsets = ( ( None, { "classes": ("wide",), "fields": ("username", "email", "password1", "password2", "is_observer", "is_trader", "category"), }, ), ) list_display = ("username", "email", "first_name", "last_name") list_filter = () search_fields = ("username", "first_name", "last_name", "email") ordering = ("username",) filter_horizontal = () autocomplete_fields = ["organization"] def get_queryset(self, request): return super().get_queryset(request).filter(is_superuser=False)