X-Git-Url: https://git.llucax.com/software/blitiri.git/blobdiff_plain/275c0cd4019fb2c9b015fb76a526e411217df156..0d3e028e524ed830f74ad82b2ac5e12b7a23ce07:/blitiri.cgi?ds=sidebyside diff --git a/blitiri.cgi b/blitiri.cgi index bce7765..0ffc81a 100755 --- a/blitiri.cgi +++ b/blitiri.cgi @@ -51,6 +51,9 @@ encoding = "utf8" # below for details. captcha_method = "title" +# How many articles to show in the index +index_articles = 10 + # # End of configuration @@ -192,6 +195,7 @@ default_main_footer = """ years: %(yearlinks)s
subscribe: atom
views: blog list
+ tags: %(taglinks)s
@@ -583,6 +587,7 @@ class Templates (object): 'showyear': showyear, 'monthlinks': ' '.join(db.get_month_links(showyear)), 'yearlinks': ' '.join(db.get_year_links()), + 'taglinks': ' '.join(db.get_tag_links()), } def get_template(self, page_name, default_template, extra_vars = None): @@ -776,7 +781,7 @@ class CommentDB (object): # if comments were enabled after the article was added, we # will need to create the directory if not os.path.exists(self.path): - os.mkdir(self.path, 0755) + os.mkdir(self.path, 0777) self.comments = [] self.load(article) @@ -967,6 +972,7 @@ class ArticleDB (object): self.uuids = {} self.actyears = set() self.actmonths = set() + self.acttags = set() self.load() def get_articles(self, year = 0, month = 0, day = 0, tags = None): @@ -1004,6 +1010,7 @@ class ArticleDB (object): datetime.datetime.fromtimestamp(float(l[1])), datetime.datetime.fromtimestamp(float(l[2]))) self.uuids[a.uuid] = a + self.acttags.update(a.tags) self.actyears.add(a.created.year) self.actmonths.add((a.created.year, a.created.month)) self.articles.append(a) @@ -1038,6 +1045,12 @@ class ArticleDB (object): ml.append(s) return ml + def get_tag_links(self): + tl = list(self.acttags) + tl.sort() + return [ '%s' % (blog_url, + sanitize(t), sanitize(t)) for t in tl ] + # # Main # @@ -1205,7 +1218,7 @@ def handle_cgi(): if atom: articles = db.get_articles(tags = tags) articles.sort(reverse = True) - render_atom(articles[:10]) + render_atom(articles[:index_articles]) elif style: render_style() elif post: @@ -1268,7 +1281,7 @@ def handle_cgi(): articles = db.get_articles(year, month, day, tags) articles.sort(reverse = True) if not year and not month and not day and not tags: - articles = articles[:10] + articles = articles[:index_articles] render_html(articles, db, year)