diff --git a/paperwork/admin.py b/paperwork/admin.py index 1b9495a..209a74b 100644 --- a/paperwork/admin.py +++ b/paperwork/admin.py @@ -14,11 +14,15 @@ class CertificationVersionInline(admin.TabularInline): @admin.register(CertificationVersion) class CertificationVersionAdmin(admin.ModelAdmin): search_fields = ['definition__certification_name', 'version'] + list_display = ['definition', 'version'] + list_filter = ['definition__department', 'definition__certification_name'] @admin.register(CertificationDefinition) class CertificationDefinitionAdmin(admin.ModelAdmin): - search_fields = ['certification_name', 'department'] + search_fields = ['certification_name'] + list_display = ['certification_name', 'department'] + list_filter = ['department'] inlines = [CertificationVersionInline] @@ -26,6 +30,40 @@ class CertificationDefinitionAdmin(admin.ModelAdmin): class CertificationAdmin(admin.ModelAdmin): search_fields = ['name', 'certification__certification_name', 'certification__department'] autocomplete_fields = ['member'] + exclude = ['shop_lead_notified'] + + @admin.display(description='Certification Name', + ordering='certification_version__definition__certification_name') + def certification_name(self, obj): + return obj.certification_version.definition.certification_name + + @admin.display(description='Certification Version', + ordering='certification_version__version') + def certification_version_version(self, obj): + return obj.certification_version.version + + @admin.display(description='Department', + ordering='certification_version__definition__department') + def certification_department(self, obj): + return obj.certification_version.definition.department + + list_display = [ + 'certification_name', + 'name', + 'certification_version_version', + 'certification_department', + 'date', + 'shop_lead_notified', + 'certified_by', + ] + list_display_links = [ + 'certification_name', + 'name', + ] + list_filter = [ + 'certification_version__definition__department', + ('shop_lead_notified', admin.EmptyFieldListFilter), + ] @admin.register(InstructorOrVendor)