X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/e03461777af2a9d33062dda1bf888e9025731f3e..c0a7799619e217e2eac724b1a688ad37f0182253:/src/catalogue/admin.py?ds=sidebyside diff --git a/src/catalogue/admin.py b/src/catalogue/admin.py index 51305e276..44b6fb76f 100644 --- a/src/catalogue/admin.py +++ b/src/catalogue/admin.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- # This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later. # Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information. # @@ -10,10 +9,15 @@ from catalogue.models import Tag, Book, Fragment, BookMedia, Collection, Source class TagAdmin(admin.ModelAdmin): - list_display = ('name', 'slug', 'sort_key', 'category', 'has_description',) + list_display = ('name', 'slug', 'sort_key', 'category', 'has_description', 'occurrences') list_filter = ('category',) search_fields = ('name',) ordering = ('name',) + readonly_fields = ('occurrences',) + + def occurrences(self, tag): + return tag.items.count() + occurrences.short_description = u'Wystąpienia' prepopulated_fields = {'slug': ('name',), 'sort_key': ('name',)} radio_fields = {'category': admin.HORIZONTAL} @@ -25,8 +29,11 @@ class MediaInline(admin.TabularInline): extra = 0 -class BookAdmin(TaggableModelAdmin): - tag_model = Tag +#FIXME: Taggable admin is broken. +#class BookAdmin(TaggableModelAdmin): +class BookAdmin(admin.ModelAdmin): + #tag_model = Tag + #form = TaggableModelForm list_display = ('title', 'slug', 'created_at', 'has_epub_file', 'has_html_file', 'has_description',) search_fields = ('title',) @@ -34,20 +41,11 @@ class BookAdmin(TaggableModelAdmin): inlines = [MediaInline] - def change_view(self, request, object_id, extra_context=None): - if 'advanced' not in request.GET: - self.form = forms.ModelForm - self.fields = ('title', 'description', 'gazeta_link', 'wiki_link', 'recommended') - self.readonly_fields = ('title',) - else: - self.form = TaggableModelForm - self.fields = None - self.readonly_fields = () - return super(BookAdmin, self).change_view(request, object_id, extra_context=extra_context) - -class FragmentAdmin(TaggableModelAdmin): - tag_model = Tag +#FIXME: Taggable admin is broken. +#class FragmentAdmin(TaggableModelAdmin): +class FragmentAdmin(admin.ModelAdmin): + #tag_model = Tag list_display = ('book', 'anchor',) ordering = ('book', 'anchor',)