##// END OF EJS Templates
Basic support for the generic forms. Still need to fix some things in the form...
Basic support for the generic forms. Still need to fix some things in the form rendering, also need to implement a new widget for the text with formatting panel.

File last commit:

r419:4e6774d5 default
r425:abb0b1c9 default
Show More
rss.py
79 lines | 2.1 KiB | text/x-python | PythonLexer
from django.contrib.syndication.views import Feed
from django.core.urlresolvers import reverse
from django.shortcuts import get_object_or_404
from boards.models import Post, Tag
from neboard import settings
__author__ = 'neko259'
# TODO Make tests for all of these
class AllThreadsFeed(Feed):
title = settings.SITE_NAME + ' - All threads'
link = '/'
description_template = 'boards/rss/post.html'
def items(self):
return Post.objects.get_threads() # TODO Order this by OP's pub time
def item_title(self, item):
return item.get_opening_post().title
def item_link(self, item):
return reverse('thread', args={item.get_opening_post().id})
def item_pubdate(self, item):
return item.get_pub_time()
class TagThreadsFeed(Feed):
link = '/'
description_template = 'boards/rss/post.html'
def items(self, obj):
return Post.objects.get_threads(tag=obj) # TODO Order this by OP's pub time
def get_object(self, request, tag_name):
return get_object_or_404(Tag, name=tag_name)
def item_title(self, item):
return item.get_opening_post().title
def item_link(self, item):
return reverse('thread', args={item.get_opening_post().id})
def item_pubdate(self, item):
return item.get_pub_time()
def title(self, obj):
return obj.name
class ThreadPostsFeed(Feed):
link = '/'
description_template = 'boards/rss/post.html'
def items(self, obj):
return get_object_or_404(Post, id=obj).thread_new.get_replies()
def get_object(self, request, post_id):
return post_id
def item_title(self, item):
return item.title
def item_link(self, item):
if not item.is_opening():
return reverse('thread', args={item.thread_new.get_opening_post()
.id}) + "#" + str(item.id)
else:
return reverse('thread', args={item.id})
def item_pubdate(self, item):
return item.pub_time
def title(self, obj):
return get_object_or_404(Post, id=obj).title