From 35ad6eb5f40f9e3f7323806b8e3978a37eecc62b Mon Sep 17 00:00:00 2001 From: Eric Bremner <ebremner@uwaterloo.ca> Date: Mon, 15 Aug 2022 16:18:05 -0400 Subject: [PATCH] ISTWCMS-5736: fixing dates with time --- src/Service/UwNodeFieldValue.php | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/Service/UwNodeFieldValue.php b/src/Service/UwNodeFieldValue.php index c50515cb..21c749c1 100644 --- a/src/Service/UwNodeFieldValue.php +++ b/src/Service/UwNodeFieldValue.php @@ -694,6 +694,11 @@ class UwNodeFieldValue { $return_dates = []; + // If there is no dates to process, return empty array. + if (!$node->$field_name->value) { + return $return_dates; + } + // If this is not and event, just get the date. if ($node->getType() !== 'uw_ct_event') { $return_dates[] = $this->getDate([$node->$field_name->value], 'blog'); @@ -904,7 +909,15 @@ class UwNodeFieldValue { $return_date['end_date'] = $date['end_value']; } else { - $return_date['date'] = $date[0]; + + // If the date contains a time code, we need to convert + // it, because it is stored in UTC. + if (strpos($date[0], 'T')) { + $return_date['date'] = date('c', strtotime($date[0] . ' UTC')); + } + else { + $return_date['date'] = $date[0]; + } } return $return_date; -- GitLab