@foreach(['success', 'error'] as $flash)
@if(session($flash))
{{ session($flash) }}
@endif
@endforeach
{{-- Mobile page header --}}
{{-- Desktop page header --}}
QR Codes
{{ $qrCode->label }}
{{ $qrCode->is_active ? 'Active' : 'Paused' }}
{{ $qrCode->typeLabel() }}
{{ $qrCode->publicUrl() }}
{{-- Main 2-column layout --}}
{{-- Mobile sticky action bar --}}
{{-- Preview modal --}}
{{-- Downloads pinned to bottom of modal --}}
@php
$mobileShareUrl = $qrCode->publicUrl();
$mobileShareText = urlencode($qrCode->label . ' — scan my QR code');
$mobileShareEnc = urlencode($mobileShareUrl);
@endphp
PNG
SVG
PDF
{{-- Orders (Book / Menu / Shop) --}}
@if(isset($orders) && !is_null($orders))
Orders
{{ $orders->count() }} paid
{{ $orders->count() }}
Total orders
GHS {{ number_format((float) $orders->sum('amount_ghs'), 2) }}
Revenue earned
@if($orders->isEmpty())
@else
| Customer |
Items |
Amount |
Date |
@foreach($orders as $order)
|
{{ $order->customer_name ?: '—' }}
{{ $order->customer_email ?: '' }}
|
{{ collect($order->items)->map(fn($i) => ($i['qty'] > 1 ? $i['qty'].'× ' : '').$i['name'])->join(', ') }}
|
GHS {{ number_format((float) $order->amount_ghs, 2) }}
|
{{ $order->paid_at?->format('M j, Y') }}
|
@endforeach
@endif
@endif
{{-- Scan analytics --}}
Analytics
{{ number_format($summary['total_scans']) }}
Total scans
{{ number_format($summary['unique_scans']) }}
Unique scans
{{ number_format($summary['scans_7d']) }}
Last 7 days
{{ number_format($summary['scans_30d']) }}
Last 30 days
Scans — last 30 days
@php $maxDaily = max(1, $dailyScans->max('total')); @endphp
@foreach($dailyScans as $day)
@endforeach
Devices
@forelse($devices as $row)
-
{{ ucfirst($row['label']) }}
{{ $row['total'] }}
@empty
- No scans yet
@endforelse
Browsers
@forelse($browsers as $row)
-
{{ $row['label'] }}
{{ $row['total'] }}
@empty
- No scans yet
@endforelse
{{-- Danger zone: delete this QR code (type-to-confirm, not a one-click delete) --}}
Delete this QR code
The printed code stops working permanently and its scan history is removed. This can't be undone.