@use('App\Core\Support\Money')

← Users

Opening this record was logged. Staff see account, plan and usage figures here, not the customer's individual transactions.

@foreach ([ 'Email' => $customer->email.($customer->email_verified_at ? ' (verified)' : ' (not verified)'), 'Mobile' => $customer->mobile ?? '—', 'Country' => $customer->profile?->country ?? '—', 'Registered' => $customer->created_at->toDayDateTimeString(), 'Last sign-in' => $customer->last_login_at?->toDayDateTimeString() ?? 'Never', 'Account status' => ucfirst($customer->status), 'Workspace status' => $workspace ? ucfirst($workspace->status) : 'No workspace yet', 'Currency' => $workspace?->default_currency ?? '—', ] as $label => $value)
{{ $label }}
{{ $value }}
@endforeach
@if ($usage)

{{ $usage['accounts'] }} accounts · {{ $usage['transactions'] }} transactions{{ $usage['last_transaction'] ? ' · last added '.\Carbon\Carbon::parse($usage['last_transaction'])->diffForHumans() : '' }}

@endif @unless ($customer->email_verified_at)

Email not verified yet

The customer cannot use the product until the email is verified.

@can('admin.users.suspend')
@csrf @method('PUT')
@error('reason')

{{ $message }}

@enderror
Mark as verified
@endcan
@endunless

{{ $current?->plan->name ?? 'None' }}

{{ $current ? ucfirst(str_replace('_', ' ', $current->status)) : '' }}{{ $current?->ends_at ? ' · until '.$current->ends_at->toFormattedDateString() : '' }}

@can('admin.subscriptions.view') @if ($current) Subscription details @endif @endcan
@can('admin.users.suspend')
@csrf @method('PUT')
{{ $customer->status === 'active' ? 'Suspend customer' : 'Reactivate customer' }}
@if ($workspace)
@csrf @method('PUT')
{{ $workspace->status === 'active' ? 'Suspend workspace only' : 'Reactivate workspace' }}
@endif
@endcan @if ($workspace) @php $canManage = auth('admin')->user()->can('admin.subscriptions.manage'); $modeFor = function ($feature) use ($overrides) { if (! $overrides->has($feature->key)) { return 'plan'; } $v = $feature->castValue($overrides[$feature->key]->value); return $feature->isLimit() ? ($v === null ? 'unlimited' : ($v === 0 ? 'off' : 'number')) : ($v ? 'on' : 'off'); }; $exceptionCount = $overrides->count(); @endphp @if ($exceptionCount) {{ $exceptionCount }} {{ str('exception')->plural($exceptionCount) }} active @else Follows plan @endif
@csrf @method('PUT')
@foreach ($features as $feature) @php $mode = old("access.{$feature->key}", $modeFor($feature)); $initial = $modeFor($feature); $fromPlan = array_key_exists($feature->key, $planValues) ? $planValues[$feature->key] : ($feature->isLimit() ? 0 : false); $final = array_key_exists($feature->key, $entitlements) ? $entitlements[$feature->key] : ($feature->isLimit() ? 0 : false); $override = $overrides->get($feature->key); $limitValue = old("limit.{$feature->key}", $override && $feature->isLimit() ? $feature->castValue($override->value) : null); $initialLimit = $override && $feature->isLimit() && $feature->castValue($override->value) !== null ? (string) $feature->castValue($override->value) : ''; $finalOn = $feature->isLimit() ? $final !== 0 : (bool) $final; @endphp @endforeach
Feature From plan Access for this customer Customer gets
{{ $feature->name }} @if ($override) Exception · {{ $override->reason }}{{ $override->ends_at ? ' · until '.$override->ends_at->toFormattedDateString() : '' }} @elseif ($feature->description) {{ \Illuminate\Support\Str::limit($feature->description, 70) }} @endif {{ $feature->describe($fromPlan) }} @if ($canManage)
@if ($feature->isLimit()) @endif
@error("limit.{$feature->key}")

{{ $message }}

@enderror @else {{ $override ? 'Exception' : 'Follow plan' }} @endif
$finalOn, 'text-slate-400' => ! $finalOn])> $finalOn, 'bg-slate-300' => ! $finalOn])> {{ $feature->describe($final) }}
@if ($canManage)
Save feature access
@endif
@can('admin.subscriptions.manage')
@csrf
Assign plan
@endcan @endif
@forelse ($payments as $payment)

{{ $payment->created_at->toFormattedDateString() }} · {{ $payment->status }} @can('admin.payments.view') {{ Money::format($payment->amount, $payment->currency) }} @else {{ Money::format($payment->amount, $payment->currency) }} @endcan

@empty

No payments.

@endforelse
@foreach ($tickets as $ticket)

@can('admin.support.view') {{ $ticket->number }} @else {{ $ticket->number }} @endcan {{ $ticket->subject }} · {{ str_replace('_', ' ', $ticket->status) }}

@endforeach
    @foreach ($activity as $log)
  • {{ $log->event }} · {{ $log->created_at->diffForHumans() }}
  • @endforeach