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()