X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;f=make-news.py;h=f6929c78302ea54093506402c87e0b6bc5d589df;hb=d25d749d6c737395c9076c2061c8088fedeb80bf;hp=9556322aff54fac2592599ae3bd090b03255899f;hpb=30c30ad32bd724dd3026cd8c19d2abe033e85dfa;p=phdru.name%2Fphdru.name.git diff --git a/make-news.py b/make-news.py index 9556322..f6929c7 100755 --- a/make-news.py +++ b/make-news.py @@ -1,33 +1,90 @@ -#! /usr/local/bin/python -O - -__version__ = "$Revision$"[11:-2] -__revision__ = "$Id$"[5:-2] -__date__ = "$Date$"[7:-2] -__author__ = "Oleg BroytMann " -__copyright__ = "Copyright (C) 2006 PhiloSoft Design" +#! /usr/bin/env python +# -*- coding: koi8-r -*- +__author__ = "Oleg Broytman " +__copyright__ = "Copyright (C) 2006-2014 PhiloSoft Design" import sys, os from news import get_news, write_if_changed -header, news_items = get_news(sys.argv[1]) -root_dir = sys.argv[2] +lang = sys.argv[1] +root = sys.argv[2] + +header, news_items = get_news(lang) new_text = [header] new_text.append(""" -

-

#end def -$phd_pp_ru.respond(self) +$phd_site.respond(self) """) -write_if_changed(sys.argv[3], ''.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 Broytman's Personal Page - News", + "baseURL": "http://phdru.name/", + "indexFile": "news.html", + "description": "", + "lang": lang, + "author": "Oleg Broytman", + "email": "phd@phdru.name", + "generator": os.path.basename(sys.argv[0]), + "posts": news_items, +} + +if lang == "ru": + namespace["title"] = "Oleg Broytman's Personal Page - Russian News" + namespace["baseURL"] = baseURL = "http://phdru.name/Russian/" + for item in news_items: + item.baseURL = baseURL + item.title = item.title.decode('koi8-r').encode('utf-8') + +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 = unicode(atom_10(searchList=[namespace])).encode('koi8-r') +write_if_changed(os.path.join(root, "atom_10.xml"), atom_tmpl) +rss_tmpl = unicode(rss_20(searchList=[namespace])).encode('koi8-r') +write_if_changed(os.path.join(root, "rss_20.xml"), rss_tmpl)