Mercurial > piecrust2
comparison piecrust/data/provider.py @ 5:474c9882decf
Upgrade to Python 3.
author | Ludovic Chabant <ludovic@chabant.com> |
---|---|
date | Mon, 11 Aug 2014 22:36:47 -0700 |
parents | f485ba500df3 |
children | 343d08ef5668 |
comparison
equal
deleted
inserted
replaced
4:7dc71c2dc9a8 | 5:474c9882decf |
---|---|
26 return self._user_data[name] | 26 return self._user_data[name] |
27 raise KeyError() | 27 raise KeyError() |
28 | 28 |
29 def _debugRenderUserData(self): | 29 def _debugRenderUserData(self): |
30 if self._user_data: | 30 if self._user_data: |
31 return self._user_data.keys() | 31 return list(self._user_data.keys()) |
32 return [] | 32 return [] |
33 | 33 |
34 | 34 |
35 class CompositeDataProvider(object): | 35 class CompositeDataProvider(object): |
36 def __init__(self, providers): | 36 def __init__(self, providers): |
119 for fac in self._source.getPageFactories(): | 119 for fac in self._source.getPageFactories(): |
120 post = fac.buildPage() | 120 post = fac.buildPage() |
121 year = post.datetime.strftime('%Y') | 121 year = post.datetime.strftime('%Y') |
122 | 122 |
123 posts_this_year = next( | 123 posts_this_year = next( |
124 itertools.ifilter(lambda y: y.name == year, self._yearly), | 124 filter(lambda y: y.name == year, self._yearly), |
125 None) | 125 None) |
126 if posts_this_year is None: | 126 if posts_this_year is None: |
127 timestamp = time.mktime( | 127 timestamp = time.mktime( |
128 (post.datetime.year, 1, 1, 0, 0, 0, 0, 0, -1)) | 128 (post.datetime.year, 1, 1, 0, 0, 0, 0, 0, -1)) |
129 posts_this_year = BlogArchiveEntry(self._page, year, timestamp) | 129 posts_this_year = BlogArchiveEntry(self._page, year, timestamp) |
144 for fac in self._source.getPageFactories(): | 144 for fac in self._source.getPageFactories(): |
145 post = fac.buildPage() | 145 post = fac.buildPage() |
146 month = post.datetime.strftime('%B %Y') | 146 month = post.datetime.strftime('%B %Y') |
147 | 147 |
148 posts_this_month = next( | 148 posts_this_month = next( |
149 itertools.ifilter(lambda m: m.name == month, self._monthly), | 149 filter(lambda m: m.name == month, self._monthly), |
150 None) | 150 None) |
151 if posts_this_month is None: | 151 if posts_this_month is None: |
152 timestamp = time.mktime( | 152 timestamp = time.mktime( |
153 (post.datetime.year, post.datetime.month, 1, | 153 (post.datetime.year, post.datetime.month, 1, |
154 0, 0, 0, 0, 0, -1)) | 154 0, 0, 0, 0, 0, -1)) |
175 for val in tax_values: | 175 for val in tax_values: |
176 posts_by_tax_value.setdefault(val, []) | 176 posts_by_tax_value.setdefault(val, []) |
177 posts_by_tax_value[val].append(post) | 177 posts_by_tax_value[val].append(post) |
178 | 178 |
179 entries = [] | 179 entries = [] |
180 for value, ds in posts_by_tax_value.iteritems(): | 180 for value, ds in posts_by_tax_value.items(): |
181 source = ArraySource(self._page.app, ds) | 181 source = ArraySource(self._page.app, ds) |
182 entries.append(BlogTaxonomyEntry(self._page, source, value)) | 182 entries.append(BlogTaxonomyEntry(self._page, source, value)) |
183 self._taxonomies[tax_name] = sorted(entries, key=lambda k: k.name) | 183 self._taxonomies[tax_name] = sorted(entries, key=lambda k: k.name) |
184 | 184 |
185 self._onIteration() | 185 self._onIteration() |