def date_range(request, startyear=None, startmonth=None, startday=None, finishyear=None, finishmonth=None, finishday=None): " return a list of date objects within the given range " c = DynamicCalendar() calendar_html = c.generate_calendar() if startyear and finishyear is not None: try: currentdate = datetime.date(int(startyear),int(startmonth),int(startday)) enddate = datetime.date(int(finishyear),int(finishmonth),int(finishday)) except TypeError: # non integer passed pass else: date_range = c.range(start = currentdate, finish = enddate) elif startyear is not None: # single day being looked at try: currentdate = datetime.date(int(startyear),int(startmonth),int(startday)) except TypeError: # non integer passed pass else: date_range = [] date_range.append(currentdate) html = render_to_string('dates.html', locals()) return HttpResponse(html, mimetype="text/html")