<?php
-$logs = glob('profile/*/last.log');
-
$logins = [];
-foreach ($logs as $log) {
- preg_match('{^profile/([^/]+)}', $log, $login);
- $logins[ $login[1] ] = filemtime($log);
+foreach (glob('profile/*') as $userdir) {
+ $logins[] = [
+ 'login' => basename($userdir),
+ 'name' => @file_get_contents("$userdir/name.txt"),
+ 'seen' => @filemtime("$userdir/last.log"),
+ 'admin' => @file_exists("$userdir/.admin"),
+ ];
+}
+
+if (@$_GET['order'] == 'seen') {
+ array_multisort(array_column($logins, 'seen'), SORT_DESC, SORT_NUMERIC, $logins);
}
print "<ul>\n";
-arsort($logins, SORT_NUMERIC);
-foreach ($logins as $login => $last) {
- printf('<li>%s <a href="/login/%s">%s</a></li>'."\n",
- strftime('%F %H:%M', $last), $login, $login
+foreach ($logins as $profile) {
+ printf('<li>%s <a href="%s">%s</a>',
+ $profile['seen'] ? strftime('%F %H:%M', $profile['seen']) : '✘',
+ '/login/edit/'.$profile['login'],
+ $profile['name'] ?: $profile['login']
);
+ if (!empty($profile['admin'])) {
+ print ' <em>(beheerder)</em>';
+ }
+ print "</li>\n";
}
print "</ul>\n\n";