Dashboard: make subscription expiry mini bar rows clickable with safe back

This commit is contained in:
萝卜
2026-03-17 02:29:08 +08:00
parent dcf83121bf
commit e8c048378e
2 changed files with 8 additions and 4 deletions

View File

@@ -369,21 +369,21 @@
<div class="mt-10" data-role="dashboard-sub-expiry-bars"> <div class="mt-10" data-role="dashboard-sub-expiry-bars">
<div class="muted muted-xs">占比(相对订阅总量 {{ $subTotal }}</div> <div class="muted muted-xs">占比(相对订阅总量 {{ $subTotal }}</div>
<div class="adm-mini-bar-row mt-6" data-role="dashboard-sub-expiring-7d-row"> <a class="adm-mini-bar-row adm-mini-bar-row-link mt-6" data-role="dashboard-sub-expiring-7d-row" href="{!! \App\Support\BackUrl::withBack('/admin/site-subscriptions?expiry=expiring_7d', $selfWithoutBack) !!}" aria-label="进入7天内到期订阅集合">
<div class="adm-mini-bar-label">7天内到期</div> <div class="adm-mini-bar-label">7天内到期</div>
<div class="adm-mini-bar" data-role="dashboard-sub-expiring-7d-bar" title="{{ $subExpiring7d }} / {{ $subTotal }}{{ $pctExpiring7d }}%"> <div class="adm-mini-bar" data-role="dashboard-sub-expiring-7d-bar" title="{{ $subExpiring7d }} / {{ $subTotal }}{{ $pctExpiring7d }}%">
<span class="adm-mini-bar-fill" style="width: {{ $pctExpiring7d }}%"></span> <span class="adm-mini-bar-fill" style="width: {{ $pctExpiring7d }}%"></span>
</div> </div>
<div class="adm-mini-bar-value">{{ $pctExpiring7d }}%</div> <div class="adm-mini-bar-value">{{ $pctExpiring7d }}%</div>
</div> </a>
<div class="adm-mini-bar-row mt-6" data-role="dashboard-sub-expired-row"> <a class="adm-mini-bar-row adm-mini-bar-row-link mt-6" data-role="dashboard-sub-expired-row" href="{!! \App\Support\BackUrl::withBack('/admin/site-subscriptions?expiry=expired', $selfWithoutBack) !!}" aria-label="进入已过期订阅集合">
<div class="adm-mini-bar-label">已过期</div> <div class="adm-mini-bar-label">已过期</div>
<div class="adm-mini-bar" data-role="dashboard-sub-expired-bar" title="{{ $subExpired }} / {{ $subTotal }}{{ $pctExpired }}%"> <div class="adm-mini-bar" data-role="dashboard-sub-expired-bar" title="{{ $subExpired }} / {{ $subTotal }}{{ $pctExpired }}%">
<span class="adm-mini-bar-fill" style="width: {{ $pctExpired }}%"></span> <span class="adm-mini-bar-fill" style="width: {{ $pctExpired }}%"></span>
</div> </div>
<div class="adm-mini-bar-value">{{ $pctExpired }}%</div> <div class="adm-mini-bar-value">{{ $pctExpired }}%</div>
</div> </a>
</div> </div>
</div> </div>

View File

@@ -32,6 +32,10 @@ class AdminDashboardSubscriptionExpiryMiniBarsShouldRenderTest extends TestCase
$this->assertStringContainsString('data-role="dashboard-sub-expiring-7d-bar"', $html); $this->assertStringContainsString('data-role="dashboard-sub-expiring-7d-bar"', $html);
$this->assertStringContainsString('data-role="dashboard-sub-expired-bar"', $html); $this->assertStringContainsString('data-role="dashboard-sub-expired-bar"', $html);
// 行可点击:直达订阅到期治理集合(含安全 back
$this->assertStringContainsString('href="/admin/site-subscriptions?expiry=expiring_7d&back=%2Fadmin"', $html);
$this->assertStringContainsString('href="/admin/site-subscriptions?expiry=expired&back=%2Fadmin"', $html);
$css = (string) file_get_contents(public_path('css/admin-components.css')); $css = (string) file_get_contents(public_path('css/admin-components.css'));
$this->assertStringContainsString('.adm-mini-bar-row{', $css); $this->assertStringContainsString('.adm-mini-bar-row{', $css);
$this->assertStringContainsString('.adm-mini-bar-label{', $css); $this->assertStringContainsString('.adm-mini-bar-label{', $css);