]> git.phdru.name Git - phdru.name/phdru.name.git/blobdiff - reindex_blog.py
This is HTML, not XHTML.
[phdru.name/phdru.name.git] / reindex_blog.py
index a4667b01c56edd9901d9fda68f383c80b3b0d647..92a02272ea79c60a9f79b0ae21fe8733d6fa47f2 100755 (executable)
@@ -1,10 +1,10 @@
-#! /usr/local/bin/python -O
+#! /usr/bin/env python
 # -*- coding: koi8-r -*-
 
 __version__ = "$Revision$"[11:-2]
 __revision__ = "$Id$"[5:-2]
 __date__ = "$Date$"[7:-2]
-__author__ = "Oleg BroytMann <phd@phd.pp.ru>"
+__author__ = "Oleg Broytman <phd@phd.pp.ru>"
 __copyright__ = "Copyright (C) 2006 PhiloSoft Design"
 
 
@@ -84,19 +84,22 @@ if blog <> old_blog:
    pickle.dump(blog, blog_file, pickle.HIGHEST_PROTOCOL)
    blog_file.close()
 
-
 # Localized month names
 
 import locale
-locale.setlocale(locale.LC_ALL, '')
+locale.setlocale(locale.LC_ALL, "ru_RU.KOI8-R")
 from calendar import _localized_day, _localized_month
 
 locale.setlocale(locale.LC_TIME, 'C')
 months_names_en = list(_localized_month('%B'))
 months_abbrs_en = list(_localized_month('%b'))
 
