added feeds from archweb_pub
This commit is contained in:
parent
046b4543a4
commit
19f0a3fb57
36
feeds.py
Normal file
36
feeds.py
Normal file
@ -0,0 +1,36 @@
|
||||
import datetime
|
||||
from django.contrib.syndication.feeds import Feed
|
||||
from archweb.main.models import Package, News
|
||||
#from datetime import datetime
|
||||
|
||||
class PackageFeed(Feed):
|
||||
title = 'Recent Package Updates'
|
||||
link = '/packages/'
|
||||
description = 'Recent Package Updates'
|
||||
|
||||
def items(self):
|
||||
return Package.objects.order_by('-last_update')[:24]
|
||||
|
||||
def item_pubdate(self, item):
|
||||
return item.last_update
|
||||
|
||||
def item_categories(self, item):
|
||||
return (item.repo.name,item.arch.name)
|
||||
|
||||
class NewsFeed(Feed):
|
||||
title = 'Recent News Updates'
|
||||
link = '/news/'
|
||||
description = 'Recent News Updates'
|
||||
|
||||
def items(self):
|
||||
return News.objects.order_by('-postdate', '-id')[:10]
|
||||
|
||||
def item_pubdate(self, item):
|
||||
d = item.postdate
|
||||
return datetime.datetime(d.year, d.month, d.day)
|
||||
|
||||
def item_author_name(self, item):
|
||||
return item.author.get_full_name()
|
||||
|
||||
# vim: set ts=4 sw=4 et:
|
||||
|
4
templates/feeds/news_description.html
Normal file
4
templates/feeds/news_description.html
Normal file
@ -0,0 +1,4 @@
|
||||
{% autoescape off %}
|
||||
{{obj.author.get_full_name}} wrote:<br />
|
||||
{{ obj.content }}
|
||||
{% endautoescape %}
|
1
templates/feeds/news_title.html
Normal file
1
templates/feeds/news_title.html
Normal file
@ -0,0 +1 @@
|
||||
{{ obj.title }}
|
1
templates/feeds/packages_description.html
Normal file
1
templates/feeds/packages_description.html
Normal file
@ -0,0 +1 @@
|
||||
{{ obj.pkgdesc }}
|
1
templates/feeds/packages_title.html
Normal file
1
templates/feeds/packages_title.html
Normal file
@ -0,0 +1 @@
|
||||
{{ obj.pkgname }} {{ obj.pkgver }}-{{ obj.pkgrel }} {{ obj.arch.name }}
|
11
urls.py
11
urls.py
@ -7,6 +7,13 @@
|
||||
from django.contrib.auth.decorators import permission_required
|
||||
|
||||
from archweb.main.models import Todolist
|
||||
from archweb.feeds import PackageFeed, NewsFeed
|
||||
|
||||
|
||||
feeds = {
|
||||
'packages': PackageFeed,
|
||||
'news': NewsFeed
|
||||
}
|
||||
|
||||
admin.autodiscover()
|
||||
|
||||
@ -50,6 +57,10 @@
|
||||
|
||||
(r'^devel/newuser/$', 'archweb.devel.views.new_user_form'),
|
||||
|
||||
# Feeds and sitemaps
|
||||
(r'^feeds/(?P<url>.*)/$',
|
||||
'django.contrib.syndication.views.feed', {'feed_dict': feeds}),
|
||||
|
||||
# Authentication / Admin
|
||||
(r'^login/$', 'django.contrib.auth.views.login', {
|
||||
'template_name': 'registration/login.html'}),
|
||||
|
Loading…
Reference in New Issue
Block a user