X-Git-Url: https://jfr.im/git/irc/unrealircd/unrealircd-webpanel.git/blobdiff_plain/03ddd26b2c98cde7754ffc50dacf4897683c57a7..b9e4ab925c3d6754f5f14a01f6cfc73ae646cca1:/Classes/class-rpc.php diff --git a/Classes/class-rpc.php b/Classes/class-rpc.php index cf8a2d5..886b974 100644 --- a/Classes/class-rpc.php +++ b/Classes/class-rpc.php @@ -13,6 +13,8 @@ if (!defined('UPATH')) require UPATH . '/vendor/autoload.php'; use UnrealIRCd\Connection; +use UnrealIRCd\User; +use UnrealIRCd\Channel; class RPC_List { @@ -20,6 +22,9 @@ class RPC_List static $channel = []; static $tkl = []; static $spamfilter = []; + static $server = []; + static $nameban = []; + static $exception = []; static $opercount = 0; static $services_count = 0; @@ -32,10 +37,10 @@ function rpc_pop_lists() GLOBAL $rpc; /* Get the user list */ - $ret = $rpc->query("user.list"); + $ret = $rpc->user()->getAll(); // TODO: error checking - foreach($ret->list as $r) + foreach($ret as $r) { RPC_List::$user[] = $r; if (strpos($r->user->modes,"o") !== false && strpos($r->user->modes,"S") == false) @@ -45,8 +50,8 @@ function rpc_pop_lists() } /* Get the channels list */ - $ret = $rpc->query("channel.list"); - foreach($ret->list as $r) + $ret = $rpc->channel()->getAll(); + foreach($ret as $r) { RPC_List::$channel[] = $r; if ($r->num_users > RPC_List::$channel_pop_count) @@ -57,72 +62,23 @@ function rpc_pop_lists() } /* Get the tkl list */ - $ret = $rpc->query("server_ban.list"); - foreach($ret->list as $r) + $ret = $rpc->serverban()->getAll(); + foreach($ret as $r) RPC_List::$tkl[] = $r; /* Get the spamfilter list */ - $ret = $rpc->query("spamfilter.list"); - foreach($ret->list as $r) + $ret = $rpc->spamfilter()->getAll(); + foreach($ret as $r) RPC_List::$spamfilter[] = $r; - -} - - -/** RPC TKL Add */ -function rpc_tkl_add($name, $type, $expiry, $reason) : bool -{ - GLOBAL $rpc; - - $params = ["name" => $name, "type" => $type, "reason" => $reason, "duration_string" => $expiry]; - $result = $rpc->query("server_ban.add", $params); - if ($result->error) - { - $msg = "The $type could not be added: $name - ".$result->error->message . " (" . $result->error->code . ")"; - Message::Fail($msg); - return false; - } - return true; -} - - -/** RPC TKL Delete */ -function rpc_tkl_del($name, $type) : bool -{ - GLOBAL $rpc; - - $params = ["name" => $name, "type" => $type]; - $result = $rpc->query("server_ban.del", $params); - if ($result->error) - { - $msg = "The $type could not be deleted: $name - ".$result->error->message . " (" . $result->error->code . ")"; - Message::Fail($msg); - return false; - } - return true; -} - -/** RPC Spamfilter Delete - * - */ -function rpc_sf_del($name, $mtype, $targets, $action) : bool -{ - GLOBAL $rpc; - - $params = ["name" => $name, "match_type" => $mtype, "spamfilter_targets" => $targets, "ban_action" => $action, "set_by" => "YoMama"]; - $result = $rpc->query("spamfilter.del", $params); - if ($result->error) - { - $msg = "The spamfilter entry could not be deleted: $name - ".$result['error']['message'] . " (" . $result['error']['code'] . ")"; - Message::Fail($msg); - return false; - } - else - { - $r = $result->tkl; - Message::Success("Deleted spamfilter entry: ".$r->name." [type: ".$r->match_type."] [targets: ".$r->spamfilter_targets. "] [action: ".$r->ban_action."] [reason: ".$r->reason."] [set by: ".$r->set_by."]"); - } - return true; + + foreach ($rpc->nameban()->getAll() as $r) + RPC_List::$nameban[] = $r; + + foreach ($rpc->serverbanexception()->getAll() as $r) + RPC_List::$exception[] = $r; + + foreach ($rpc->server()->getAll() as $r) + RPC_List::$server[] = $r; } /** Convert the duration_string */