-locale.setlocale(locale.LC_TIME, '')
-months_names_ru = [month.lower() for month in _localized_month('%B')]
+locale.setlocale(locale.LC_TIME, "ru_RU.KOI8-R")
+#months_names_ru = list(_localized_month('%B'))
+
+months_names_ru = ['', "января", "февраля", "марта", "апреля", "мая", "июня",
+   "июля", "августа", "сентября", "октября", "ноября", "декабря"
+]
 
 months_names_ru0 = ['', "январь", "февраль", "март", "апрель", "май", "июнь",
    "июль", "август", "сентябрь", "октябрь", "ноябрь", "декабрь"
@@ -124,36 +127,36 @@ def write_template(level, year, month, day, titles, tags=None):
 
    if level == 0:
       new_text.append("""\
-#attr $Title = "Oleg BroytMann's blog"
-#attr $Description = "BroytMann Russian Blog Index Document"
+#attr $Title = "Oleg Broytman's blog"
+#attr $Description = "Broytman Russian Blog Index Document"
 #attr $Copyright = %(cyear)s
 #attr $alternates = (("application/atom+xml", "News [Atom 1.0]", "atom_10.xml"),
                      ("application/rss+xml",  "News [RSS 2.0]",  "rss_20.xml")
 )
 ##
 #def body_html
-<H1>Журнал</H1>
+<h1>Журнал</h1>
 """ % {"cyear": year or 2005})
 
    elif level == 1:
       new_text.append("""\
-#attr $Title = "Oleg BroytMann's blog: %(year)s"
-#attr $Description = "BroytMann Russian Blog %(year)s Index Document"
+#attr $Title = "Oleg Broytman's blog: %(year)s"
+#attr $Description = "Broytman Russian Blog %(year)s Index Document"
 #attr $Copyright = %(cyear)s
 ##
 #def body_html
-<H1>Журнал: %(year)s</H1>
+<h1>Журнал: %(year)s</h1>
 """ % {"year": year, "cyear": year or 2005})
 
    elif level == 2:
       imonth = int(month)
       new_text.append("""\
-#attr $Title = "Oleg BroytMann's blog: %(month_abbr_en)s %(year)s"
-#attr $Description = "BroytMann Russian Blog %(month_name_en)s %(year)s Index Document"
+#attr $Title = "Oleg Broytman's blog: %(month_abbr_en)s %(year)s"
+#attr $Description = "Broytman Russian Blog %(month_name_en)s %(year)s Index Document"
 #attr $Copyright = %(cyear)s
 ##
 #def body_html
-<H1>Журнал: %(month_name_ru0)s %(year)s</H1>
+<h1>Журнал: %(month_name_ru0)s %(year)s</h1>
 """ % {
       "year": year, "cyear": year or 2005,
       "month_abbr_en": months_abbrs_en[imonth], "month_name_en": months_names_en[imonth],
@@ -175,12 +178,12 @@ def write_template(level, year, month, day, titles, tags=None):
 """ % titles[0][3])
 
       new_text.append("""\
-#attr $Title = "Oleg BroytMann's blog: %(day)d %(month_abbr_en)s %(year)s"
-#attr $Description = "BroytMann Russian Blog %(day)d %(month_name_en)s %(year)s Index Document"
+#attr $Title = "Oleg Broytman's blog: %(day)d %(month_abbr_en)s %(year)s"
+#attr $Description = "Broytman Russian Blog %(day)d %(month_name_en)s %(year)s Index Document"
 #attr $Copyright = %(cyear)s
 ##
 #def body_html
-<H1>Журнал: %(day)d %(month_name_ru)s %(year)s</H1>
+<h1>Журнал: %(day)d %(month_name_ru)s %(year)s</h1>
 """ % {
       "year": year, "cyear": year or 2005,
       "month_abbr_en": months_abbrs_en[imonth], "month_name_en": months_names_en[imonth],
@@ -191,7 +194,7 @@ def write_template(level, year, month, day, titles, tags=None):
    save_titles = titles[:]
    titles.reverse()
 
-   save_day = None
+   save_date = None
    for year, month, day, file, title, lead in titles:
       href = []
       if level == 0:
@@ -203,12 +206,12 @@ def write_template(level, year, month, day, titles, tags=None):
       href.append(file)
       href = '/'.join(href)
       if day[0] == '0': day = day[1:]
-      if save_day <> day:
+      if save_date <> (year, month, day):
          if level == 0:
             new_text.append('\n<h2>%s %s %s</h2>' % (day, months_names_ru[int(month)], year))
          else:
             new_text.append('\n<h2>%s %s</h2>' % (day, months_names_ru[int(month)]))
-         save_day = day
+         save_date = year, month, day
       if lead:
          lead = lead + ' '
       else:
@@ -246,11 +249,14 @@ def write_template(level, year, month, day, titles, tags=None):
 </p>
 ''')
 
+      max_year = int(sorted(years.keys())[-1])
+      years = range(2005, max_year+1)
+
       new_text.append('''
 <p class="head">По годам:
 ''')
       first_year = True
-      for year in sorted(years.keys()):
+      for year in years:
          if first_year:
             first_year = False
          else:
@@ -322,12 +328,12 @@ new_text = ["""\
 ## THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT.
 #extends phd_pp_ru
 #implements respond
-#attr $Title = "Oleg BroytMann's blog: tags"
-#attr $Description = "BroytMann Russian Blog Tags Index Document"
+#attr $Title = "Oleg Broytman's blog: tags"
+#attr $Description = "Broytman Russian Blog Tags Index Document"
 #attr $Copyright = 2006
 ##
 #def body_html
-<H1>Теги</H1>
+<h1>Теги</h1>
 
 <p class="head">
 <dl>
@@ -342,12 +348,12 @@ for count, tag, links in all_tags:
 ## THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT.
 #extends phd_pp_ru
 #implements respond
-#attr $Title = "Oleg BroytMann's blog: tag %s"
-#attr $Description = "BroytMann Russian Blog Tag %s Index Document"
+#attr $Title = "Oleg Broytman's blog: tag %s"
+#attr $Description = "Broytman Russian Blog Tag %s Index Document"
 #attr $Copyright = 2006
 ##
 #def body_html
-<H1>%s</H1>
+<h1>%s</h1>
 
 <p class="head">
 <ul>
@@ -389,7 +395,10 @@ from atom_10 import atom_10
 from rss_20 import rss_20
 from news import NewsItem
 
-baseURL = "http://phd.pp.ru/" + blog_root
+if blog_root:
+   baseURL = "http://phd.pp.ru/%s/" % blog_root
+else:
+   baseURL = "http://phd.pp.ru/"
 
 items = []
 for item in tuple(reversed(all_titles_tags))[:10]:
@@ -408,12 +417,12 @@ for item in tuple(reversed(all_titles_tags))[:10]:
    item.categoryList = tags
 
 namespace = {
-   "title": "Oleg Broytmann's blog",
+   "title": "Oleg Broytman's blog",
    "baseURL": baseURL,
    "indexFile": "",
    "description": "",
    "lang": "ru",
-   "author": "Oleg Broytmann",
+   "author": "Oleg Broytman",
    "email": "phd@phd.pp.ru",
    "generator": os.path.basename(sys.argv[0]),
    "posts": items,