1<?php
2
3namespace WHMCS\Module\Widget;
4
5use WHMCS\Module\AbstractWidget;
6
7/**
8 * Billing Widget.
9 *
10 * @copyright Copyright (c) WHMCS Limited 2005-2021
11 * @license https://www.whmcs.com/eula/ WHMCS Eula
12 */
13class Billing extends AbstractWidget
14{
15 protected $title = 'Billing';
16 protected $description = 'An overview of billing.';
17 protected $weight = 150;
18 protected $cache = true;
19 protected $requiredPermission = 'View Income Totals';
20
21 public function getData()
22 {
23 $incomeStats = getAdminHomeStats('income');
24 foreach ($incomeStats['income'] as $key => $value) {
25 $incomeStats['income'][$key] = $value->toPrefixed();
26 }
27 return $incomeStats;
28 }
29
30 public function generateOutput($data)
31 {
32 $incomeToday = $data['income']['today'];
33 $incomeThisMonth = $data['income']['thismonth'];
34 $incomeThisYear = $data['income']['thisyear'];
35 $incomeAllTime = $data['income']['alltime'];
36
37 return <<<EOF
38<div class="row">
39 <div class="col-sm-6 bordered-right">
40 <div class="item">
41 <div class="data color-green">{$incomeToday}</div>
42 <div class="note">Today</div>
43 </div>
44 </div>
45 <div class="col-sm-6">
46 <div class="item">
47 <div class="data color-orange">{$incomeThisMonth}</div>
48 <div class="note">This Month</div>
49 </div>
50 </div>
51 <div class="col-sm-6 bordered-right bordered-top">
52 <div class="item">
53 <div class="data color-pink">{$incomeThisYear}</div>
54 <div class="note">This Year</div>
55 </div>
56 </div>
57 <div class="col-sm-6 bordered-top">
58 <div class="item">
59 <div class="data">{$incomeAllTime}</div>
60 <div class="note">All Time</div>
61 </div>
62 </div>
63</div>
64EOF;
65 }
66}
67