Add category support to the Atom feed
This commit is contained in:
@ -23,8 +23,8 @@ LIST_METATAGS = [
|
||||
#####################
|
||||
# Blog helper methods
|
||||
|
||||
def get_blog_feed_items(num=0):
|
||||
posts = get_blog_posts(num, True)
|
||||
def get_blog_feed_items(num=0, category=None):
|
||||
posts = get_blog_posts(num, True, category=category)
|
||||
items = []
|
||||
for post in posts:
|
||||
meta = post[1]
|
||||
|
@ -45,10 +45,12 @@ def blog_rss():
|
||||
pass
|
||||
|
||||
@cache.cached(600)
|
||||
def blog_atom():
|
||||
# TODO: Only output beginning of each blog post
|
||||
feed = AtomFeed('I2P Blog', feed_url=request.url, url=request.url_root)
|
||||
items = get_blog_feed_items(10)
|
||||
def blog_atom(category=None):
|
||||
feed_title = 'I2P Blog'
|
||||
if category:
|
||||
feed_title = 'I2P Blog Category: %s' % category
|
||||
feed = AtomFeed(feed_title, feed_url=request.url, url=request.url_root)
|
||||
items = get_blog_feed_items(10, category=category)
|
||||
for item in items:
|
||||
feed.add(item['title'],
|
||||
item['content'],
|
||||
|
@ -1,4 +1,5 @@
|
||||
{% extends "blog/index.html" %}
|
||||
{% block title %}{{ _('Blog Category') }}: {{ category }}{% endblock %}
|
||||
{% block headextra %}
|
||||
<link href="{{ get_url('blog_atom', category=category) }}" type="application/atom+xml" rel="alternate" title="{% trans %}I2P Blog ATOM Feed for Category: {{ category }}{% endtrans %}" />
|
||||
{%- endblock %}
|
||||
|
@ -45,6 +45,7 @@ url('/<lang:lang>/blog/category/<string:category>/page/<int:page>', 'blog.views.
|
||||
url('/<lang:lang>/blog/post/<path:slug>', 'blog.views.blog_post')
|
||||
url('/<lang:lang>/feed/blog/rss', 'blog.views.blog_rss')
|
||||
url('/<lang:lang>/feed/blog/atom', 'blog.views.blog_atom')
|
||||
url('/<lang:lang>/feed/blog/category/<string:category>/atom', 'blog.views.blog_atom')
|
||||
|
||||
url('/<lang:lang>/meetings/', 'meetings.views.meetings_index', defaults={'page': 1})
|
||||
url('/<lang:lang>/meetings/page/<int:page>', 'meetings.views.meetings_index')
|
||||
|
Reference in New Issue
Block a user