|
Revision 3008, 0.8 kB
(checked in by adrian, 2 years ago)
|
Upgraded djangoproject.com to magic-removal
|
| Line | |
|---|
| 1 |
from django import template |
|---|
| 2 |
from django_website.apps.aggregator.models import Feed |
|---|
| 3 |
|
|---|
| 4 |
class FeedListNode(template.Node): |
|---|
| 5 |
def __init__(self, varname): |
|---|
| 6 |
self.varname = varname |
|---|
| 7 |
|
|---|
| 8 |
def render(self, context): |
|---|
| 9 |
context[self.varname] = Feed.objects.filter(is_defunct=False) |
|---|
| 10 |
return '' |
|---|
| 11 |
|
|---|
| 12 |
def do_get_feed_list(parser, token): |
|---|
| 13 |
""" |
|---|
| 14 |
{% get_feed_list as feed_list %} |
|---|
| 15 |
""" |
|---|
| 16 |
bits = token.contents.split() |
|---|
| 17 |
if len(bits) != 3: |
|---|
| 18 |
raise template.TemplateSyntaxError, "'%s' tag takes two arguments" % bits[0] |
|---|
| 19 |
if bits[1] != "as": |
|---|
| 20 |
raise template.TemplateSyntaxError, "First argument to '%s' tag must be 'as'" % bits[0] |
|---|
| 21 |
return FeedListNode(bits[2]) |
|---|
| 22 |
|
|---|
| 23 |
register = template.Library() |
|---|
| 24 |
register.tag('get_feed_list', do_get_feed_list) |
|---|