. declare(strict_types=1); namespace core_reportbuilder\local\helpers; use stdClass; /** * Class containing helper methods for formatting column data via callbacks * * @package core_reportbuilder * @copyright 2021 Sara Arjona based on Alberto Lara Hernández code. * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ class format { /** * Returns formatted date. * * @param int|null $value Unix timestamp * @param stdClass $row * @param string|null $format Format string for strftime * @return string */ public static function userdate(?int $value, stdClass $row, ?string $format = null): string { return $value ? userdate($value, $format) : ''; } /** * Returns yes/no string depending on the given value * * @param bool|null $value * @return string */ public static function boolean_as_text(?bool $value): string { if ($value === null) { return ''; } return $value ? get_string('yes') : get_string('no'); } /** * Returns float value as a percentage * * @param float|null $value * @return string */ public static function percent(?float $value): string { if ($value === null) { return ''; } return get_string('percents', 'moodle', format_float($value)); } }