@extends('layouts.admin') @section('title', 'Care Team') @php $roleLabels = [ 'clinic_admin' => 'Clinic Admin', 'pcp' => 'PCP', 'bhcm' => 'BHCM', 'psychiatrist' => 'Psychiatrist', 'billing_staff' => 'Billing Staff', 'practice_manager' => 'Practice Manager', 'clinical_support' => 'Clinical Support', 'front_desk' => 'Front Desk', ]; $canSendTestPush = request()->user()?->isClinicAdmin() || request()->user()?->isSuperAdmin(); @endphp @section('content')
Practice access
Invite clinical staff, monitor access status, and keep BHCM capacity aligned before assigning patients.
One-time setup link
Email delivery is queued through the configured mailer. For local testing, use this link now; it will not be shown again.
Active accounts
{{ $metrics['active_staff'] }}
Accepted staff logins
BHCM accounts
{{ $metrics['bhcms'] }}
Available for assignment
Pending invites
{{ $metrics['pending_invites'] }}
Waiting for setup
Suspended accounts
{{ $metrics['suspended_staff'] }}
Cannot access portal
The invited person creates their own password from a secure email link.
Accepted staff accounts. Pending invitations appear below until setup is complete.
{{ $member->name }}
{{ $member->email }}
No staff members have accepted an invitation for this practice yet.
@endforelseThese are invite records, not active users. A pending invite moves into the care team after the recipient accepts the setup link.
| Role | Status | Invited by | Expires | |
|---|---|---|---|---|
| {{ $invitation->email }} | {{ $roleLabels[$invitation->role] ?? $invitation->role }} | @if ($invitation->isAccepted()) Accepted @elseif ($invitation->isExpired()) Expired @else Pending @endif | {{ $invitation->invitedBy?->name ?? 'System' }} | {{ \App\Support\UsFormat::date($invitation->expires_at) }} |
| No staff invitations yet. | ||||