SMW-Upload/quotes/admin.py

44 lines
1.2 KiB
Python

from django.contrib import admin
from .models import Submission, SubmissionFile
class SubmissionFileInline(admin.TabularInline):
"""Inline admin for submission files."""
model = SubmissionFile
extra = 0
readonly_fields = ["uploaded_at", "file_size"]
@admin.register(Submission)
class SubmissionAdmin(admin.ModelAdmin):
"""Admin interface for submissions."""
list_display = [
"email",
"submitted_at",
"expiration_time",
"is_expired",
"file_count",
]
list_filter = ["submitted_at", "expiration_time"]
search_fields = ["email", "description"]
readonly_fields = ["submitted_at"]
inlines = [SubmissionFileInline]
def file_count(self, obj):
"""Display the number of files in this submission."""
return obj.files.count()
file_count.short_description = "Files"
@admin.register(SubmissionFile)
class SubmissionFileAdmin(admin.ModelAdmin):
"""Admin interface for submission files."""
list_display = ["original_filename", "submission", "file_size", "uploaded_at"]
list_filter = ["uploaded_at"]
search_fields = ["original_filename", "submission__email"]
readonly_fields = ["uploaded_at", "file_size"]