X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;ds=sidebyside;f=make-news.py;h=5d196bf9760b9e83adbf3c0af772db9c51485a99;hb=f35203d2c75c0b80b6a19b12e8383f7068ddd110;hp=a1169edfbe537fe60dacfef92080c98fbc1904ff;hpb=47b0884966fe1dfa14dea026a3811e0088a9214f;p=phdru.name%2Fphdru.name.git
diff --git a/make-news.py b/make-news.py
index a1169ed..5d196bf 100755
--- a/make-news.py
+++ b/make-news.py
@@ -1,4 +1,5 @@
#! /usr/local/bin/python -O
+# -*- coding: koi8-r -*-
__version__ = "$Revision$"[11:-2]
__revision__ = "$Id$"[5:-2]
@@ -10,7 +11,10 @@ __copyright__ = "Copyright (C) 2006 PhiloSoft Design"
import sys, os
from news import get_news, write_if_changed
-header, news_items = get_news(sys.argv[1])
+lang = sys.argv[1]
+root = sys.argv[2]
+
+header, news_items = get_news(lang)
new_text = [header]
@@ -25,8 +29,67 @@ for item in news_items:
new_text.append("""\
+
+
+""")
+
+if lang == "en":
+ new_text.append("""\
+News are also available in
+Atom 1.0
+and RSS 2.0
+formats.
+""")
+
+elif lang == "ru":
+ new_text.append("""\
+îÏ×ÏÓÔÅ×ÁÑ ÌÅÎÔÁ × ÆÏÒÍÁÔÁÈ
+Atom 1.0
+É RSS 2.0
.
+""")
+
+new_text.append("""\
+
#end def
$phd_pp_ru.respond(self)
""")
-write_if_changed(os.path.join(sys.argv[2], "news.tmpl"), ''.join(new_text))
+write_if_changed(os.path.join(root, "news.tmpl"), ''.join(new_text))
+
+
+from atom_10 import atom_10
+from rss_20 import rss_20
+
+namespace = {
+ "title": "Oleg Broytmann's Personal Page - News",
+ "baseURL": "http://phd.pp.ru/",
+ "indexFile": "news.html",
+ "description": "",
+ "lang": lang,
+ "author": "Oleg Broytmann",
+ "email": "phd@phd.pp.ru",
+ "generator": os.path.basename(sys.argv[0]),
+ "posts": news_items,
+}
+
+if lang == "ru":
+ namespace["title"] = "Oleg Broytmann's Personal Page - Russian News"
+ namespace["baseURL"] = baseURL = "http://phd.pp.ru/Russian/"
+ for item in news_items:
+ item.baseURL = baseURL
+
+for item in news_items:
+ href_parts = item.rel_link.split('/')
+ if href_parts:
+ if href_parts[0] == '.':
+ category = "Home page"
+ elif href_parts[0] == "..":
+ category = href_parts[1]
+ else:
+ category = href_parts[0]
+ if category: item.categoryList = [category]
+
+atom_tmpl = str(atom_10(searchList=[namespace]))
+write_if_changed(os.path.join(root, "atom_10.xml"), atom_tmpl)
+rss_tmpl = str(rss_20(searchList=[namespace]))
+write_if_changed(os.path.join(root, "rss_20.xml"), rss_tmpl)