]> jfr.im git - irc/unrealircd/unrealircd-webpanel.git/blob - servers/details.php
Rename the information tab to Info
[irc/unrealircd/unrealircd-webpanel.git] / servers / details.php
1 <?php
2 require_once "../inc/common.php";
3 require_once "../inc/connection.php";
4 require_once "../inc/header.php";
5
6 $title = "Server Lookup";
7 $servername = "";
8 $srv = NULL;
9
10 $rehash_errors = [];
11 $rehash_warnings = [];
12 $rehash_success = [];
13
14 if (isset($_POST))
15 {
16 if (isset($_POST['rehash']))
17 {
18 $servID = $_POST['rehash'];
19 if ($response = $rpc->server()->rehash($servID))
20 {
21 $serb = $rpc->server()->get($servID);
22 do_log($servID, $response);
23 if ($response->success || (!isset($response->success) != false && $response == true))
24 {
25 $rehash_success[] = $serb->name;
26 foreach($response->log as $log)
27 {
28 do_log($log->level);
29 if ($log->level == "warn")
30 $rehash_warnings[$log->log_source][] = $log->msg;
31 }
32 }
33 else if (isset($response->success) && !$response->success)
34 {
35 foreach ($response->log as $log)
36 {
37 if ($log->level == "error")
38 $rehash_errors[$log->log_source][] = $log->msg;
39 }
40 }
41 }
42 }
43 if (isset($_POST['disconnect']))
44 {
45 if ($rpc->server()->disconnect($_POST['disconnect'], $_POST['reason']))
46 Message::Success("Server \"".$_POST['disconnect']."\" has been successfully disconnected from the network.");
47 else
48 Message::Fail((isset($rpc->error)) ? $rpc->error : "No error");
49 }
50
51 }
52 if (isset($_GET['server']))
53 {
54 $servername = $_GET['server'];
55 $srv = $rpc->server()->get($servername);
56
57 if (!$srv)
58 {
59 Message::Fail("Could not find server: \"$servername\"");
60 }
61 else {
62 do_log($srv);
63 $servername = $srv->name;
64 $title .= " for \"" . $servername . "\"";
65 }
66 }
67 if (!empty($rehash_success)) {
68 do_log($rehash_success);
69 $servlist_bullet = "<ol>";
70
71 foreach ($rehash_success as $serv) {
72 $servlist_bullet .= "<li>$serv</li>";
73 }
74 $servlist_bullet .= "</ol>";
75 $servlist_err_bullet = "";
76 foreach ($rehash_errors as $serv => $err) {
77 $servlist_err_bullet .= "<h6>$serv</h6><ol>";
78 foreach ($err as $er)
79 $servlist_err_bullet .= "<li>$er</li>";
80 echo "</ol>";
81 }
82 $servlist_warn_bullet = ""; foreach ($rehash_warnings as $server => $warning) {
83 $servlist_warn_bullet .= "<h6>$serv</h6><ol>";
84 foreach ($warning as $w)
85 $servlist_warn_bullet .= "<li>$w</li>";
86 $servlist_warn_bullet .= "</ol>";
87 }
88 if (!empty($rehash_success))
89 Message::Success(
90 "The following server(s) were successfully rehashed:",
91 $servlist_bullet
92 );
93 if (!empty($rehash_warnings))
94 Message::Warning(
95 "The following warning(s) were encountered:",
96 $servlist_warn_bullet
97 );
98 if (!empty($rehash_errors))
99 Message::Fail(
100 "The following error(s) were encountered and the server(s) failed to rehash:",
101 $servlist_err_bullet
102 );
103 }
104 ?>
105 <title><?php echo $title; ?></title>
106 <h4><?php echo $title; ?></h4>
107 <br>
108 <form method="get" action="details.php">
109 <div class="input-group short-form-control">
110 <input class="short-form-control" id="server" name="server" type="text" value=<?php echo $servername; ?>>
111 <div class="input-group-append">
112 <br><button type="submit" class="btn btn-primary">Go</button>
113 </div>
114 </div>
115 </form>
116
117 <?php if (!$srv)
118 return;
119 ?>
120 <br>
121 <div class="row">
122 <div class="col-sm-3">
123 <div class="btn btn-sm btn-warning" data-toggle="modal" data-target="#rehash_modal">Rehash</div>
124 <div class="btn btn-sm btn-danger" data-toggle="modal" data-target="#disconnect_modal">Disconnect</div>
125 </div>
126 </div>
127 <br>
128 <div class="modal fade" id="disconnect_modal" tabindex="-1" role="dialog" aria-labelledby="confirmModalCenterTitle" aria-hidden="true">
129 <div class="modal-dialog modal-dialog-centered" role="document">
130 <div class="modal-content">
131 <div class="modal-header">
132 <h5 class="modal-title" id="myModalLabel">Disconnect Server</h5>
133 <button type="button" class="close" data-dismiss="modal" aria-label="Close">
134 <span aria-hidden="true">&times;</span>
135 </button>
136 </div>
137 <div class="modal-body">
138 <form method="post">
139 Please enter a reason for disconnecting "<?php echo $srv->name; ?>"?
140 <input type="text" class="short-form-control form-control" id="reason" name="reason" value="No reason">
141 </div>
142 <div class="modal-footer">
143 <input type="hidden" id="server" name="disconnect" value="<?php echo $srv->name; ?>"></input>
144 <button id="CloseButton" type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
145 <button type="submit" action="post" class="btn btn-danger">Disconnect</button>
146 </form>
147 </div>
148 </div>
149 </div>
150 </div>
151
152 <div class="modal fade" id="rehash_modal" tabindex="-1" role="dialog" aria-labelledby="confirmModalCenterTitle" aria-hidden="true">
153 <div class="modal-dialog modal-dialog-centered" role="document">
154 <div class="modal-content">
155 <div class="modal-header">
156 <h5 class="modal-title" id="myModalLabel">Rehash Server</h5>
157 <button type="button" class="close" data-dismiss="modal" aria-label="Close">
158 <span aria-hidden="true">&times;</span>
159 </button>
160 </div>
161 <div class="modal-body">
162 <form method="post">
163 Are you sure you want to rehash <?php echo $srv->name; ?>?
164 </div>
165 <div class="modal-footer">
166 <input type="hidden" id="server" name="rehash" value="<?php echo $srv->name; ?>"></input>
167 <button id="CloseButton" type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
168 <button type="submit" action="post" class="btn btn-primary">Rehash</button>
169 </form>
170 </div>
171 </div>
172 </div>
173 </div>
174
175 <div class="container-xxl">
176 <div class="row">
177
178 <div class="col-sm-8">
179 <div class="card">
180 <div class="card-body">
181 <h6 class="card-title">Server Settings</h6>
182 <ul class="nav nav-tabs" role="tablist">
183 <li class="nav-item" role="presentation"><a class="nav-link" href="#servermodes" aria-controls="servermodes" role="tab" data-toggle="tab">Info</a></li>
184 <li class="nav-item" role="presentation"><a class="nav-link" href="#serverinv" aria-controls="serverinv" role="tab" data-toggle="tab">Channel Modes</a></li>
185 <li class="nav-item" role="presentation"><a class="nav-link" href="#serverex" aria-controls="serverex" role="tab" data-toggle="tab">User Modes</a></li>
186 <li class="nav-item" role="presentation"><a class="nav-link" href="#serverbans" aria-controls="serverbans" role="tab" data-toggle="tab">Modules</a></li>
187 </ul>
188
189 <div class="tab-content">
190 <br>
191 <div class="tab-pane fade in" id="servermodes">
192
193 <p class="card-text row">
194 <h4>Server information</h4>
195 <?php generate_html_serverinfo($srv); ?>
196 <h4>Extra information</h4>
197 <?php generate_html_extserverinfo($srv); ?>
198 </p>
199 </div><form id="editservermodes" method="post" name="editservermodes">
200 <div class="tab-pane" style="display: none" id="servermodes_edit">
201
202 <div class="btn btn-sm btn-secondary" id="editchmodesbk">Go back</div>
203 <button type="submit" class="btn btn-sm btn-primary">Save Settings</button>
204 <p class="card-text"><div></div></p>
205 </form>
206 </div>
207
208 <div class="tab-pane fade in" id="serverbans">
209 <p class="card-text"><?php generate_html_modlist($srv); ?></p>
210 </div>
211 <div class="tab-pane fade in" id="serverinv">
212 <p class="card-text"><?php generate_html_servermodes($srv); ?></p>
213 </div>
214 <div class="tab-pane fade in" id="serverex">
215 <p class="card-text"><?php generate_html_usermodes($srv); ?></p>
216 </div>
217 <div class="tab-pane fade in" id="servermodes_edit">
218 <p class="card-text"><?php /* insert hacks here */ ?></p>
219 </div>
220
221 </div>
222 </div>
223 </div>
224
225 </div>
226 </div>
227 <?php require_once UPATH.'/inc/footer.php'; ?>
228 <script>
229 // show dat first tab
230 $('.nav-tabs a[href="#servermodes"]').tab('show')
231 </script>