1 from django.contrib import admin
2 from django.utils.translation import ugettext_lazy as _
3 from cloudcmsresources.models import ResourceCategory, \
4 ResourceCategoryTranslation, Resource, ResourceTranslation
5 from feincms.translations import admin_translationinline, short_language_code
6 from feincms.admin import item_editor
8 CategoryTranslationInline = admin_translationinline(ResourceCategoryTranslation,
9 prepopulated_fields={'slug': ('title',)})
10 ResourceTranslationInline = admin_translationinline(ResourceTranslation,
11 prepopulated_fields={'slug': ('title',)})
13 class ResourceCategoryAdmin(admin.ModelAdmin):
14 inlines = [CategoryTranslationInline]
15 list_display = ['__unicode__', 'entries']
16 search_fields = ['translations__title']
18 def entries(self, obj):
19 if 'translations' in getattr(ResourceCategory, '_feincms_extensions', ()):
20 return ResourceCategory.objects.filter(translations=obj, language=short_language_code()).count()
21 return ResourceCategory.objects.filter(translations=obj)
23 entries.short_description = _('Blog entries in category')
25 class ResourceAdmin(admin.ModelAdmin):
26 inlines = [ResourceTranslationInline]
27 list_display = ['__unicode__', 'category', 'is_published', 'published_on']
28 list_editable = ['published_on']
29 raw_id_fields = ['media_file']
32 admin.site.register(Resource, ResourceAdmin)
33 admin.site.register(ResourceCategory, ResourceCategoryAdmin)