You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
57 lines
1.5 KiB
57 lines
1.5 KiB
from django.contrib import admin
|
|
from django.utils.translation import ugettext_lazy as _
|
|
|
|
from ckeditor_uploader.widgets import CKEditorUploadingWidget
|
|
|
|
from pinax.blog.admin import (
|
|
PostAdmin as BasePostAdmin,
|
|
SectionAdmin as BaseSectionAdmin,
|
|
PostImageSet as BasePostImageSet
|
|
)
|
|
|
|
from pinax.blog.models import (
|
|
Post as PinaxPost,
|
|
Section as PinaxSection,
|
|
)
|
|
from pinax.images.admin import ImageInline
|
|
|
|
from blog_ext.forms import AdminPostForm
|
|
from blog_ext.models import Post, Section, ImageSet
|
|
|
|
|
|
@admin.register(Post)
|
|
class PostAdmin(BasePostAdmin):
|
|
form = AdminPostForm
|
|
|
|
def formfield_for_dbfield(self, db_field, **kwargs):
|
|
if db_field.name in ['content', 'teaser', 'description']:
|
|
kwargs['widget'] = CKEditorUploadingWidget(
|
|
config_name='awesome_ckeditor',
|
|
attrs={'class': 'mt mt-field-content-%s' % db_field.name.replace('content', '')}
|
|
)
|
|
return super(PostAdmin, self).formfield_for_dbfield(db_field, **kwargs)
|
|
|
|
|
|
@admin.register(Section)
|
|
class SectionAdmin(BaseSectionAdmin):
|
|
pass
|
|
|
|
|
|
class PostImageSet(ImageSet):
|
|
class Meta:
|
|
proxy = True
|
|
verbose_name = _('Изображение')
|
|
verbose_name_plural = _('Изображения')
|
|
|
|
|
|
|
|
admin.site.unregister(BasePostImageSet)
|
|
|
|
admin.site.register(
|
|
PostImageSet,
|
|
list_display=["blog_post", "primary_image", "created_by", "created_at"],
|
|
raw_id_fields=["created_by"],
|
|
inlines=[ImageInline],
|
|
)
|
|
admin.site.unregister(PinaxSection)
|
|
admin.site.unregister(PinaxPost)
|
|
|