From f56e8739cba7de8f0884eaaca9ed885807d01e67 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Wed, 12 Nov 2008 12:10:55 -0800 Subject: [PATCH] Recipe for The Moscow Times (thanks to Darko Miletic). Improvements to the stanza feed. --- src/calibre/library/server.py | 17 +++++++++++++++-- src/calibre/web/feeds/recipes/__init__.py | 3 ++- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/src/calibre/library/server.py b/src/calibre/library/server.py index 159663fdef..eadbbddf2b 100644 --- a/src/calibre/library/server.py +++ b/src/calibre/library/server.py @@ -8,6 +8,7 @@ HTTP server for remote access to the calibre database. ''' import sys, textwrap, cStringIO, mimetypes, operator, os, re, logging +from itertools import repeat from logging.handlers import RotatingFileHandler from datetime import datetime from threading import Thread @@ -80,7 +81,7 @@ class LibraryServer(object): -
${record[FM['comments']]}
+
${Markup(extra)}${record[FM['comments']]}
''')) @@ -243,11 +244,23 @@ class LibraryServer(object): books = [] for record in iter(self.db): if 'EPUB' in record[FIELD_MAP['formats']].upper(): - authors = ' & '.join([i.replace('|', ',') for i in record[2].split(',')]) + authors = ' & '.join([i.replace('|', ',') for i in record[FIELD_MAP['authors']].split(',')]) + extra = [] + rating = record[FIELD_MAP['rating']] + if rating > 0: + rating = ''.join(repeat('★', rating)) + extra.append('RATING: %s
'%rating) + tags = record[FIELD_MAP['tags']] + if tags: + extra.append('TAGS: %s
'%', '.join(tags)) + series = record[FIELD_MAP['series']] + if series: + extra.append('SERIES: %s [%d]
'%(series, record[FIELD_MAP['series_index']])) books.append(self.STANZA_ENTRY.generate(authors=authors, record=record, FM=FIELD_MAP, port=self.opts.port, server=self.opts.hostname, + extra = ''.join(extra), ).render('xml').decode('utf8')) updated = self.db.last_modified() diff --git a/src/calibre/web/feeds/recipes/__init__.py b/src/calibre/web/feeds/recipes/__init__.py index ea089ba37c..c50f93d7ef 100644 --- a/src/calibre/web/feeds/recipes/__init__.py +++ b/src/calibre/web/feeds/recipes/__init__.py @@ -10,7 +10,8 @@ recipes = [ 'wired', 'globe_and_mail', 'smh', 'espn', 'business_week', 'ars_technica', 'upi', 'new_yorker', 'irish_times', 'iht', 'lanacion', 'discover_magazine', 'scientific_american', 'new_york_review_of_books', - 'daily_telegraph', 'guardian', 'el_pais', 'new_scientist', 'b92', 'politika' + 'daily_telegraph', 'guardian', 'el_pais', 'new_scientist', 'b92', + 'politika', 'moscow_times' ] import re, imp, inspect, time, os