@if ($staff->department) @endif @if ($staff->canLoginNow()) @else @endif @if ($staff->hasMfaEnabled()) @elseif ($staff->requiresMfa()) @else @endif @can('users.edit') Edit profile @endcan
Employee number
{{ $staff->employee_no ?: '—' }}
Username
{{ $staff->username ?: '—' }}
Email
{{ $staff->email }}
Mobile
{{ $staff->phone ?: '—' }}
Gender
{{ $staff->gender ? lookup_label('gender', $staff->gender) : '—' }}
Date of birth
{{ $staff->date_of_birth?->format('d M Y') ?? '—' }}
National ID
{{ $staff->national_id ?: '—' }}
Address
{{ $staff->address ?: '—' }}
Employment type
{{ $staff->employment_type ? lookup_label('employment_type', $staff->employment_type) : '—' }}
Date joined
{{ $staff->date_joined?->format('d M Y') ?? '—' }}
Emergency contact
{{ $staff->emergency_contact_name ?: '—' }}
Emergency number
{{ $staff->emergency_contact_phone ?: '—' }}
@if ($staff->notes)

Internal notes

{{ $staff->notes }}

@endif
@if ($staff->specialization || $staff->license_no || $staff->qualification)
Specialization
{{ $staff->specialization ?: '—' }}
Qualification
{{ $staff->qualification ?: '—' }}
Licence number
{{ $staff->license_no ?: '—' }}
Licence expiry
{{ $staff->license_expiry?->format('d M Y') ?? '—' }} @if ($staff->license_expiry && $staff->license_expiry->isPast()) @elseif ($staff->license_expiry?->lessThan(now()->addDays(60))) @endif
Consultation fee
{{ $staff->consultation_fee !== null ? money($staff->consultation_fee) : '—' }}
@endif

Derived from the {{ $staff->role_label }} role. Edit the role to change these.

@forelse ($permissions as $permission) {{ $permission }} @empty

No permissions granted.

@endforelse
@if ($recentLogins->isEmpty()) @else
    @foreach ($recentLogins as $activity)
  • {{ $activity->login_at?->format('d M Y H:i') ?? '—' }} · {{ $activity->ip_address ?: 'unknown IP' }}

    @if (! $activity->successful && $activity->failure_reason)

    {{ $activity->failure_reason }}

    @endif
    @if ($activity->mfa_challenged) @endif @if ($activity->successful) @else @endif
  • @endforeach
@endif
@can('users.deactivate') @if ($staff->canLoginNow())

This account can sign in. Suspending it ends access immediately without deleting any clinical history the person authored.

@csrf @method('PATCH') @else

Sign-in is suspended @if ($staff->deactivated_at) since {{ $staff->deactivated_at->format('d M Y') }} @endif. Restoring access clears the suspension reason.

@csrf @method('PATCH')
@endif
@endcan @can('users.reset-password')
@csrf @method('PATCH')

Issue a temporary password. The account holder must change it at their next sign-in.

@endcan @can('users.manage-mfa') @if ($staff->hasMfaEnabled())

Enrolled {{ $staff->mfa_confirmed_at?->format('d M Y') }}. Reset this only when the device is lost or replaced.

@csrf @method('PATCH')
@else

No authenticator device enrolled. @if ($staff->requiresMfa()) This account is required to enrol one and will be prompted at next sign-in. @else Enrolment is optional for this role. @endif

@endif
@endcan
Created
{{ $staff->created_at?->format('d M Y H:i') ?? '—' }}
Last updated
{{ $staff->updated_at?->diffForHumans() ?? '—' }}
Last sign-in
{{ $staff->last_login_at?->format('d M Y H:i') ?? 'Never' }}
Last sign-in IP
{{ $staff->last_login_ip ?: '—' }}
Password changed
{{ $staff->password_changed_at?->format('d M Y') ?? '—' }}