Kembalikan Header Stats Bar yang Hilang di WHMCS 8


IDTECHDEV

Beginner 2.0
Hi DWH Members!

Siapa disini yang sudah menggunakan panel WHMCS 8? tentunya banyak sekali perubahan yang dilakukan di versi major kali ini terutama pada UI-nya.
Salah satu menu akses yang hilang adalah informasi mengenai Stats Bar yang ada di bagian header halaman Admin.

Dari tampilan header yang seperti ini (7.10.2)
Screenshot_2020-11-28 WHMCS - Dashboard(1).png

Menjadi tampilan header modern seperti ini (8.0.4)
Screenshot_2020-11-28 WHMCS - Dashboard(2).png

Nah, buat pengguna WHMCS 8 yang menginginkan adanya informasi stats bar di header seperti pada versi 7.10.2 bisa mencoba hooks yang satu ini :
PHP:
<?php

/**
* Display Header Stats Bar on WHMCS v8
*
* @package    WHMCS
* @author     Rahmat Sabilludin
*/

if (!defined("WHMCS"))
    die("This file cannot be accessed directly");

use Carbon\Carbon;
use WHMCS\Database\Capsule;
use WHMCS\Billing\Invoice;

function StatsBar($vars) {
   
    if ($vars['template'] == "blend") {
        $pendingStatusList = Capsule::table('tblorderstatuses')->where('showpending','1')->pluck('title');
        $pendingOrders = Capsule::table('tblorders')->whereIn('status',$pendingStatusList)->count();
        $overdueInvoices = Invoice::overdue()->count();
        $awaitingReplyList = Capsule::table('tblticketstatuses')->where('showawaiting','1')->pluck('title');
        $ticketsAwaiting = Capsule::table('tbltickets')->whereIn('status',$awaitingReplyList)->where('merged_ticket_id','0')->count();
        $current_time = Carbon::now()->translatedFormat("l, j F Y, H:i");
        $data = '<div style="margin: 0; padding: 5px; background-color: #1a4d80; display: block; width: 100%; max-height: 25px;">
            <div style="text-align: center; color: #fff; font-size: .8em; margin: 0;">
                <a href="orders.php?status=Pending" style="color: #fff;"><span style="font-weight: 700; color: #fc0;">'.$pendingOrders.'</span> '.AdminLang::trans('stats.pendingorders').'</a> |
                <a href="invoices.php?status=Overdue" style="color: #fff;"><span style="font-weight: 700; color: #fc0;">'.$overdueInvoices.'</span> '.AdminLang::trans('stats.overdueinvoices').'</a> |
                <a href="supporttickets.php" style="color: #fff;"><span style="font-weight: 700; color: #fc0;">'.$ticketsAwaiting.'</span> '.AdminLang::trans('stats.ticketsawaitingreply').'</a>
            </div>
        </div>';
        return $data;
    }
}

add_hook("AdminAreaHeaderOutput",1,"StatsBar");

Dan hasilnya akan seperti ini
Screenshot_2020-11-28 WHMCS - Dashboard(3).png

Semoga bermanfaat :8:
 

trias

Hosting Guru
Hi DWH Members!

Siapa disini yang sudah menggunakan panel WHMCS 8? tentunya banyak sekali perubahan yang dilakukan di versi major kali ini terutama pada UI-nya.
Salah satu menu akses yang hilang adalah informasi mengenai Stats Bar yang ada di bagian header halaman Admin.

Dari tampilan header yang seperti ini (7.10.2)
View attachment 5399

Menjadi tampilan header modern seperti ini (8.0.4)
View attachment 5400

Nah, buat pengguna WHMCS 8 yang menginginkan adanya informasi stats bar di header seperti pada versi 7.10.2 bisa mencoba hooks yang satu ini :
PHP:
<?php

/**
* Display Header Stats Bar on WHMCS v8
*
* @package    WHMCS
* @author     Rahmat Sabilludin
*/

if (!defined("WHMCS"))
    die("This file cannot be accessed directly");

use Carbon\Carbon;
use WHMCS\Database\Capsule;
use WHMCS\Billing\Invoice;

function StatsBar($vars) {
 
    if ($vars['template'] == "blend") {
        $pendingStatusList = Capsule::table('tblorderstatuses')->where('showpending','1')->pluck('title');
        $pendingOrders = Capsule::table('tblorders')->whereIn('status',$pendingStatusList)->count();
        $overdueInvoices = Invoice::overdue()->count();
        $awaitingReplyList = Capsule::table('tblticketstatuses')->where('showawaiting','1')->pluck('title');
        $ticketsAwaiting = Capsule::table('tbltickets')->whereIn('status',$awaitingReplyList)->where('merged_ticket_id','0')->count();
        $current_time = Carbon::now()->translatedFormat("l, j F Y, H:i");
        $data = '<div style="margin: 0; padding: 5px; background-color: #1a4d80; display: block; width: 100%; max-height: 25px;">
            <div style="text-align: center; color: #fff; font-size: .8em; margin: 0;">
                <a href="orders.php?status=Pending" style="color: #fff;"><span style="font-weight: 700; color: #fc0;">'.$pendingOrders.'</span> '.AdminLang::trans('stats.pendingorders').'</a> |
                <a href="invoices.php?status=Overdue" style="color: #fff;"><span style="font-weight: 700; color: #fc0;">'.$overdueInvoices.'</span> '.AdminLang::trans('stats.overdueinvoices').'</a> |
                <a href="supporttickets.php" style="color: #fff;"><span style="font-weight: 700; color: #fc0;">'.$ticketsAwaiting.'</span> '.AdminLang::trans('stats.ticketsawaitingreply').'</a>
            </div>
        </div>';
        return $data;
    }
}

add_hook("AdminAreaHeaderOutput",1,"StatsBar");

Dan hasilnya akan seperti ini
View attachment 5401

Semoga bermanfaat :8:




WHMCS Free Hook Module

 

IDTECHDEV

Beginner 2.0
Belum coba namun terimakasih banyak atas berbaginya
Semoga bermanfaat buat rekan2 yang lain dan sukses selalu buat @IDTECHDEV
Sama-sama om :)

✅ Well noted mas.
Bisa dicoba juga om custom badge statistiknya di https://www.diskusiwebhosting.com/threads/custom-badges-widget-admin-homepage-pada-whmcs-8.36099/



WHMCS Free Hook Module

Konsepnya sama mas, mengingat templating di whmcs terbaru untuk variable sidebarstatsnya sudah dihilangkan jadi bisa pake api atau langsung get ke db untuk cara singkat (seperti contoh diatas).
Screenshot (129).png
 

Top