aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/neighbors/neighbors.py
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/neighbors/neighbors.py')
-rw-r--r--plugins/neighbors/neighbors.py13
1 files changed, 7 insertions, 6 deletions
diff --git a/plugins/neighbors/neighbors.py b/plugins/neighbors/neighbors.py
index aaa564e..b3c6e99 100644
--- a/plugins/neighbors/neighbors.py
+++ b/plugins/neighbors/neighbors.py
@@ -8,6 +8,7 @@ variables to the article's context
"""
from pelican import signals
+
def iter3(seq):
it = iter(seq)
nxt = None
@@ -17,6 +18,7 @@ def iter3(seq):
nxt, cur = cur, prv
yield nxt, cur, None
+
def get_translation(article, prefered_language):
if not article:
return None
@@ -25,18 +27,16 @@ def get_translation(article, prefered_language):
return translation
return article
+
def set_neighbors(articles, next_name, prev_name):
for nxt, cur, prv in iter3(articles):
exec("cur.{} = nxt".format(next_name))
exec("cur.{} = prv".format(prev_name))
for translation in cur.translations:
- exec(
- "translation.{} = get_translation(nxt, translation.lang)".format(
- next_name))
- exec(
- "translation.{} = get_translation(prv, translation.lang)".format(
- prev_name))
+ exec("translation.{} = get_translation(nxt, translation.lang)".format(next_name))
+ exec("translation.{} = get_translation(prv, translation.lang)".format(prev_name))
+
def neighbors(generator):
set_neighbors(generator.articles, 'next_article', 'prev_article')
@@ -54,5 +54,6 @@ def neighbors(generator):
prev_name = 'prev_article_in_subcategory{}'.format(index)
set_neighbors(articles, next_name, prev_name)
+
def register():
signals.article_generator_finalized.connect(neighbors)