isLeader(); if (!($lowerstaff || $upperstaff)) { die("access denied"); } $userid = false; $user = false; if ($_REQUEST['user'] ?? null) { $userid = $users->userid($_REQUEST['user']); if (!$userid) { header('HTTP/1.1 404 Not Found'); die("Invalid userid"); } $user = $users->getUser($userid); if (substr($_SERVER['REQUEST_URI'], 0, 13) === '/users/?user=') { // really wish this could be done with mod_rewrite header('Location: http://' . $psconfig['routes']['users'] . '/' .$userid); die(); } if (!$user || $user['banstate'] == 100) { if ($panels->output !== 'html') header('HTTP/1.1 404 Not Found'); } } if (isset($_REQUEST['json'])) { header('Content-type: application/json'); $ratings = []; foreach ($user['ratings'] as $rating) { $ratings[$rating['formatid']] = [ 'elo' => $rating['acre'], 'gxe' => $rating['gxe'], 'rpr' => $rating['rpr'], 'rprd' => $rating['rprd'], ]; } echo json_encode([ 'username' => $user['username'], 'userid' => $user['userid'], 'registertime' => intval(@$user['registertime']), 'group' => intval($user['group']), 'ratings' => $ratings, ], JSON_FORCE_OBJECT); die(); } if (!$user) { $panels->setPageTitle('Usermodlog'); $panels->setPageDescription('Usermodlog'); } else { $panels->setPageTitle(''.$user['username'].' - Usermodlog'); $panels->setPageDescription(''.$user['username'].'\'s usermodlog'); } $panels->setTab('ladder'); $panels->start(); if (!$userid) { ?>

Find a user

User

Unregistered

This user is unregistered and has no modlog.

User

Recent activity

[] [] Last logged in

Autoconfirmed: Has played at least one battle since 2014, so last login is probably sometime in 2014-2015

'; } else if ($user['banstate'] == 0) { echo '

Not autoconfirmed: Last login was probably sometime in ' . date("Y", $user['registertime']) . '

'; } else { echo '

Custom standing: An upper staff member has changed this user\'s standing in the past

'; } ?>

Current login sessions (logins expire after 2 weeks or when you click "log out", whichever comes first)

query("SELECT `time`,`ip` FROM ntbb_sessions WHERE userid = '".$psdb->escape($user['userid'])."'"); // $sessions = $psdb->fetch($res); if ($user['outdatedpassword']) echo '

✓ Abandoned account: Most recent login was before April 2013

'; $atLeastOne = false; while ($session = $psdb->fetch_assoc($res)) { // var_export($session); // echo '

[' . date("M j, Y", $session['time']) . '] Logged in from ' . $session['ip'] . '

'; ?>

[] [] Currently logged in

(None)

'; } } ?>

Modlog

[] '.$user['ip'].']' ?> Account created

query("SELECT * FROM `ntbb_usermodlog` WHERE `userid` = '".$psdb->escape($userid)."'"); while ($row = $psdb->fetch_assoc($usermodlog)) { $entry = $row['entry']; $fromindex = strpos($entry, " from: "); if ($fromindex !== false) $entry = substr($entry, 0, $fromindex); if (!$upperstaff) { // Hide email addresses from lowerstaff $entry = preg_replace($EMAIL_REGEX, "[email address hidden]", $entry); } if ($row['actorid'] !== $userid) { if (!$row['actorid']) { $entry .= ' (while logged out)'; } else { $entry .= ' (by ' . $row['actorid'] . ')'; } } ?>

[] '.$row['ip'].']' ?>

end(); ?>