def first_day(request):
    # TODO optimize this
    first_day = Day.first_day()
    if not first_day:
        first_day = datetime.today()

    return {"FIRST_DAY": first_day }
def include_statistics():
    # TODO cache these or otherwise optimize them
    start_date = Day.first_day()
    num_total_stories = Story.all_fiction.count()
    mod_ten = num_total_stories % 10
    num_total_stories -= mod_ten
    featured_stories = Story.verified_fiction.exclude(featured_days=None).filter(featured_days__day__lte=datetime.today())
    num_featured_stories = featured_stories.count()
    num_total_journals = Journal.objects.count()
    num_featured_journals = len(set([s.journal for s in featured_stories]))
    return {
        "start_date": start_date,
        "num_total_journals": num_total_journals,
        "num_total_stories": num_total_stories,
        "num_featured_stories": num_featured_stories,
        "num_featured_journals": num_featured_journals,
    }

# Since Feb 1, 2012, 7 featured stories from 12 unique journals, drawn from 345 stories from 12 unique journals.