aboutsummaryrefslogtreecommitdiffstats
path: root/nikola/plugins/task_render_pages.py
diff options
context:
space:
mode:
authorLibravatarAgustin Henze <tin@sluc.org.ar>2012-12-12 20:15:48 -0300
committerLibravatarAgustin Henze <tin@sluc.org.ar>2012-12-12 20:15:48 -0300
commit0f2c04e70a0ffdd0892d6970cafbcd952d221db5 (patch)
treed36f7747c4b9cb5c5e00cae5b137d22214b1c7be /nikola/plugins/task_render_pages.py
parentca1f5a392261a7c6b82b5ac1015427605909d8c9 (diff)
Imported Upstream version 5upstream/5
Diffstat (limited to 'nikola/plugins/task_render_pages.py')
-rw-r--r--nikola/plugins/task_render_pages.py35
1 files changed, 35 insertions, 0 deletions
diff --git a/nikola/plugins/task_render_pages.py b/nikola/plugins/task_render_pages.py
new file mode 100644
index 0000000..954dc47
--- /dev/null
+++ b/nikola/plugins/task_render_pages.py
@@ -0,0 +1,35 @@
+from nikola.plugin_categories import Task
+from nikola.utils import config_changed
+
+
+class RenderPages(Task):
+ """Render pages into output."""
+
+ name = "render_pages"
+
+ def gen_tasks(self):
+ """Build final pages from metadata and HTML fragments."""
+ kw = {
+ "post_pages": self.site.config["post_pages"],
+ "translations": self.site.config["TRANSLATIONS"],
+ "filters": self.site.config["FILTERS"],
+ }
+ self.site.scan_posts()
+ flag = False
+ for lang in kw["translations"]:
+ for wildcard, destination, template_name, _ in kw["post_pages"]:
+ for task in self.site.generic_page_renderer(lang,
+ wildcard, template_name, destination, kw["filters"]):
+ task['uptodate'] = [config_changed({
+ 1: task['uptodate'][0].config,
+ 2: kw})]
+ task['basename'] = self.name
+ flag = True
+ yield task
+ if flag is False: # No page rendered, yield a dummy task
+ yield {
+ 'basename': self.name,
+ 'name': 'None',
+ 'uptodate': [True],
+ 'actions': [],
+ }