Microweber\Providers\UserManager::nice_name PHP Метод

nice_name() публичный Метод

Function to get user printable name by given ID.
public nice_name ( $id, string $mode = 'full' ) : string
$id
$mode string
Результат string
    public function nice_name($id, $mode = 'full')
    {
        $user = $this->get_by_id($id);
        $user_data = $user;
        if (empty($user)) {
            return false;
        }
        switch ($mode) {
            case 'first':
            case 'fist':
                // because of a common typo :)
                $user_data['first_name'] ? $name = $user_data['first_name'] : ($name = $user_data['username']);
                $name = ucwords($name);
                if (trim($name) == '' and $user_data['email'] != '') {
                    $n = explode('@', $user_data['email']);
                    $name = $n[0];
                }
                // return $name;
                break;
            case 'last':
                $user_data['last_name'] ? $name = $user_data['last_name'] : ($name = $user_data['last_name']);
                $name = ucwords($name);
                break;
            case 'username':
                $name = $user_data['username'];
                break;
            case 'full':
            default:
                $name = '';
                if (isset($user_data['first_name'])) {
                    if ($user_data['first_name']) {
                        $name = $user_data['first_name'];
                    }
                }
                if (isset($user_data['last_name'])) {
                    if ($user_data['last_name']) {
                        $name .= ' ' . $user_data['last_name'];
                    }
                }
                $name = ucwords($name);
                if (trim($name) == '' and $user_data['email'] != '') {
                    $name = $user_data['email'];
                    $name_from_email = explode('@', $user_data['email']);
                    $name = $name_from_email[0];
                }
                if (trim($name) == '' and $user_data['username'] != '') {
                    $name = $user_data['username'];
                    $name = ucwords($name);
                }
                break;
        }
        if (!isset($name) or $name == false or $name == null or trim($name) == '') {
            if (isset($user_data['username']) and $user_data['username'] != false and trim($user_data['username']) != '') {
                $name = $user_data['username'];
            } elseif (isset($user_data['email']) and $user_data['email'] != false and trim($user_data['email']) != '') {
                $name_from_email = explode('@', $user_data['email']);
                $name = $name_from_email[0];
            }
        }
        return $name;
    }