]> oss.titaniummirror.com Git - webber.git/commitdiff
rss_feed.py: limit number of published items via "rss_max_items"
authorHolger Schurig <holgerschurig@gmail.com>
Wed, 23 Jun 2010 09:27:03 +0000 (11:27 +0200)
committerHolger Schurig <holgerschurig@gmail.com>
Wed, 23 Jun 2010 09:27:03 +0000 (11:27 +0200)
plugins/rss_feed.py

index 6810e947ce5a89bacd6960d28591f847bae19a74..580d3040925ec0e07af77fd8af67eab82add60b4 100644 (file)
@@ -16,6 +16,8 @@ def checkconfig(params):
        if not cfg.has_key("rss_file"):
                log('no "rss_file:" configured, using "feed.rss":', 4)
                cfg.rss_file = "feed.rss"
+       if not cfg.has_key("rss_max_items"):
+               cfg.rss_max_items = 0
        if cfg.has_key("rss_max_age_days"):
                import time
                global max_age
@@ -66,9 +68,15 @@ def sitemap_scan(params):
 
 @set_hook("finish")
 def finish(params):
+       global items
        # Sort items by pubDate, which still holds the mtime
        items.sort(key=lambda i: i.pubDate, reverse=True)
 
+       # Limit to requested number
+       count = int(cfg.rss_max_items)
+       if count:
+               items = items[:count]
+
        # convert mtime to real pupDate
        for i in items:
                i.pubDate = datetime.datetime.fromtimestamp(i.pubDate, utc)