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
📄Staff.php
1<?php
2
3namespace WHMCS\Module\Widget;
4
5use WHMCS\Carbon;
6use WHMCS\Module\AbstractWidget;
7use WHMCS\User\AdminLog;
8
9/**
10 * Staff Widget.
11 *
12 * @copyright Copyright (c) WHMCS Limited 2005-2021
13 * @license https://www.whmcs.com/eula/ WHMCS Eula
14 */
15class Staff extends AbstractWidget
16{
17 protected $title = 'Staff Online';
18 protected $description = 'An overview of staff.';
19 protected $weight = 300;
20 protected $cache = true;
21 protected $cacheExpiry = 60;
22
23 public function getData()
24 {
25 return AdminLog::with('admin')->online()->get();
26 }
27
28 public function generateOutput($data)
29 {
30 $staffOutput = '';
31 //phpcs:disable
32 foreach ($data as $session) {
33 $staffOutput .= '<div class="staff">'
34 . '<img src="https://www.gravatar.com/avatar/' . $session['admin']['gravatarHash'] . '?s=60&d=mp" width="60" height="60" alt="Gravatar"/>'
35 . '<div class="name">' . $session['admin']['firstname'] . ' ' . $session['admin']['lastname'] . '</div>'
36 . '<div class="note text-muted">'
37 . Carbon::createFromFormat('Y-m-d H:i:s', $session['lastvisit'])->diffForHumans() . '</div>'
38 . '</div>';
39 }
40 //phpcs:enable
41
42 return <<<EOF
43 <div class="widget-staff-container clearfix">
44 {$staffOutput}
45 </div>
46EOF;
47 }
48}
49