Bugfixes for urls with dates

This commit is contained in:
Paulus Schoutsen 2016-05-28 10:37:22 -07:00
parent e10b00f341
commit bfdb51a558
4 changed files with 7 additions and 20 deletions

@ -1 +1 @@
Subproject commit 0be98873d7044f387645f3a694e41660be663b66
Subproject commit 4f8e2d568755fdb7c4eb61ca13533665202dbd23

View file

@ -177,26 +177,19 @@ class HistoryPeriodView(HomeAssistantView):
"""Handle history period requests."""
url = '/api/history/period'
name = 'api:history:entity-recent-states'
name = 'api:history:view-period'
extra_urls = ['/api/history/period/<date:date>']
def get(self, request, date=None):
"""Return history over a period of time."""
one_day = timedelta(seconds=86400)
one_day = timedelta(days=1)
if date:
start_date = dt_util.parse_date(date)
if start_date is None:
return self.json_message('Error parsing JSON',
HTTP_BAD_REQUEST)
start_time = dt_util.as_utc(dt_util.start_of_local_day(start_date))
start_time = dt_util.as_utc(dt_util.start_of_local_day(date))
else:
start_time = dt_util.utcnow() - one_day
end_time = start_time + one_day
entity_id = request.args.get('filter_entity_id')
return self.json(

View file

@ -148,13 +148,13 @@ def routing_map(hass):
class DateValidator(BaseConverter):
"""Validate dates in urls."""
regex = r'\d{4}-(0[1-9])|(1[012])-((0[1-9])|([12]\d)|(3[01]))'
regex = r'\d{4}-\d{1,2}-\d{1,2}'
def to_python(self, value):
"""Validate and convert date."""
parsed = dt_util.parse_date(value)
if value is None:
if parsed is None:
raise ValidationError()
return parsed

View file

@ -94,13 +94,7 @@ class LogbookView(HomeAssistantView):
def get(self, request, date=None):
"""Retrieve logbook entries."""
if date:
start_date = dt_util.parse_date(date)
if start_date is None:
return self.json_message('Error parsing JSON',
HTTP_BAD_REQUEST)
start_day = dt_util.start_of_local_day(start_date)
start_day = dt_util.start_of_local_day(date)
else:
start_day = dt_util.start_of_local_day()