class NotableBookInline(OrderableAdmin, admin.TabularInline):
model = models.NotableBook
- raw_id_fields = ['book']
+ autocomplete_fields = ['book']
ordering_field_hide_input = True
]
list_per_page = 10000000
search_fields = ["first_name", "last_name", "wikidata"]
+ readonly_fields = ["wikidata_link", "description_preview"]
+
+ fieldsets = [
+ (None, {"fields": [("wikidata", "wikidata_link")]}),
+ (
+ _("Identification"),
+ {
+ "fields": [
+ ("first_name", "last_name"),
+ "slug",
+ "gender",
+ "nationality",
+ ("date_of_birth", "year_of_birth", "year_of_birth_inexact", "year_of_birth_range", "place_of_birth"),
+ ("date_of_death", "year_of_death", "year_of_death_inexact", "year_of_death_range", "place_of_death"),
+ ("description", "description_preview"),
+ "status",
+ "collections",
+ "priority",
+
+ "notes",
+ "gazeta_link",
+ "culturepl_link",
+ "plwiki",
+ "photo", "photo_source", "photo_attribution",
+ ]
+ },
+ ),
+ ]
+
prepopulated_fields = {"slug": ("first_name", "last_name")}
- autocomplete_fields = ["collections"]
+ autocomplete_fields = ["collections", "place_of_birth", "place_of_death"]
inlines = [
NotableBookInline,
]
+ def description_preview(self, obj):
+ return obj.generate_description()
+
admin.site.register(models.Author, AuthorAdmin)
"wikidata",
"slug",
"title",
- "authors_str", # authors?
- "translators_str", # translators?
+ "authors_first_names",
+ "authors_last_names",
+ "translators_first_names",
+ "translators_last_names",
"language",
"based_on",
"scans_source",
"translators",
"language",
"based_on",
+ "original_year",
"pd_year",
]
},
autocomplete_fields = []
prepopulated_fields = {"slug": ("name",)}
search_fields = ["name"]
- fields = ['name', 'slug', 'category', 'notes', 'estimated_costs']
+ fields = ['name', 'slug', 'category', 'description', 'notes', 'estimated_costs']
readonly_fields = ['estimated_costs']
inlines = [AuthorInline, BookInline]
admin.site.register(models.WorkType, WorkTypeAdmin)
+
+
+@admin.register(models.Place)
+class PlaceAdmin(WikidataAdminMixin, TabbedTranslationAdmin):
+ search_fields = ['name']