]> jfr.im git - irc/unrealircd/unrealircd-webpanel.git/blob - misc/server-lookup-misc.php
1b7bf4c945d05360e679cd5e9f128ea728ed9c13
[irc/unrealircd/unrealircd-webpanel.git] / misc / server-lookup-misc.php
1 <?php
2
3
4 function generate_html_servermodes($server)
5 {
6 include UPATH . "/Classes/class-cmodes.php";
7 ?>
8 <table class="table-sm table-responsive caption-top table-hover">
9 <thead>
10 <th>Name</th>
11 <th>Description</th>
12 <th>Requires</th>
13 </thead>
14 <?php
15
16 foreach ($server->server->features->chanmodes as $set)
17 {
18 if (!$set)
19 break;
20 for ($i = 0; isset($set[$i]); $i++)
21 {
22 $mode = $set[$i];
23 if (isset(IRCList::$cmodes[$mode])) {
24 ?>
25 <tr>
26 <th><?php echo IRCList::$cmodes[$mode]['name']; ?></th>
27 <td><?php echo IRCList::$cmodes[$mode]['description']; ?></td>
28 <td><div class="badge rounded-pill badge-dark"><?php echo IRCList::$cmodes[$mode]['requires']; ?></div></td>
29 </tr><?php
30 }
31 else {
32 ?>
33 <tr>
34 <th>Unknown</th>
35 <td>Mode "<?php echo $mode; ?>"</td>
36 <td></td>
37 </tr><?php
38 }
39
40 }
41 }
42 ?>
43 </table><?php
44 }
45
46 function sinfo_conv_version_string($server) : string
47 {
48 $string = (isset($server->server->features->software)) ? $server->server->features->software : "";
49 $return = "";
50 $tooltip = "";
51 $badge = "";
52 $display_string = $string;
53
54 if (strlen($string) && strpos($string,"-"))
55 {
56 $tok = split($string, "-");
57 if (($tok[0] == "UnrealIRCd") && isset($tok[2]))
58 {
59 if ($tok[2] == "git")
60 {
61 if (!empty($tok[3]))
62 $badge = "git:".$tok[3];
63 else
64 $badge = "git";
65 $tooltip = "Installed from GitHub";
66 $display_string = $tok[0]."-".$tok[1]."-".$tok[2];
67 } else if (substr($tok[2],0,2) == "rc")
68 {
69 $tooltip = "Release Candidate/Beta Version";
70 $badge = "rc";
71 } else if (strlen($tok[2]) == 9)
72 {
73 /* Guess that this is a commit id :D */
74 $badge = "git:".$tok[2];
75 $tooltip = "Installed from GitHub";
76 $display_string = $tok[0]."-".$tok[1];
77 }
78 }
79 $return = "<span data-toggle=\"tooltip\" data-placement=\"bottom\" title=\"$tooltip\"><code>" . $display_string . "</code> <div class=\"badge rounded-pill badge-dark\">$badge</div></a>";
80 }
81 if ($server->server->ulined)
82 $return .= "<div class=\"badge rounded-pill badge-warning\">Services</div>";
83 return $return;
84 }
85
86 function generate_html_serverinfo($server)
87 {
88 global $rpc;
89 ?>
90 <table class="table-sm table-responsive caption-top table-hover">
91 <tbody>
92 <tr>
93 <th>Name</th>
94 <td colspan="2"><code><?php echo $server->name; ?></code></td>
95 </tr><tr>
96 <th>Server ID (SID)</th>
97 <td colspan="2"><code><?php echo $server->id; ?></code></td>
98 </tr><tr>
99 <th>Info</th>
100 <td colspan="2"><code><?php echo $server->server->info; ?></code></td>
101 </tr><tr>
102 <th>Uplink</th>
103 <?php $serverlkup = (isset($server->server->uplink)) ? $rpc->server()->get($server->server->uplink) : "<span class=\"badge rounded-pill badge-info\">None</span>"; ?>
104 <td colspan="2"><code><?php echo "<a href=\"".BASE_URL."servers/details.php?server=".$serverlkup->id."\">".$server->server->uplink."</a>"; ?></code></td>
105 </tr><tr>
106 <th>User count</th>
107 <td colspan="2"><code><?php echo $server->server->num_users; ?></code></td>
108 </tr><tr>
109 <th>Version</th>
110 <td colspan="2"><?php echo sinfo_conv_version_string($server); ?></td>
111 </tr>
112 </tbody>
113 </table>
114
115 <?php
116 }
117 function generate_html_modlist($srv)
118 {
119 global $rpc;
120 $modules = $rpc->server()->module_list($srv->id);
121 if (!$modules || !$modules->list)
122 {
123 echo $rpc->error;
124 } else {
125 ?>
126
127 <table class="table table-sm table-responsive table-hover">
128 <thead class="table-info">
129 <th>Name</th>
130 <th>Description</th>
131 <th>Source</th>
132 <th>Author</th>
133 <th>Version</th>
134 </thead>
135 <tbody>
136 <?php
137 foreach ($modules->list as $module) {
138 echo "<tr>\n";
139 echo "<td><code>$module->name</code></td>";
140 $desc = $module->description;
141 $short_desc = substr($desc, 0, 70); // truncate to 80 chars
142 if (strlen($desc) > strlen($short_desc))
143 $short_desc .= "...";
144 echo "<td><span href='#' data-toggle='tooltip' title=\"$desc\">$short_desc</span></td>";
145 $source = (!$module->third_party) ? "<div class=\"badge rounded-pill badge-success\">Official</div>" : "<div class=\"badge rounded-pill badge-info\">Third-Party</div>";
146 echo "<td>$source</td>";
147 echo "<td>$module->author</td>";
148 echo "<td>$module->version</td>";
149 }
150 }
151 ?>
152 </tbody>
153 </table>
154
155 <?php
156 }