Add dashboard upgrade banner for free Queue plans.
Deploy Ladill Queue / deploy (push) Successful in 1m8s
Deploy Ladill Queue / deploy (push) Successful in 1m8s
Extract the Pro upsell into a shared partial so free orgs see View plans on the dashboard, not only in the sidebar. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -246,4 +246,10 @@ return [
|
|||||||
|
|
||||||
'display_poll_ms' => (int) env('QUEUE_DISPLAY_POLL_MS', 1200),
|
'display_poll_ms' => (int) env('QUEUE_DISPLAY_POLL_MS', 1200),
|
||||||
|
|
||||||
|
'upgrade_banner' => [
|
||||||
|
'title' => 'Unlock Queue Pro or Enterprise',
|
||||||
|
'description' => 'Unlimited branches, advanced routing, Care & Frontdesk integrations — from GHS 99/mo.',
|
||||||
|
'route' => 'qms.pro.index',
|
||||||
|
],
|
||||||
|
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -0,0 +1,10 @@
|
|||||||
|
@php $banner = config('qms.upgrade_banner'); @endphp
|
||||||
|
@if (empty($hasPaidPlan) && ! empty($banner))
|
||||||
|
<div class="mb-6 flex flex-col gap-3 rounded-2xl border border-indigo-200 bg-gradient-to-r from-indigo-50 to-emerald-50 px-5 py-4 sm:flex-row sm:items-center sm:justify-between">
|
||||||
|
<div>
|
||||||
|
<p class="font-semibold text-slate-900">{{ $banner['title'] }}</p>
|
||||||
|
<p class="mt-0.5 text-sm text-slate-600">{{ $banner['description'] }}</p>
|
||||||
|
</div>
|
||||||
|
<a href="{{ route($banner['route']) }}" class="btn-primary shrink-0">View plans</a>
|
||||||
|
</div>
|
||||||
|
@endif
|
||||||
@@ -68,15 +68,7 @@
|
|||||||
@endif
|
@endif
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@if (empty($hasPaidPlan))
|
@include('partials.upgrade-banner')
|
||||||
<div class="mb-6 flex flex-col gap-3 rounded-2xl border border-indigo-200 bg-gradient-to-r from-indigo-50 to-emerald-50 px-5 py-4 sm:flex-row sm:items-center sm:justify-between">
|
|
||||||
<div>
|
|
||||||
<p class="font-semibold text-slate-900">Unlock Queue Pro or Enterprise</p>
|
|
||||||
<p class="mt-0.5 text-sm text-slate-600">Unlimited branches, advanced routing, Care & Frontdesk integrations — from GHS 99/mo.</p>
|
|
||||||
</div>
|
|
||||||
<a href="{{ route('qms.pro.index') }}" class="btn-primary shrink-0">View plans</a>
|
|
||||||
</div>
|
|
||||||
@endif
|
|
||||||
|
|
||||||
<section class="mb-8">
|
<section class="mb-8">
|
||||||
<h2 class="mb-3 text-sm font-semibold uppercase tracking-wide text-slate-500">Live operations</h2>
|
<h2 class="mb-3 text-sm font-semibold uppercase tracking-wide text-slate-500">Live operations</h2>
|
||||||
|
|||||||
@@ -59,7 +59,9 @@ class QmsProTest extends TestCase
|
|||||||
$this->actingAs($this->owner)
|
$this->actingAs($this->owner)
|
||||||
->get(route('qms.dashboard'))
|
->get(route('qms.dashboard'))
|
||||||
->assertOk()
|
->assertOk()
|
||||||
->assertSee('Upgrade to Pro');
|
->assertSee('Upgrade to Pro')
|
||||||
|
->assertSee('Unlock Queue Pro or Enterprise')
|
||||||
|
->assertSee('View plans');
|
||||||
}
|
}
|
||||||
|
|
||||||
public function test_sidebar_shows_upgrade_for_operator_without_settings_access(): void
|
public function test_sidebar_shows_upgrade_for_operator_without_settings_access(): void
|
||||||
|
|||||||
Reference in New Issue
Block a user