X-Git-Url: http://git.ithinksw.org/philo.git/blobdiff_plain/4b094dbc60c3853814c2523d5772e4cf2884a073..64e4cdefe89f642d349b5908a3bbaec76333e3b2:/admin/nodes.py?ds=inline diff --git a/admin/nodes.py b/admin/nodes.py index 093537e..0fac7ad 100644 --- a/admin/nodes.py +++ b/admin/nodes.py @@ -1,10 +1,32 @@ from django.contrib import admin -from philo.admin.base import EntityAdmin -from philo.models import Node, Redirect, File +from philo.admin.base import EntityAdmin, TreeEntityAdmin, COLLAPSE_CLASSES +from philo.models import Node, Redirect, File, NodeNavigationOverride +from philo.forms import NodeWithOverrideForm, NodeOverrideInlineFormSet -class NodeAdmin(EntityAdmin): - pass +class ChildNavigationOverrideInline(admin.StackedInline): + fk_name = 'parent' + model = NodeNavigationOverride + formset = NodeOverrideInlineFormSet + sortable_field_name = 'order' + verbose_name = 'child' + verbose_name_plural = 'children' + extra = 0 + max_num = 0 + + +class NodeAdmin(TreeEntityAdmin): + form = NodeWithOverrideForm + fieldsets = ( + (None, { + 'fields': ('parent', 'slug', 'view_content_type', 'view_object_id'), + }), + ('Navigation Overrides', { + 'fields': ('title', 'url', 'child_navigation'), + 'classes': COLLAPSE_CLASSES + }) + ) + inlines = [ChildNavigationOverrideInline] + TreeEntityAdmin.inlines class ViewAdmin(EntityAdmin):