{{ $qrCode->label }} @php $qrStyle = $qrCode->style(); @endphp
@foreach(['success', 'error'] as $flash) @if(session($flash))
{{ session($flash) }}
@endif @endforeach {{-- Mobile page header --}}
{{ $qrCode->label }}
{{-- Desktop page header --}} {{-- Main 2-column layout --}}
@csrf @method('PATCH') {{-- Left: Sticky preview + downloads (desktop only) --}} {{-- Right: Controls --}}
{{-- Content first --}}

Content

@if($qrCode->type === \App\Models\QrCode::TYPE_WIFI) Auto-join is locked to the network set when this code was created. Editing updates your saved info but won't change the printed code. @else Edits are free. The printed QR stays the same. @endif

@include('qr-codes.partials.type-fields-edit')
{{-- Customizer --}} @include('qr-codes.partials.customization-fields', [ 'style' => $qrStyle, 'moduleStyles' => $moduleStyles, 'cornerOuterStyles' => $cornerOuterStyles, 'cornerInnerStyles' => $cornerInnerStyles, 'frameStyles' => $frameStyles, 'showRemoveLogo' => ! empty($qrStyle['logo_path']), ]) {{-- Desktop save button --}}
{{-- Mobile sticky action bar --}}
{{-- Preview modal --}}
Preview
{{-- Downloads pinned to bottom of modal --}} @php $mobileShareUrl = $qrCode->publicUrl(); $mobileShareText = urlencode($qrCode->label . ' — scan my QR code'); $mobileShareEnc = urlencode($mobileShareUrl); @endphp
{{-- 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())

No paid orders yet.

@else
@foreach($orders as $order) @endforeach
Customer Amount Date

{{ $order->customer_name ?: '—' }}

{{ $order->customer_email ?: '' }}

GHS {{ number_format((float) $order->amount_ghs, 2) }} {{ $order->paid_at?->format('M j, Y') }}
@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.

Delete “{{ $qrCode->label }}”?

This permanently deletes the code and its scan history. Anyone who scans the printed code will get an error. This cannot be undone.

@csrf @method('DELETE')