@extends('admin.layout')
@section('title', 'Dashboard')
@section('content')
@php
$trialCount = $trialUsers->count();
$expiringCount = $expiring->count();
$activeCount = $stats['tenants_paying'] + $stats['tenants_trial'];
@endphp
Total Tenants
{{ $stats['tenants_total'] }}
{{ $stats['tenants_active'] }} active
Paying Users
{{ $stats['tenants_paying'] }}
{{ $stats['tenants_trial'] }} on trial
MRR
${{ number_format($stats['mrr'], 2) }}
Monthly recurring
Expiring Soon
{{ $expiringCount }}
Within 7 days
{{-- Quick Email Buttons --}}
{{-- Trial Users --}}
| Tenant | Email | Trial Ends | Days Left |
@forelse($trialUsers as $t)
@php $daysLeft = $t->trial_ends_at ? max(0, (int)now()->diffInDays(\Carbon\Carbon::parse($t->trial_ends_at), false)) : 0; @endphp
| {{ $t->name }} |
{{ $t->users->first()->email ?? '—' }} |
{{ $t->trial_ends_at ? \Carbon\Carbon::parse($t->trial_ends_at)->format('M d, Y') : '—' }} |
{{ $daysLeft }}d |
@empty
| No trial users |
@endforelse
{{-- Expiring Soon --}}
| Tenant | Plan | Email | Expires | Days |
@forelse($expiring as $t)
@php $daysLeft = $t->subscription_ends_at ? max(0, (int)now()->diffInDays(\Carbon\Carbon::parse($t->subscription_ends_at), false)) : 0; @endphp
| {{ $t->name }} |
{{ $t->plan->name ?? '—' }} |
{{ $t->users->first()->email ?? '—' }} |
{{ \Carbon\Carbon::parse($t->subscription_ends_at)->format('M d') }} |
{{ $daysLeft }}d |
@empty
| No expiring subscriptions |
@endforelse
{{-- Recent & Plans --}}
| Tenant | Plan | Status | Users |
@foreach($recent as $t)
| {{ $t->name }} |
{{ $t->plan->name ?? '—' }} |
{{ ucfirst($t->subscription_status) }} |
{{ $t->users->count() }} |
@endforeach
| Plan | Tenants |
@foreach($plans as $p)
| {{ $p->name }} | {{ $p->tenants_count }} |
@endforeach
@endsection