summaryrefslogtreecommitdiffstats
path: root/web/macros.py
diff options
context:
space:
mode:
Diffstat (limited to 'web/macros.py')
-rw-r--r--web/macros.py13
1 files changed, 11 insertions, 2 deletions
diff --git a/web/macros.py b/web/macros.py
index 3eb1046..eab21bc 100644
--- a/web/macros.py
+++ b/web/macros.py
@@ -3,7 +3,7 @@ import math
3import os.path 3import os.path
4import time 4import time
5 5
6plugins_release = '3.0.0-rc1' 6plugins_release = '3.0.0-rc2'
7mib_release = '1.0.1' 7mib_release = '1.0.1'
8release_notes = 'news/release-%s.html' % plugins_release.replace('.', '-') 8release_notes = 'news/release-%s.html' % plugins_release.replace('.', '-')
9site_url = 'https://www.monitoring-plugins.org/' 9site_url = 'https://www.monitoring-plugins.org/'
@@ -52,6 +52,7 @@ _RSS_ITEM = """
52 </item> 52 </item>
53""" 53"""
54 54
55
55def hook_postconvert_rss(): 56def hook_postconvert_rss():
56 items = [] 57 items = []
57 posts = [p for p in pages if 'date' in p] 58 posts = [p for p in pages if 'date' in p]
@@ -75,6 +76,7 @@ def hook_postconvert_rss():
75# News 76# News
76# 77#
77 78
79
78def hook_preconvert_news(): 80def hook_preconvert_news():
79 posts_per_page = 10 81 posts_per_page = 10
80 posts = [p for p in pages if 'date' in p] 82 posts = [p for p in pages if 'date' in p]
@@ -97,6 +99,7 @@ def hook_preconvert_news():
97 parent='News') 99 parent='News')
98 pages.append(p) 100 pages.append(p)
99 101
102
100def make_news_page(posts, current_index): 103def make_news_page(posts, current_index):
101 marker = '<end-of-teaser>' 104 marker = '<end-of-teaser>'
102 if current_index == 0: 105 if current_index == 0:
@@ -121,6 +124,7 @@ def make_news_page(posts, current_index):
121 p['parent'] = title 124 p['parent'] = title
122 return '\n'.join(teaser) + '\n\n' 125 return '\n'.join(teaser) + '\n\n'
123 126
127
124def make_news_footer(n_news_pages, current_index): 128def make_news_footer(n_news_pages, current_index):
125 if n_news_pages == 1: 129 if n_news_pages == 1:
126 return '' 130 return ''
@@ -142,6 +146,7 @@ def make_news_footer(n_news_pages, current_index):
142 footer.append('[Last](news/%d.html)' % n_news_pages) 146 footer.append('[Last](news/%d.html)' % n_news_pages)
143 return '&emsp;'.join(footer) + '\n{: #news-footer }\n' 147 return '&emsp;'.join(footer) + '\n{: #news-footer }\n'
144 148
149
145def next_news_chunk(posts, posts_per_page): 150def next_news_chunk(posts, posts_per_page):
146 index = 0 151 index = 0
147 while len(posts[index:]) > 0: 152 while len(posts[index:]) > 0:
@@ -152,6 +157,7 @@ def next_news_chunk(posts, posts_per_page):
152# Menu and Breadcrumb Navigation 157# Menu and Breadcrumb Navigation
153# 158#
154 159
160
155def menu(): 161def menu():
156 menu_pages = [p for p in pages if 'menu' in p] 162 menu_pages = [p for p in pages if 'menu' in p]
157 menu_pages.sort(key=lambda p: int(p['menu'])) 163 menu_pages.sort(key=lambda p: int(p['menu']))
@@ -161,9 +167,10 @@ def menu():
161 else: 167 else:
162 print('<span><a href="%s">%s</a></span>' % (p.url, hx(p.title))) 168 print('<span><a href="%s">%s</a></span>' % (p.url, hx(p.title)))
163 169
170
164def breadcrumb(): 171def breadcrumb():
165 stable = '<span id="release">Stable release: <a href="%s">%s</a></span>' \ 172 stable = '<span id="release">Stable release: <a href="%s">%s</a></span>' \
166 % (release_notes, plugins_release) 173 % (release_notes, plugins_release)
167 parents = {p.title: (p.url, p.get('parent')) for p in pages} 174 parents = {p.title: (p.url, p.get('parent')) for p in pages}
168 title = page.title 175 title = page.title
169 crumbs = hx(title) 176 crumbs = hx(title)
@@ -179,11 +186,13 @@ def breadcrumb():
179# Miscellaneous 186# Miscellaneous
180# 187#
181 188
189
182def list_kids(): 190def list_kids():
183 kids = [(p.url, p.title) for p in pages if p.get('parent') == page.title] 191 kids = [(p.url, p.title) for p in pages if p.get('parent') == page.title]
184 for kid in sorted(kids): 192 for kid in sorted(kids):
185 print('* [%s](%s)' % (kid[1], kid[0])) 193 print('* [%s](%s)' % (kid[1], kid[0]))
186 194
195
187def copyright_years(since=None): 196def copyright_years(since=None):
188 this_year = time.gmtime().tm_year 197 this_year = time.gmtime().tm_year
189 if since is not None and int(since) != this_year: 198 if since is not None and int(since) != this_year: