call dt_util.now() only once, add additional format

This commit is contained in:
Fabian Affolter 2015-05-08 18:50:57 +02:00
parent 03993cd5fa
commit 9f042db0f5

View file

@ -14,7 +14,8 @@ sensor:
monitored_variables: monitored_variables:
- type: 'time' - type: 'time'
- type: 'date' - type: 'date'
- type: 'datetime' - type: 'date_time'
- type: 'time_date'
VARIABLES: VARIABLES:
@ -40,7 +41,8 @@ _LOGGER = logging.getLogger(__name__)
SENSOR_TYPES = { SENSOR_TYPES = {
'time': 'Time', 'time': 'Time',
'date': 'Date', 'date': 'Date',
'datetime': 'Date & Time' 'date_time': 'Date & Time',
'time_date': 'Time & Date'
} }
@ -83,11 +85,16 @@ class TimeDateSensor(Entity):
def update(self): def update(self):
""" Gets the latest data and updates the states. """ """ Gets the latest data and updates the states. """
time_date = dt_util.now()
time = dt_util.datetime_to_short_time_str(time_date)
date = dt_util.datetime_to_short_date_str(time_date)
if self.type == 'time': if self.type == 'time':
self._state = dt_util.datetime_to_short_time_str(dt_util.now()) self._state = time
elif self.type == 'date': elif self.type == 'date':
self._state = dt_util.datetime_to_short_date_str(dt_util.now()) self._state = date
elif self.type == 'datetime': elif self.type == 'date_time':
self._state = dt_util.datetime_to_short_date_str(dt_util.now()) + \ self._state = date + ', ' + time
', ' + \ elif self.type == 'time_date':
dt_util.datetime_to_short_time_str(dt_util.now()) self._state = time + ', ' + date