aboutsummaryrefslogtreecommitdiff
path: root/lib/Minz/User.php
blob: 252584e83e2731bbc9160f2e0cfab276d860a8f6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?php

/**
 * The Minz_User class handles the user information.
 */
final class Minz_User {

	public const INTERNAL_USER = '_';

	public const CURRENT_USER = 'currentUser';

	/**
	 * @return string the name of the current user, or null if there is none
	 */
	public static function name(): ?string {
		$currentUser = trim(Minz_Session::param(Minz_User::CURRENT_USER, ''));
		return $currentUser === '' ? null : $currentUser;
	}

	/**
	 * @param string $name the name of the new user. Set to empty string to clear the user.
	 */
	public static function change(string $name = ''): void {
		$name = trim($name);
		Minz_Session::_param(Minz_User::CURRENT_USER, $name === '' ? false : $name);
	}
}