From 847e9272ea2345e434054815e7d7ad3c3d4e104d Mon Sep 17 00:00:00 2001 From: Nico von Geyso Date: Mon, 30 Jul 2012 20:58:11 +0200 Subject: group blog posts by year --- utils/filters.py | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'utils') diff --git a/utils/filters.py b/utils/filters.py index 2469419..22c9f7d 100644 --- a/utils/filters.py +++ b/utils/filters.py @@ -1,8 +1,20 @@ +def group_by_year(objs): + entries = {} + for obj in objs: + year = obj.date.strftime('%Y') + + try: + entries[year].append(obj) + except: + entries[year] = [obj] + + return entries + def filter_by_attr(objs, attr): return filter(lambda x: hasattr(x,attr), objs) def filter_by_path(objs, value): return filter(lambda page: page.path.startswith(value), objs) -filters = [filter_by_attr, filter_by_path] +filters = [filter_by_attr, filter_by_path, group_by_year] -- cgit v1.2.3-1-g7c22