From 558470e7c1f104897007d6f3b7cda493ccd8783e Mon Sep 17 00:00:00 2001 From: Jun Pataleta Date: Wed, 8 Apr 2020 20:20:15 +1000 Subject: [PATCH] MDL-68200 core: Support fixday/hour for core_external::get_user_dates() --- lib/external/externallib.php | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/lib/external/externallib.php b/lib/external/externallib.php index bfe0e779d83..c132d010a24 100644 --- a/lib/external/externallib.php +++ b/lib/external/externallib.php @@ -233,7 +233,9 @@ class core_external extends external_api { [ 'timestamp' => new external_value(PARAM_INT, 'unix timestamp'), 'format' => new external_value(PARAM_TEXT, 'format string'), - 'type' => new external_value(PARAM_PLUGIN, 'The calendar type', VALUE_OPTIONAL), + 'type' => new external_value(PARAM_PLUGIN, 'The calendar type', VALUE_DEFAULT), + 'fixday' => new external_value(PARAM_INT, 'Remove leading zero for day', VALUE_DEFAULT, 1), + 'fixhour' => new external_value(PARAM_INT, 'Remove leading zero for hour', VALUE_DEFAULT, 1), ] ) ) @@ -266,9 +268,11 @@ class core_external extends external_api { $formatteddates = array_map(function($timestamp) { - $calendartype = empty($timestamp['type']) ? null : $timestamp['type']; + $calendartype = $timestamp['type']; + $fixday = !empty($timestamp['fixday']); + $fixhour = !empty($timestamp['fixhour']); $calendar = \core_calendar\type_factory::get_calendar_instance($calendartype); - return $calendar->timestamp_to_date_string($timestamp['timestamp'], $timestamp['format'], 99, true, true); + return $calendar->timestamp_to_date_string($timestamp['timestamp'], $timestamp['format'], 99, $fixday, $fixhour); }, $params['timestamps']); return ['dates' => $formatteddates];