updates for admin area

This commit is contained in:
Mark Gregory
2026-09-12 21:04:45 +01:00
parent 8c9dbfee08
commit ab3134de13
43 changed files with 573 additions and 137 deletions
+11 -40
View File
@@ -1,41 +1,12 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>BeatBook Admin</title>
@vite(['resources/css/app.css'])
</head>
<body>
<div class="admin">
<aside class="sidebar">
<a class="brand" href="{{ route('admin.dashboard') }}"><b>◉</b> BeatBook</a>
<p class="muted">Administration</p>
<a href="{{ route('admin.dashboard') }}">Dashboard</a>
@foreach([
'users' => 'Users', 'djs' => 'DJs & Businesses', 'clients' => 'Clients',
'bookings' => 'Bookings', 'payments' => 'Payments', 'reviews' => 'Reviews',
'messages' => 'Messages', 'notifications' => 'Notifications', 'support' => 'Support',
'reports' => 'Reports', 'content' => 'Content', 'roles' => 'Roles & Permissions',
'privacy' => 'Privacy', 'settings' => 'Settings'
] as $key => $label)
<a href="{{ route('admin.section', $key) }}">{{ $label }}</a>
@endforeach
<a href="{{ route('home') }}">Back to site</a>
</aside>
<main class="admin-main">
<h1>Dashboard</h1>
<p style="color:#64748b">Marketplace overview and moderation queue.</p>
<div class="stats">
@foreach($stats as $key => $value)
<div class="stat"><span>{{ ucfirst($key) }}</span><strong>{{ number_format($value) }}</strong></div>
@endforeach
</div>
<div class="stat" style="margin-top:22px;min-height:330px">
<h2>Operations</h2>
<p style="color:#64748b">Revenue charts, recent bookings, verification requests, support tickets and review moderation plug into this dashboard.</p>
</div>
</main>
@extends('layouts.admin')
@section('title','Dashboard')
@section('page-title','Dashboard')
@section('content')
<div class="page-heading admin-heading"><div><div class="eyebrow">Marketplace control centre</div><h1>Dashboard</h1><p>Live overview of users, DJs, bookings and moderation.</p></div></div>
<div class="admin-stats">@foreach($stats as $key=>$value)<a class="admin-stat" href="{{ $key === 'pending reviews' ? route('admin.section','reviews') : ($key === 'djs' ? route('admin.section','djs') : ($key === 'bookings' ? route('admin.section','bookings') : route('admin.section','users'))) }}"><span>{{ ucfirst($key) }}</span><strong>{{ number_format($value) }}</strong><small>Open section →</small></a>@endforeach</div>
<div class="admin-grid">
<section class="admin-card"><div class="panel-head"><h2>Newest users</h2><a href="{{ route('admin.section','users') }}">Manage</a></div>@forelse($recentUsers as $user)<div class="admin-list-row"><div><strong>{{ $user->name }}</strong><span>{{ $user->email }}</span></div><span>{{ $user->created_at?->diffForHumans() }}</span></div>@empty<div class="empty-state">No users yet.</div>@endforelse</section>
<section class="admin-card"><div class="panel-head"><h2>Latest enquiries</h2><a href="{{ route('admin.section','clients') }}">Clients</a></div>@forelse($recentEnquiries as $item)<div class="admin-list-row"><div><strong>{{ $item->user?->name }}</strong><span>{{ $item->djProfile?->stage_name }} · {{ $item->event_type }}</span></div><span class="status-pill">{{ ucfirst($item->status) }}</span></div>@empty<div class="empty-state">No enquiries yet.</div>@endforelse</section>
<section class="admin-card admin-card-wide"><div class="panel-head"><h2>Recent bookings</h2><a href="{{ route('admin.section','bookings') }}">View all</a></div><div class="responsive-table"><table><thead><tr><th>Client</th><th>DJ</th><th>Date</th><th>Total</th><th>Status</th></tr></thead><tbody>@forelse($recentBookings as $item)<tr><td>{{ $item->client?->name }}</td><td>{{ $item->djProfile?->stage_name }}</td><td>{{ optional($item->event_date)->format('j M Y') }}</td><td>£{{ number_format((float)$item->total,2) }}</td><td><span class="status-pill">{{ ucfirst($item->status) }}</span></td></tr>@empty<tr><td colspan="5">No bookings yet.</td></tr>@endforelse</tbody></table></div></section>
</div>
</body>
</html>
@endsection