run:R W Run
1.7 KB
2026-04-08 19:26:11
R W Run
8.34 KB
2026-04-08 19:26:11
R W Run
3.54 KB
2026-04-08 19:26:10
R W Run
1.8 KB
2026-04-08 19:26:10
R W Run
3.59 KB
2026-04-08 19:26:09
R W Run
3.19 KB
2026-04-08 19:26:10
R W Run
4.85 KB
2026-04-08 19:26:12
R W Run
2.47 KB
2026-04-08 19:26:12
R W Run
11.26 KB
2026-04-08 19:26:10
R W Run
1.34 KB
2026-04-08 19:26:10
R W Run
3.54 KB
2026-04-08 19:26:09
R W Run
4.61 KB
2026-04-08 19:26:10
R W Run
37 By
2026-04-08 19:26:09
R W Run
error_log
📄NetworkStatus.php
1<?php
2
3namespace WHMCS\Module\Widget;
4
5use App;
6use WHMCS\Module\AbstractWidget;
7
8/**
9 * NetworkStatus Widget.
10 *
11 * @copyright Copyright (c) WHMCS Limited 2005-2021
12 * @license https://www.whmcs.com/eula/ WHMCS Eula
13 */
14class NetworkStatus extends AbstractWidget
15{
16 protected $title = 'Network Status';
17 protected $description = 'An overview of Network Status.';
18 protected $weight = 450;
19 protected $cache = true;
20
21 public function getData()
22 {
23 return localAPI('GetServers', array('fetchStatus' => App::getFromRequest('refresh')));
24 }
25
26 public function generateOutput($data)
27 {
28 $output = '';
29 foreach ($data['servers'] as $server) {
30 $online = $data['fetchStatus'] ? (bool) $server['status']['http'] : null;
31 if ($data['fetchStatus']) {
32 $uptime = $server['status']['uptime'] ? $server['status']['uptime'] : '-';
33 $load = $server['status']['load'] ? $server['status']['load'] : '-';
34 } else {
35 $uptime = $load = 'N/A';
36 }
37
38 $serverAddress = $server['hostname'] ? $server['hostname'] : $server['ipaddress'];
39
40 $output .= '
41<div class="item">
42 <div class="name">
43 <div class="data">' . $server['name'] . '</div>
44 <div class="note"><a href="http://' . $serverAddress . '" target="_blank">' . $serverAddress . '</a></div>
45 </div>
46 <div class="stats text-center">
47 <div class="status">
48 <div class="data color-' . (is_null($online) || $online ? 'green' : 'pink') . '">' . (is_null($online) ? 'N/A' : ($online ? 'Online' : 'Offline')) . '</div>
49 <div class="note">Status</div>
50 </div>
51 <div class="uptime">
52 <div class="data">' . (is_null($uptime) ? 'N/A' : $uptime) . '</div>
53 <div class="note">Uptime</div>
54 </div>
55 <div class="load">
56 <div class="data text-info">' . (is_null($load) ? 'N/A' : $load) . '</div>
57 <div class="note">Avg. load</div>
58 </div>
59 </div>
60</div>';
61 }
62 if (count($data['servers']) == 0) {
63 $output = '<div class="text-center">
64 No servers configured.
65 <br /><br />
66 <a href="configservers.php" class="btn btn-primary btn-sm">Add Your First Now</a>
67 <br /><br />
68 </div>';
69 }
70
71 return <<<EOF
72<div class="widget-content-padded">
73 <div class="items-wrapper">
74 {$output}
75 </div>
76</div>
77EOF;
78 }
79}
80