X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/251b72488d27f769ed0574f39a91f5d2da3d27a6..4fb23ed3c3396d23a37a718fc857ecc8b36b0c7f:/src/catalogue/admin.py?ds=inline diff --git a/src/catalogue/admin.py b/src/catalogue/admin.py index 997dd5ed0..d1e3c1f23 100644 --- a/src/catalogue/admin.py +++ b/src/catalogue/admin.py @@ -1,8 +1,13 @@ -# This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later. -# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information. +# This file is part of Wolne Lektury, licensed under GNU Affero GPLv3 or later. +# Copyright © Fundacja Wolne Lektury. See NOTICE for more information. # from django.contrib import admin -from catalogue.models import Tag, Book, Fragment, BookMedia, Collection, Source +from catalogue.models import Tag, Book, Fragment, BookMedia, Collection, Source, Snippet +from pz.admin import EmptyFieldListFilter + + +class BlankFieldListFilter(EmptyFieldListFilter): + with_empty_str = True class TagAdmin(admin.ModelAdmin): @@ -11,6 +16,7 @@ class TagAdmin(admin.ModelAdmin): search_fields = ('name',) ordering = ('name',) readonly_fields = ('occurrences',) + raw_id_fields = ['user'] def occurrences(self, tag): return tag.items.count() @@ -30,7 +36,13 @@ class BookAdmin(admin.ModelAdmin): list_display = ( 'title', 'slug', 'created_at', 'has_epub_file', 'has_html_file', 'has_description', ) - list_filter = ['print_on_demand'] + list_filter = [ + 'print_on_demand', + ('wiki_link', BlankFieldListFilter), + ('parent', EmptyFieldListFilter), + ('media', admin.EmptyFieldListFilter), + ] + date_hierarchy = 'created_at' search_fields = ('title',) ordering = ('title',) @@ -43,7 +55,7 @@ class FragmentAdmin(admin.ModelAdmin): class CollectionAdmin(admin.ModelAdmin): - list_display = ('title', 'listed') + list_display = ('title', 'listed', 'role') prepopulated_fields = {'slug': ('title',)} @@ -56,3 +68,6 @@ admin.site.register(Book, BookAdmin) admin.site.register(Fragment, FragmentAdmin) admin.site.register(Collection, CollectionAdmin) admin.site.register(Source, SourceAdmin) + + +admin.site.register(Snippet)