]> jfr.im git - irc/unrealircd/unrealircd-webpanel.git/blame - servers/index.php
Create CODE_OF_CONDUCT.md
[irc/unrealircd/unrealircd-webpanel.git] / servers / index.php
CommitLineData
9ffc5134
VP
1<?php
2require_once "../common.php";
3require_once UPATH . "/header.php";
4
721db4c3
VP
5$rehash_errors = [];
6$rehash_warnings = [];
7$rehash_success = [];
8
9c968544
VP
9if (!empty($_POST))
10{
11 do_log($_POST);
721db4c3
VP
12 if (isset($_POST['rehash']))
13 foreach ($_POST['serverch'] as $servID)
14 if ($response = $rpc->server()->rehash($servID))
15 {
16 $serb = $rpc->server()->get($servID);
17 do_log($servID, $response);
18 if ($response->success || (!isset($response->success) != false && $response == true))
19 {
20 $rehash_success[] = $serb->name;
21 foreach($response->log as $log)
22 {
23 do_log($log->level);
24 if ($log->level == "warn")
25 $rehash_warnings[$log->log_source][] = $log->msg;
26 }
27 }
28 else if (isset($response->success) && !$response->success)
29 {
30 foreach ($response->log as $log)
31 {
32 if ($log->level == "error")
33 $rehash_errors[$log->log_source][] = $log->msg;
34 }
35 }
36 }
9c968544 37}
9ffc5134
VP
38
39/* Get the server list */
40$servers = $rpc->server()->getAll();
41?>
42<h4>Servers Overview</h4>
721db4c3
VP
43<?php
44 if (isset($_POST['rehash']))
45 {
1bc2dc2c
VP
46 if (!empty($rehash_success)) {
47 do_log($rehash_success);
48 $servlist_bullet = "<ol>";
49
50 foreach ($rehash_success as $serv) {
51 $servlist_bullet .= "<li>$serv</li>";
52 }
53 $servlist_bullet .= "</ol>";
54 $servlist_err_bullet = "";
55 foreach ($rehash_errors as $serv => $err) {
56 $servlist_err_bullet .= "<h6>$serv</h6><ol>";
57 foreach ($err as $er)
58 $servlist_err_bullet .= "<li>$er</li>";
59 echo "</ol>";
60 }
61 $servlist_warn_bullet = ""; foreach ($rehash_warnings as $server => $warning) {
62 $servlist_warn_bullet .= "<h6>$serv</h6><ol>";
63 foreach ($warning as $w)
64 $servlist_warn_bullet .= "<li>$w</li>";
65 $servlist_warn_bullet .= "</ol>";
66 }
721db4c3 67 if (!empty($rehash_success))
1bc2dc2c
VP
68 Message::Success(
69 "The following server(s) were successfully rehashed:",
70 $servlist_bullet
71 );
72 if (!empty($rehash_warnings))
73 Message::Warning(
74 "The following warning(s) were encountered:",
75 $servlist_warn_bullet
76 );
77 if (!empty($rehash_errors))
78 Message::Fail(
79 "The following error(s) were encountered and the server(s) failed to rehash:",
80 $servlist_err_bullet
81 );
82 }
721db4c3
VP
83 }
84 if (isset($_POST['sf_name']) && strlen($_POST['sf_name']))
85 Message::Info("Listing servers which match name: \"" . $_POST['sf_name'] . "\"");
9ffc5134 86
721db4c3 87 ?>
9ffc5134
VP
88Click on a server name to view more information.
89
90<div id="Servers">
91
721db4c3 92
ce3de101 93 <table class="container-xxl table table-sm table-responsive caption-top table-striped">
9ffc5134
VP
94 <thead>
95 <th scope="col"><h5>Filter:</h5></th>
96 <form action="" method="post">
97 <th scope="col" colspan="2">Name<input name="sf_name" type="text" class="form-control short-form-control">
ce3de101 98 <th scope="col"> <input class="btn btn-primary btn-sm" type="submit" value="Search"></th></form>
9ffc5134 99 </thead></table>
1bc2dc2c
VP
100 <form action="index.php" method="post"><div class="btn btn-sm btn-warning" data-toggle="modal" data-target="#rehash_modal">Rehash Selected</div><br><br>
101
102 <div class="modal fade" id="rehash_modal" tabindex="-1" role="dialog" aria-labelledby="confirmModalCenterTitle" aria-hidden="true">
103 <div class="modal-dialog modal-dialog-centered" role="document">
104 <div class="modal-content">
105 <div class="modal-header">
106 <h5 class="modal-title" id="myModalLabel">Rehash Selected Servers</h5>
107 <button type="button" class="close" data-dismiss="modal" aria-label="Close">
108 <span aria-hidden="true">&times;</span>
109 </button>
110 </div>
111 <div class="modal-body">
112 Are you sure you want to rehash the selected servers?
113 </div>
114 <div class="modal-footer">
115 <button id="CloseButton" type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
116 <button type="submit" class="btn btn-primary" name="rehash">Rehash Selected</button>
117 </div>
118 </div>
119 </div>
120 </div>
ce3de101 121 <table class="container-xxl table table-sm table-responsive caption-top table-striped">
9ffc5134
VP
122 <thead class="table-primary">
123 <th scope="col"><input type="checkbox" label='selectall' onClick="toggle_server(this)" /></th>
124 <th scope="col">Name</th>
11475e36
BM
125 <th scope="col">Users</th>
126 <th scope="col">Version</th>
9ffc5134 127 <th scope="col">Connected to</th>
11475e36 128 <th scope="col">Up since</th>
9ffc5134
VP
129 </thead>
130
131 <tbody>
9ffc5134
VP
132 <?php
133
134 foreach($servers as $server)
135 {
136
137
138 /* Some basic filtering for NAME */
139 if (isset($_POST['sf_name']) && strlen($_POST['sf_name']) &&
140 strpos(strtolower($server->name), strtolower($_POST['sf_name'])) !== 0 &&
141 strpos(strtolower($server->name), strtolower($_POST['sf_name'])) == false)
142 continue;
143
144
145 echo "<tr>";
721db4c3 146 echo "<th scope=\"row\"><input type=\"checkbox\" value='$server->id' name=\"serverch[]\"></th>";
ab64cfc4 147 echo "<td><a href=\"details.php?server=".$server->id."\">$server->name</a></td>";
11475e36 148 echo "<td>".$server->server->num_users."</td>";
9307bb12 149
dca62e70
VP
150 $s = sinfo_conv_version_string($server);
151
9307bb12 152 echo "<td>$s</td>";
11475e36
BM
153 if (isset($server->server->uplink))
154 echo "<td>".$server->server->uplink."</td>";
155 else
156 echo "<td></td>"; /* self */
157 echo "<td>".$server->server->boot_time."</td>";
9ffc5134
VP
158 }
159 ?>
721db4c3 160 </form>
9ffc5134
VP
161 </tbody></table>
162</div>
163
164<?php require_once UPATH.'/footer.php'; ?>