X-Git-Url: https://jfr.im/git/irc/unrealircd/unrealircd-webpanel.git/blobdiff_plain/f41baac84976bab1d52496138dace5a35b749743..ea90b321a4b3768028d841b307c362af97a5e6e1:/users/index.php diff --git a/users/index.php b/users/index.php index 075f6db..dae4041 100644 --- a/users/index.php +++ b/users/index.php @@ -1,20 +1,37 @@ user()->get($user); + if (!$user && $bantype !== "qline") { Message::Fail("Could not find that user: User not online"); - } else { + } + + else + { $msg_msg = ($duration == "0" || $duration == "0w0d0h") ? "permanently" : "for " . rpc_convert_duration_string($duration); $reason = (isset($_POST['ban_reason'])) ? $_POST['ban_reason'] : "No reason"; + if ($bantype == "qline") $rpc->nameban()->add($name, $reason, $duration); + + else if ($bantype == "kill") + { + if ($rpc->user()->kill($user->id, $reason)) + Message::Success($user->name . "(*@" . $user->hostname . ") has been killed: $reason"); + else + Message::Fail("Could not kill $user->name: $rpc->error"); + } else if ($rpc->serverban()->add($user->id, $bantype, $duration, $reason)) Message::Success($user->name . " (*@" . $user->hostname . ") has been $bantype" . "d $msg_msg: $reason"); + else Message::Fail("Could not add $bantype against $name: $rpc->error"); } @@ -58,6 +89,7 @@ Click on a username to view more information.
- - - - - + + + + + + + + + + + + + + +
Filter:
Nick - Host IP Account
Filter:
name="operonly" type="checkbox" value=""> Opers Only name="servicesonly" type="checkbox" value=""> Services Only
Nick: + Host: IP: Country: Account: Server:
- + + - - - + + + name), strtolower($_POST['uf_nick'])) == false) continue; + /* Some basic filtering for COUNTRY */ + if (isset($_POST['uf_country']) && strlen($_POST['uf_country']) && + @strtolower($user->geoip->country_code) !== strtolower($_POST['uf_country'])) + continue; + /* Some basic filtering for HOST */ if (isset($_POST['uf_host']) && strlen($_POST['uf_host']) && strpos(strtolower($user->hostname), strtolower($_POST['uf_host'])) !== 0 && @@ -123,34 +177,57 @@ Click on a username to view more information. /* Some basic filtering for ACCOUNT */ if (isset($_POST['uf_account']) && strlen($_POST['uf_account']) && - strpos(strtolower($user->user->account), strtolower($_POST['uf_account'])) !== 0 && - strpos(strtolower($user->user->account), strtolower($_POST['uf_account'])) == false) + strtolower($user->user->account) !== strtolower($_POST['uf_account'])) + continue; + + /* Some basic filtering for SERVER */ + if (isset($_POST['uf_server']) && strlen($_POST['uf_server']) && + strpos(strtolower($user->user->servername), strtolower($_POST['uf_server'])) !== 0 && + strpos(strtolower($user->user->servername), strtolower($_POST['uf_server'])) == false) + continue; + + /* Some basic filtering for OPER */ + if (isset($_POST['operonly']) && + (strpos($user->user->modes, "o") == false || strpos($user->user->modes,"S") !== false)) + continue; + + /* Some basic filtering for SERVICES */ + if (isset($_POST['servicesonly']) && + (strpos($user->user->modes,"S") == false)) continue; echo "\n"; echo ""; $isBot = (strpos($user->user->modes, "B") !== false) ? ' Bot' : ""; echo ""; - echo ""; - $account = (isset($user->user->account)) ? "user->account."\">".$user->user->account."" : 'None'; + echo ""; + echo ""; + $account = (isset($user->user->account)) ? "user->account."\">".htmlspecialchars($user->user->account)."" : 'None'; echo ""; $modes = (isset($user->user->modes)) ? "+" . $user->user->modes : ""; echo ""; $oper = (isset($user->user->operlogin)) ? $user->user->operlogin." ".$user->user->operclass."" : ""; if (!strlen($oper)) $oper = (strpos($user->user->modes, "S") !== false) ? 'Services Bot' : ""; - echo ""; + echo ""; - $secure = (isset($user->tls)) ? "Secure" : "Insecure"; + $secure = (isset($user->tls) || $user->hostname !== "localhost") ? "Secure" : "Insecure"; if (strpos($user->user->modes, "S") !== false) $secure = ""; - echo ""; - echo ""; + echo ""; + echo ""; echo ""; echo ""; + $currentNumberUsers++; + if (isset($user->user->account)) + $currentNumberUsersIdentified++; + if (isset($user->geoip->country_code)) + array_push($registrationOfaAllFlags, $user->geoip->country_code); } + $registrationOfaAllFlags = array_count_values($registrationOfaAllFlags); ?>
NickHost / IPCountryHost / IP Account Usermodes ℹ️OperSecureConnected toOperSecureConnected to Reputation ℹ️
id."\">$user->name$isBot".$user->hostname." (".$user->ip.")".(isset($user->geoip->country_code) ? ' '.$user->geoip->country_code : "")."".htmlspecialchars($user->hostname)." (".($user->hostname == $user->ip ? 'the same' : htmlspecialchars($user->ip ?? "None")).")".$account."".$modes."".$oper."".$oper."".$secure."".$user->user->servername."".$secure."id, 0, 3)."\">".$user->user->servername."".$user->user->reputation."
+
connected users including identified and not identified.
@@ -160,6 +237,7 @@ Click on a username to view more information. + @@ -205,12 +283,14 @@ Click on a username to view more information. } ?> -
+ + +
- +
@@ -235,14 +315,50 @@ Click on a username to view more information.
- - + + +

Top country

+
+ +
+ + +