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;
}