diff --git a/backend/apps/ecommerce/admin.py b/backend/apps/ecommerce/admin.py index 445dc6065..6ce57b93e 100644 --- a/backend/apps/ecommerce/admin.py +++ b/backend/apps/ecommerce/admin.py @@ -2,6 +2,23 @@ from .models import Order, Product, VippsAccessToken -admin.site.register(Product) -admin.site.register(Order) + +@admin.register(Product) +class ProductAdmin(admin.ModelAdmin): + search_fields = ("name",) + + +@admin.register(Order) +class OrderAdmin(admin.ModelAdmin): + list_display = ("id", "product", "user", "payment_status", "timestamp") + list_filter = ("payment_status",) + search_fields = ( + "user__username", + "user__first_name", + "user__last_name", + "product__name", + ) + raw_id_fields = ("user", "product") + + admin.site.register(VippsAccessToken) diff --git a/backend/apps/events/admin.py b/backend/apps/events/admin.py index b114fc716..c0c7b97d4 100644 --- a/backend/apps/events/admin.py +++ b/backend/apps/events/admin.py @@ -2,7 +2,19 @@ from apps.events.models import Category, Event, SignUp admin.site.register(Category) -admin.site.register(SignUp) + + +@admin.register(SignUp) +class SignUpAdmin(admin.ModelAdmin): + list_display = ("user", "event", "is_attending", "timestamp") + list_filter = ("is_attending",) + search_fields = ( + "user__username", + "user__first_name", + "user__last_name", + "event__title", + ) + raw_id_fields = ("user", "event") @admin.register(Event) @@ -10,3 +22,4 @@ class EventAdmin(admin.ModelAdmin): search_fields = ["title"] list_display = ("title", "organization", "start_time", "is_attendable", "is_hidden") list_filter = ("organization__name", "is_attendable", "is_hidden") + raw_id_fields = ("publisher",) diff --git a/backend/apps/nfc/admin.py b/backend/apps/nfc/admin.py index d4e456b8d..e3363f34b 100644 --- a/backend/apps/nfc/admin.py +++ b/backend/apps/nfc/admin.py @@ -30,6 +30,7 @@ class NfcCardAssignmentAdmin(admin.ModelAdmin): ) search_fields = ("card__mifare_csn", "user__username", "external_holder_name") list_filter = ("permanent_access", "revoked_at") + raw_id_fields = ("user", "assigned_by", "revoked_by") @admin.register(NfcAccessGrant) @@ -46,6 +47,7 @@ class NfcAccessGrantAdmin(admin.ModelAdmin): "revoked_at", ) list_filter = ("scope", "participant_policy", "permanent_access", "revoked_at") + raw_id_fields = ("granted_to_user", "granted_by", "revoked_by") @admin.register(NfcAccessEvent) @@ -59,6 +61,7 @@ class NfcAccessEventAdmin(admin.ModelAdmin): ) search_fields = ("door_identifier", "mifare_csn_reported", "resolved_user__username") list_filter = ("event_type", "source") + raw_id_fields = ("resolved_user",) @admin.register(NfcSettings) diff --git a/backend/apps/organizations/admin.py b/backend/apps/organizations/admin.py index baab82e0c..21e78cb7a 100644 --- a/backend/apps/organizations/admin.py +++ b/backend/apps/organizations/admin.py @@ -1,6 +1,19 @@ from django.contrib import admin from apps.organizations.models import Organization, Membership -# Register your models here. -admin.site.register(Organization) -admin.site.register(Membership) + +@admin.register(Organization) +class OrganizationAdmin(admin.ModelAdmin): + search_fields = ("name",) + + +@admin.register(Membership) +class MembershipAdmin(admin.ModelAdmin): + list_display = ("user", "organization", "group") + search_fields = ( + "user__username", + "user__first_name", + "user__last_name", + "organization__name", + ) + raw_id_fields = ("user", "organization")