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.