$userdir) { $users[$col] = new User($userdir); } if (isset($Place['order'])) { $ordercol = $Place['order']; $order = array_map(function ($row) use ($ordercol) { return $row->$ordercol; }, $users); # $order = array_column($users, $ordercol); #TODO php7 simplification if ($ordercol == 'seen') { array_multisort($order, SORT_DESC, SORT_NUMERIC, $users); $users = array_intersect_key($users, array_filter($order)); } else { array_multisort($order, SORT_ASC, SORT_NATURAL, $users); } } if (isset($Place['n'])) { array_splice($users, $Place['n']); # limit number of results } print ' 5) { print ' class="cols"'; } print ">\n"; foreach ($users as $user) { $name = $user->name ?: $user->login; if (!empty($GLOBALS['User']['admin'])) { $link = '/login/edit/'.$user->login; $name = sprintf('%s', $link, $name); } switch (@$Place['view']) { case 'avatar': if (!file_exists("{$user->dir}/avatar.jpg")) { break; } $avatar = sprintf( '%s', "/thumb/100/profile/{$user->login}/avatar.jpg", $user->login ); $name = sprintf( '
%s
%s
', $avatar, $name ); break; case 'visit': if ($user->seen) { $name .= sprintf(' %s', strftime('%F %H:%M', $user->seen)); } # continue to default default: if ($user->admin) { $name .= ' 🔧'; } $name = "
$name
"; } print "
  • $name
  • \n"; } print "\n\n";