From 9b9936c27fbb0afcdf215bb855d1454c33b3a7c3 Mon Sep 17 00:00:00 2001 From: Sara Arjona Date: Mon, 24 Feb 2025 07:23:20 +0100 Subject: [PATCH] [docs] Add information about new human date renderers --- .../output/_humandate/humandate_example.png | Bin 0 -> 29290 bytes .../_humandate/humantimeperiod_example.png | Bin 0 -> 43043 bytes docs/apis/subsystems/output/humandate.md | 77 ++++++++++++++++++ docs/devupdate.md | 16 ++++ 4 files changed, 93 insertions(+) create mode 100644 docs/apis/subsystems/output/_humandate/humandate_example.png create mode 100644 docs/apis/subsystems/output/_humandate/humantimeperiod_example.png create mode 100644 docs/apis/subsystems/output/humandate.md diff --git a/docs/apis/subsystems/output/_humandate/humandate_example.png b/docs/apis/subsystems/output/_humandate/humandate_example.png new file mode 100644 index 0000000000000000000000000000000000000000..89b36a3311c6df874867bd3b434c1a385b3d4bc8 GIT binary patch literal 29290 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 z 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

e%5YjO$?AIadC%J$hSuTF3EWadxG;=K{!8M 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 literal 0 HcmV?d00001 diff --git a/docs/apis/subsystems/output/humandate.md b/docs/apis/subsystems/output/humandate.md new file mode 100644 index 000000000..d5efbd1e5 --- /dev/null +++ b/docs/apis/subsystems/output/humandate.md @@ -0,0 +1,77 @@ +--- +title: Date and Time Output Classes +tags: + - Output +--- + + + +The `humandate` and `humantimeperiod` classes in Moodle are designed to render timestamps and time periods in a human-readable format. These classes provide functionality to display dates as "Today", "Yesterday", "Tomorrow", and apply alert styling if the date is near the current date. + +## Using human time representation output classes + +Both classes can be used as a normal output class in Moodle. Each class represent way of show dates and time in a human readable way: + +- `humandate`: This renderer presents single dates and times in a user-friendly format, automatically adapting to the user's preferences and with some extra customization options. +- `humantimeperiod`: Designed for displaying date/time ranges, this renderer optimizes information presentation, eliminating redundant date information and representing time in a more user friendly way. + +### `humandate` Class + +The `humandate` class is used to render a single timestamp as a human-readable date. + +![inplace editable example.png](./_humandate/humandate_example.png) + +### Example Usage + +```php title='This will output "Today" if the timestamp is for the current day.' +use core_calendar\output\humandate; + +$renderer = $PAGE->get_renderer('core', 'output'); +$timestamp = (\core\di::get(\core\clock::class))->time(); + +// Basic example. +$humandate = humandate::create_from_timestamp($timestamp); +echo $renderer->render($humandate); + +// Example adding a link to the date. +$humandate = humandate::create_from_timestamp( + timestamp: $timestamp, + link: new core\url('/calendar/view.php', ['view' => 'day', 'time' => $timestamp]), +); +echo $renderer->render($humandate); + +// Example showing only the time. +$humandate = humandate::create_from_timestamp( + timestamp: $timestamp, + timeonly: true, +); +echo $renderer->render($humandate); +``` + +### `humantimeperiod` Class + +The `humantimeperiod` class is used to render a time period in a human-readable format. + +![inplace editable example.png](./_humandate/humandate_example.png) + +### Example Usage + +```php +use core_calendar\output\humantimeperiod; + +$renderer = $PAGE->get_renderer('core', 'output'); +$starttimestamp = (\core\di::get(\core\clock::class))->time(); +$endtimestamp = $starttimestamp + HOURSECS; + +// Basic example. +$humantimeperiod = humantimeperiod::create_from_timestamp($starttimestamp, $endtimestamp); +echo $renderer->render($humantimeperiod); + +// Example adding a link to the date. +$humantimeperiod = humantimeperiod::create_from_timestamp( + starttimestamp: $starttimestamp, + endtimestamp: $endtimestamp, + link: new core\url('/calendar/view.php', ['view' => 'day', 'time' => $starttimestamp]), +); +echo $renderer->render($humantimeperiod); +``` diff --git a/docs/devupdate.md b/docs/devupdate.md index 06c94a3a8..865fe11e6 100644 --- a/docs/devupdate.md +++ b/docs/devupdate.md @@ -17,6 +17,22 @@ The course navigation has been updated to include a new link to the activity ove See the [Activity overview page integration](./apis/plugintypes/mod/courseoverview) documentation for more information. +## Calendar: New human date renderers + + + +To improve date readability and user experience, the Calendar subsystem is transitioning from deprecated date rendering methods, such as `calendar_format_event_time` or `calendar_time_representation`, to a new suite of human date renderers. It enhances date display by: + +- Using relative terms like "Today," "Yesterday," and "Tomorrow" for nearby dates. +- Applying alert styling to dates nearing deadlines or events. + +This update introduces two primary renderers: + +- `humandate`: This renderer presents single dates and times in a user-friendly format, automatically adapting to the user's preferred 12-hour or 24-hour time display (`CALENDAR_TF_12`/`CALENDAR_TF_24`). +- `humantimeperiod`: Designed for displaying date/time ranges, this renderer optimizes information presentation. When the start and end dates fall on the same day, it shows the full start date and time, but only the end time, eliminating redundant date information. This logic mirrors the existing functionality of the deprecated functions, ensuring a consistent user experience. + +See the [Date and Time Output Classes](./apis/subsystems/output/humandate.md) documentation for more information. + ## Course formats