{{ __('Admin Dashboard') }}

Fibbers Live Music Archive Management Overview

Admin View
@if (session('success'))
{{ session('success') }}
@endif @if (session('error'))
{{ session('error') }}
@endif

Band Member Registration Claims

{{ $pendingBandMembers->count() }}

Users claiming "I played in this band" awaiting admin approval

@if($pendingBandMembers->isNotEmpty()) Requires Review @endif
@if($pendingBandMembers->isEmpty())
All band membership claims have been processed. No pending requests.
@else
@foreach($pendingBandMembers as $claim) @endforeach
Band Archive Claimant User Email Address Actions
{{ $claim->band_name }} {{ $claim->first_name }} {{ $claim->last_name }} {{ $claim->email }}
@csrf
@csrf @method('DELETE')
@endif

Recent Orders

Merchandise & print fulfillment

View All ({{ $stats['total_orders'] }}) →
@if($recentOrders->isEmpty())
No merchandise orders placed yet.
@else
@foreach($recentOrders as $order)
@if($order->mockup_image)
Order thumb
@elseif($order->resource && $order->resource->file)
Order thumb
@else
#{{ $order->id }}
@endif
{{ $order->first_name }} {{ $order->last_name }} #{{ $order->id }}

{{ $order->product->name ?? 'Merch' }} @if(!empty($order->options)) • {{ collect($order->options)->values()->join(', ') }} @endif

£{{ number_format((float)($order->total ?? 0), 2) }}
{{ $order->paid ? 'Paid' : 'Pending' }} @if($order->prodigi_status) {{ $order->prodigi_status }} @endif
View
@endforeach
@endif

Recent Contacts

Inbound enquiries & takedowns

View All ({{ $stats['total_contacts'] }}) →
@if($recentContacts->isEmpty())
No contact enquiries submitted yet.
@else
@foreach($recentContacts as $contact)
{{ $contact->full_name ?: $contact->email }} @php $slug = $contact->contactType->slug ?? 'other'; $badgeClass = match($slug) { 'takedown' => 'bg-red-50 text-red-700 border-red-200 dark:bg-red-950/60 dark:text-red-300 dark:border-red-800', 'press' => 'bg-purple-50 text-purple-700 border-purple-200 dark:bg-purple-950/60 dark:text-purple-300 dark:border-purple-800', 'general' => 'bg-blue-50 text-blue-700 border-blue-200 dark:bg-blue-950/60 dark:text-blue-300 dark:border-blue-800', default => 'bg-gray-100 text-gray-700 border-gray-200' }; @endphp {{ $contact->contactType->name ?? 'Enquiry' }}

{{ $contact->enquiry }}

{{ $contact->created_at ? $contact->created_at->format('d M Y, H:i') : '' }}

@endforeach
@endif

Recent Community Comments

Latest audience memories and gig stories

@if($comments->isEmpty())
No user comments have been submitted yet.
@else
@foreach($comments as $comment)
{{ $comment->user->first_name }} {{ $comment->user->last_name }} • @php $parent = $comment->parentable; $name = 'View Item'; $url = '#'; if ($parent) { if ($comment->parentable_type === 'App\Band') { $name = $parent->name ?? $parent->title ?? 'Band'; if (isset($parent->slug)) { $url = route('bands.show', $parent->slug); } } elseif ($comment->parentable_type === 'App\Event') { $baseName = $parent->name ?? $parent->f2 ?? 'Gig'; $name = "{$baseName}"; $url = route('gigs.show', $parent->id); } elseif ($comment->parentable_type === 'App\Story') { $name = $parent->name ?? $parent->title ?? 'Story'; if (isset($parent->slug)) { $url = route('stories.show', $parent->slug); } } } @endphp @if($url !== '#') On: {{ $name }} @else On Archive Item @endif
{{ $comment->created_at->diffForHumans() }}

"{{ \Illuminate\Support\Str::limit($comment->text ?: 'Photo memory shared', 140) }}"

@if($comment->resources->isNotEmpty())
@foreach($comment->resources as $res) Thumb @endforeach
@endif
@if($comment->reported) Reported @endif
Manage User
@csrf @method('DELETE')
@endforeach
@endif