Newer
Older
# coding=utf-8
from django.utils import timezone
from datetime import timedelta
def get_today_midnight_date():
today = timezone.now()
today_midnight = datetime.datetime(today.year, today.month, today.day, tzinfo=today.tzinfo)
return today_midnight
def get_weekdays_in_period(fromdate, todate):
'''
fromdate and todate must be generated using datetime.date or datetime.datetime like:
from datetime import date
fromdate = date(2010,1,1)
todate = date(2010,3,31)
fromdate = datetime.datetime(2018, 10, 3, 15, 00, 00)
todate = datetime.datetime.today()
but both dates must have the same format !
todate is not included in the range
Weekdays are returned as isoweekdays like the form described in week_choices from constants.py (starting at 1)
'''
if todate < fromdate:
return set([])
day_generator = (fromdate + timedelta(day) for day in xrange((todate - fromdate).days))
weekdays = set([date.isoweekday() for date in day_generator])
return weekdays