X-Git-Url: http://git.ithinksw.org/philo.git/blobdiff_plain/fb8a270fa22abc217efc471d860c76d5a2352c61..40ec2b268e9746ac1c4f878cf13f7bece1d8e2a1:/philo/admin/pages.py diff --git a/philo/admin/pages.py b/philo/admin/pages.py index f9e96c0..4cdd37b 100644 --- a/philo/admin/pages.py +++ b/philo/admin/pages.py @@ -1,18 +1,18 @@ +from django import forms from django.conf import settings from django.contrib import admin -from django import forms -from philo.admin.base import COLLAPSE_CLASSES, TreeAdmin + +from philo.admin.base import COLLAPSE_CLASSES, TreeEntityAdmin +from philo.admin.forms.containers import * from philo.admin.nodes import ViewAdmin +from philo.admin.widgets import EmbedWidget +from philo.models.fields import TemplateField from philo.models.pages import Page, Template, Contentlet, ContentReference -from philo.admin.forms.containers import * -class ContentletInline(admin.StackedInline): - model = Contentlet +class ContainerInline(admin.StackedInline): extra = 0 max_num = 0 - formset = ContentletInlineFormSet - form = ContentletForm can_delete = False classes = ('collapse-open', 'collapse','open') if 'grappelli' in settings.INSTALLED_APPS: @@ -21,18 +21,16 @@ class ContentletInline(admin.StackedInline): template = 'admin/philo/edit_inline/tabular_container.html' -class ContentReferenceInline(admin.StackedInline): +class ContentletInline(ContainerInline): + model = Contentlet + formset = ContentletInlineFormSet + form = ContentletForm + + +class ContentReferenceInline(ContainerInline): model = ContentReference - extra = 0 - max_num = 0 formset = ContentReferenceInlineFormSet form = ContentReferenceForm - can_delete = False - classes = ('collapse-open', 'collapse','open') - if 'grappelli' in settings.INSTALLED_APPS: - template = 'admin/philo/edit_inline/grappelli_tabular_container.html' - else: - template = 'admin/philo/edit_inline/tabular_container.html' class PageAdmin(ViewAdmin): @@ -54,7 +52,7 @@ class PageAdmin(ViewAdmin): return super(PageAdmin, self).response_add(request, obj, post_url_continue) -class TemplateAdmin(TreeAdmin): +class TemplateAdmin(TreeEntityAdmin): prepopulated_fields = {'slug': ('name',)} fieldsets = ( (None, { @@ -72,6 +70,9 @@ class TemplateAdmin(TreeAdmin): 'fields': ('mimetype',) }), ) + formfield_overrides = { + TemplateField: {'widget': EmbedWidget} + } save_on_top = True save_as = True list_display = ('__unicode__', 'slug', 'get_path',)