From 597dba1391a8b8d7d827269cfc9022786398e7f5 Mon Sep 17 00:00:00 2001 From: Joshua Adelman Date: Thu, 19 Jul 2012 20:59:48 -0400 Subject: [PATCH] Added signals to plugin for pages generation --- docs/plugins.rst | 2 ++ pelican/generators.py | 4 +++- pelican/signals.py | 2 ++ 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/docs/plugins.rst b/docs/plugins.rst index 3e009e33..3acecebe 100644 --- a/docs/plugins.rst +++ b/docs/plugins.rst @@ -59,6 +59,8 @@ Signal Arguments Description initialized pelican object article_generate_context article_generator, metadata article_generator_init article_generator invoked in the ArticlesGenerator.__init__ +pages_generate_context pages_generator, metadata +pages_generator_init pages_generator invoked in the PagesGenerator.__init__ ========================= ============================ ========================================= The list is currently small, don't hesitate to add signals and make a pull diff --git a/pelican/generators.py b/pelican/generators.py index 14616949..4401d403 100644 --- a/pelican/generators.py +++ b/pelican/generators.py @@ -363,7 +363,8 @@ class PagesGenerator(Generator): self.hidden_pages = [] self.hidden_translations = [] super(PagesGenerator, self).__init__(*args, **kwargs) - + signals.pages_generator_init.send(self) + def generate_context(self): all_pages = [] hidden_pages = [] @@ -388,6 +389,7 @@ class PagesGenerator(Generator): (repr(unicode.encode(page.status, 'utf-8')), repr(f))) + signals.pages_generate_context.send(self,metadata=metadata) self.pages, self.translations = process_translations(all_pages) self.hidden_pages, self.hidden_translations = process_translations(hidden_pages) diff --git a/pelican/signals.py b/pelican/signals.py index b1c35794..4d9ab512 100644 --- a/pelican/signals.py +++ b/pelican/signals.py @@ -3,3 +3,5 @@ from blinker import signal initialized = signal('pelican_initialized') article_generate_context = signal('article_generate_context') article_generator_init = signal('article_generator_init') +pages_generate_context = signal('pages_generate_context') +pages_generator_init = signal('pages_generator_init')