From 29cce749fa9f6c044475f5b21e9b13e8f14ff74a Mon Sep 17 00:00:00 2001 From: Robert Wittams Date: Tue, 8 Nov 2005 23:31:47 +0000 Subject: [PATCH] Templatised date_hierarchy. git-svn-id: http://code.djangoproject.com/svn/django/branches/new-admin@1129 bcc190cf-cafb-0310-a4f2-bffc1f526a37 --- .../admin/templates/admin/date_hierarchy.html | 8 +++ .../contrib/admin/templatetags/admin_list.py | 62 ++++++++++++------- django/contrib/admin/views/main.py | 2 - 3 files changed, 47 insertions(+), 25 deletions(-) create mode 100644 django/contrib/admin/templates/admin/date_hierarchy.html diff --git a/django/contrib/admin/templates/admin/date_hierarchy.html b/django/contrib/admin/templates/admin/date_hierarchy.html new file mode 100644 index 0000000000..7662ed18f9 --- /dev/null +++ b/django/contrib/admin/templates/admin/date_hierarchy.html @@ -0,0 +1,8 @@ +
+
+
diff --git a/django/contrib/admin/templatetags/admin_list.py b/django/contrib/admin/templatetags/admin_list.py index 3f155564c0..ba9c7ec340 100644 --- a/django/contrib/admin/templatetags/admin_list.py +++ b/django/contrib/admin/templatetags/admin_list.py @@ -222,12 +222,11 @@ def result_list(cl): result_list = inclusion_tag("admin/change_list_results")(result_list) -#@simple_tag +#@inclusion_tag("admin/date_hierarchy") def date_hierarchy(cl): lookup_opts, params, lookup_params, lookup_mod = \ cl.lookup_opts, cl.params, cl.lookup_params, cl.lookup_mod - raw_template = [] if lookup_opts.admin.date_hierarchy: field_name = lookup_opts.admin.date_hierarchy @@ -238,35 +237,52 @@ def date_hierarchy(cl): year_lookup = params.get(year_field) month_lookup = params.get(month_field) day_lookup = params.get(day_field) - - raw_template.append('
\n
\n
\n') - return ''.join(raw_template) -date_hierarchy = simple_tag(date_hierarchy) + years = get_dates('year', lookup_params) + return { 'choices': + [ { 'link': link( {year_field: year.year}), + 'title': year.year } for year in years ] + } +date_hierarchy = inclusion_tag('admin/date_hierarchy')(date_hierarchy) #@inclusion_tag('admin/search_form') def search_form(cl): diff --git a/django/contrib/admin/views/main.py b/django/contrib/admin/views/main.py index 7f0c5c5906..99be09578b 100644 --- a/django/contrib/admin/views/main.py +++ b/django/contrib/admin/views/main.py @@ -120,7 +120,6 @@ class RelatedFilterSpec(FilterSpec): FilterSpec.register(lambda f: bool(f.rel), RelatedFilterSpec) class ChoicesFilterSpec(FilterSpec): - def __init__(self, f, request, params): super(ChoicesFilterSpec, self).__init__(f, request, params) self.lookup_kwarg = '%s__exact' % f.name @@ -173,7 +172,6 @@ class DateFieldFilterSpec(FilterSpec): FilterSpec.register(lambda f: isinstance(f, meta.DateField), DateFieldFilterSpec) class BooleanFieldFilterSpec(FilterSpec): - def __init__(self, f, request, params): super(BooleanFieldFilterSpec, self).__init__(f, request, params) self.lookup_kwarg = '%s__exact' % f.name