from django.contrib.syndication.views import Feed from django.conf import settings from pyi2phosts.postkey.models import i2phost from pyi2phosts.latest.views import get_latest class AliveHostsFeed(Feed): """ Generate RSS feed with all alive hosts """ title = settings.DOMAIN + ' alive hosts' # FIXME: make this URL more dynamic link = 'http://' + settings.DOMAIN + '/browse/' description = 'All known active hosts inside I2P' def items(self): return i2phost.objects.filter(activated=True).order_by('name') def item_title(self, item): return item.name def item_link(self, item): return 'http://' + item.name + '/?i2paddresshelper=' + item.b64hash def item_description(self, item): return item.description class LatestHostsFeed(AliveHostsFeed): """ Generate RSS feed with freshly added hosts """ title = settings.DOMAIN + ' latest hosts' # FIXME: make this URL more dynamic link = 'http://' + settings.DOMAIN + '/latest/' description = 'Freshly added hosts' def items(self): return get_latest()