Files @ a00195c8f6d0
Branch filter:

Location: website/www/conservancy/frontpage.py

brett
static.views: Deduplicate code.

The primary goal here is to get templates rendered more like our "regular"
templates, by using more of the standard tools to do so rather than roll our
own.

* Use TemplateResponse. This requires less boilerplate and ensures the
rendering runs through our local context processors.
* Use the existing definition of fundgoal_lookup.
from conservancy import render_template_with_context
from conservancy.apps.supporters.models import Supporter as Supporter
from conservancy.apps.news.models import PressRelease
from conservancy.apps.blog.models import Entry as BlogEntry
from datetime import datetime

def view(request):
    """Conservancy front page view

    Performs all object queries necessary to render the front page.
    """

    now = datetime.now()
    context = {
        'press_releases': PressRelease.objects.all().filter(pub_date__lte=now, sites=2)[:5],
        'supporters_count': len(Supporter.objects.all().filter(display_until_date__gte=now)),
        'blog': BlogEntry.objects.all().filter(pub_date__lte=now)[:5],
    }
    return render_template_with_context(request, "frontpage.html", context)