diff options
Diffstat (limited to 'src/web/lib/_base.php')
-rw-r--r-- | src/web/lib/_base.php | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/src/web/lib/_base.php b/src/web/lib/_base.php new file mode 100644 index 0000000..790bac9 --- /dev/null +++ b/src/web/lib/_base.php @@ -0,0 +1,61 @@ +<?php /* Copyright (c) 2024 Freya Murphy */ + +trait XSS_Base { + + /** + * Formats a users's name + * @param array $user - the $user + * @returns the user's formatted display name + */ + public function format_name(array $user): string { + $name = ''; + // first_name + if ($user['first_name']) + $name .= $user['first_name']; + // middle_name + if ($user['middle_name']) { + if ($name != '') + $name .= ' '; + $name .= $user['middle_name']; + } + // last_name + if ($user['last_name']) { + if ($name != '') + $name .= ' '; + $name .= $user['last_name']; + } + if ($name == '') { + $name = '@' . $user['username']; + } + return $name; + } + + /** + * Formats a ISO date + * @param $iso_date the ISO date + */ + public function format_date(string $iso_date): string + { + return date("Y-m-d D H:i", strtotime($iso_date)); + } + + /** + * Loads a STRING from $_GET, or returns $default on failure + */ + public function get_string(string $key, ?string $default = NULL): ?string { + if (isset($_GET[$key])) + return $_GET[$key]; + return $default; + } + + /** + * Loads a INT from $_GET, or returns $default on failure + */ + public function get_int(string $key, ?int $default = NULL): ?int { + $value = $this->get_string($key); + if ($value) + return intval($value); + return $default; + } + +} |