Skip to content

Commit

Permalink
Support user declared inlines
Browse files Browse the repository at this point in the history
  • Loading branch information
atkinson committed Apr 10, 2012
1 parent 74a463f commit 623ce96
Showing 1 changed file with 21 additions and 2 deletions.
23 changes: 21 additions & 2 deletions eventtools/admin.py
Expand Up @@ -237,15 +237,34 @@ class _EventAdmin(SuperModel):
change_form_template = 'admin/eventtools/event.html' change_form_template = 'admin/eventtools/event.html'
save_on_top = True save_on_top = True
prepopulated_fields = {'slug': ('title', )} prepopulated_fields = {'slug': ('title', )}
inlines = [
_inlines = [
OccurrenceInline(EventModel.OccurrenceModel()), OccurrenceInline(EventModel.OccurrenceModel()),
GeneratorInline(EventModel.GeneratorModel()), GeneratorInline(EventModel.GeneratorModel()),
] ]

if show_exclusions: if show_exclusions:
inlines += [ _inlines += [
ExclusionInline(EventModel.ExclusionModel()), ExclusionInline(EventModel.ExclusionModel()),
] ]


# Legacy Django < 1.4
if not DJANGO14:
if hasattr(self, 'inline_instances'):
inline_instances += _inlines
else:
inline_instances = _inlines

# Django 1.4+
def get_inline_instances(self, request):
# Get any regular Django inlines the user may have defined.
inline_instances = super(_EventAdmin, self).get_inline_instances(request)
for inline_class in self._inlines:
inline_instance = inline_class(self.model, self.admin_site)
inline_instances.append( inline_instance )

return inline_instances

def __init__(self, *args, **kwargs): def __init__(self, *args, **kwargs):
super(_EventAdmin, self).__init__(*args, **kwargs) super(_EventAdmin, self).__init__(*args, **kwargs)
self.occurrence_model = EventModel.OccurrenceModel() self.occurrence_model = EventModel.OccurrenceModel()
Expand Down

0 comments on commit 623ce96

Please sign in to comment.