X-Git-Url: https://jfr.im/git/irc/unrealircd/unrealircd-webpanel.git/blobdiff_plain/a0ffe9f9be787e6a38c658d970baeb8336b2eec2..e653740512b00c37a7fc19d9f41889f0844d6c68:/settings/rpc-servers.php diff --git a/settings/rpc-servers.php b/settings/rpc-servers.php index 4f32a48..6ab87ba 100644 --- a/settings/rpc-servers.php +++ b/settings/rpc-servers.php @@ -2,33 +2,13 @@ require_once "../inc/common.php"; require_once "../inc/header.php"; -/* Ensure at least 1 server is default */ -function set_at_least_one_default_server() -{ - GLOBAL $config; - - $has_default_server = false; - foreach ($config["unrealircd"] as $name=>$e) - if ($e["default"]) - $has_default_server = true; - if (!$has_default_server) - { - /* Make first server in the list the default */ - foreach ($config["unrealircd"] as $name=>$e) - { - $config["unrealircd"][$name]["default"] = true; - break; - } - } -} - if (isset($_POST['do_del_server'])) { - $server = $_POST['edit_existing'] ?? null; + $server = $_POST['del_server_name'] ?? null; if (isset($config["unrealircd"][$server])) { unset($config["unrealircd"][$server]); - set_at_least_one_default_server(); + set_at_least_one_default_rpc_server(); write_config("unrealircd"); } else { Message::Fail("Delete failed: could not find server"); @@ -78,15 +58,9 @@ if (isset($_POST['do_add_server'])) } if ($new_properties["default"]) - { - /* Mark all other servers as non-default */ - foreach ($config["unrealircd"] as $name=>$e) - if ($name != $opts->rpc_displayname) - $config["unrealircd"][$name]["default"] = false; - } else { - /* Ensure at least 1 server is default */ - set_at_least_one_default_server(); - } + set_default_rpc_server($opts->rpc_displayname); + else + set_at_least_one_default_rpc_server(); /* And write the new config */ write_config(); @@ -175,7 +149,6 @@ if (empty($config["unrealircd"])) @@ -203,10 +176,45 @@ if (empty($config["unrealircd"])) + + + + + +
+ @@ -214,7 +222,10 @@ if (empty($config["unrealircd"])) $e) + $servers = get_config('unrealircd'); + if (!$servers) + $servers = []; + foreach($servers as $name=>$e) { $primary = ""; if (isset($e["default"]) && $e["default"]) @@ -225,9 +236,10 @@ if (empty($config["unrealircd"])) $port = htmlspecialchars($e["port"]); $rpc_user = htmlspecialchars($e["rpc_user"]); $tls_verify_cert = $e["tls_verify_cert"] ? "true" : "false"; - $name = "$name"; + $html_name = "$name"; echo ""; - echo ""; + echo ""; + echo ""; echo ""; echo ""; echo ""; @@ -258,7 +270,7 @@ if (empty($config["unrealircd"])) /* The RPC connection tester! */ function test_rpc_server() { - fetch( + 'api/test_rpc_server.php', { + fetch('' + 'api/test_rpc_server.php', { method:'POST', headers: {'Content-Type':'application/x-www-form-urlencoded'}, body: 'method=rpc&'+ @@ -326,6 +338,14 @@ if (empty($config["unrealircd"])) $('#do_del_server').hide(); $('#server_add').modal('show'); } + + function confirm_delete(name) + { + $('#del_server_name').val(name); + $('#server_confirm_del').modal('show'); + } + +
Display name Hostname Port
".$name.$primary."".$html_name.$primary."".$host."".$port."".$rpc_user."