blob: 700af880303451476de6e800b76dcc0f853fb3fb (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
from blogofile.cache import bf
import re
blog = bf.config.controllers.blog
def run():
write_permapages()
def write_permapages():
"Write blog posts to their permalink locations"
site_re = re.compile(bf.config.site.url, re.IGNORECASE)
num_posts = len(blog.posts)
for i, post in enumerate(blog.posts):
if post.permalink:
path = site_re.sub("", post.permalink)
blog.logger.info("Writing permapage for post: {0}".format(path))
else:
#Permalinks MUST be specified. No permalink, no page.
blog.logger.info("Post has no permalink: {0}".format(post.title))
continue
env = {
"post": post,
"posts": blog.posts,
"next_post": None,
"prev_post": None
}
#Find the next and previous posts chronologically
if i < num_posts - 1:
env['prev_post'] = blog.posts[i + 1]
if i > 0:
env['next_post'] = blog.posts[i - 1]
bf.writer.materialize_template(
"permapage.mako", bf.util.path_join(path, "index.html"), env)
|