62 lines
3.6 KiB
PHP
62 lines
3.6 KiB
PHP
<!DOCTYPE html>
|
|
<html lang="de" class="h-full">
|
|
<head>
|
|
<meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1">
|
|
<title>Lernapp Admin</title>
|
|
@vite(['resources/css/app.css','resources/js/app.js'])
|
|
</head>
|
|
<body class="h-full bg-slate-100 font-sans" x-data="{open:false}">
|
|
<div class="flex h-full">
|
|
<!-- Sidebar -->
|
|
<aside class="hidden md:flex flex-col w-60 bg-slate-900 text-slate-100 shrink-0">
|
|
<div class="flex items-center gap-3 px-6 py-5 border-b border-slate-700">
|
|
<span class="text-2xl">🎓</span>
|
|
<div><div class="font-bold text-white text-sm">Lernapp</div><div class="text-xs text-slate-400">Admin-Bereich</div></div>
|
|
</div>
|
|
<nav class="flex-1 px-3 py-4 space-y-1 text-sm">
|
|
<a href="{{ route('admin.dashboard') }}" class="flex items-center gap-3 px-3 py-2 rounded-lg {{ request()->routeIs('admin.dashboard') ? 'bg-violet-600 text-white' : 'text-slate-300 hover:bg-slate-800' }}">
|
|
<span>📊</span> Dashboard
|
|
</a>
|
|
<a href="{{ route('admin.users.index') }}" class="flex items-center gap-3 px-3 py-2 rounded-lg {{ request()->routeIs('admin.users.*') ? 'bg-violet-600 text-white' : 'text-slate-300 hover:bg-slate-800' }}">
|
|
<span>👦</span> Kinder
|
|
</a>
|
|
<a href="{{ route('admin.questions.index') }}" class="flex items-center gap-3 px-3 py-2 rounded-lg {{ request()->routeIs('admin.questions.*') ? 'bg-violet-600 text-white' : 'text-slate-300 hover:bg-slate-800' }}">
|
|
<span>❓</span> Fragen
|
|
</a>
|
|
<a href="{{ route('admin.rewards.index') }}" class="flex items-center gap-3 px-3 py-2 rounded-lg {{ request()->routeIs('admin.rewards.*') ? 'bg-violet-600 text-white' : 'text-slate-300 hover:bg-slate-800' }}">
|
|
<span>🎁</span> Belohnungen
|
|
</a>
|
|
<a href="{{ route('admin.reference.index') }}" class="flex items-center gap-3 px-3 py-2 rounded-lg {{ request()->routeIs('admin.reference.*') ? 'bg-violet-600 text-white' : 'text-slate-300 hover:bg-slate-800' }}">
|
|
<span>💡</span> Erinnerung
|
|
</a>
|
|
<a href="{{ route('admin.redemptions.index') }}" class="flex items-center gap-3 px-3 py-2 rounded-lg {{ request()->routeIs('admin.redemptions.*') ? 'bg-violet-600 text-white' : 'text-slate-300 hover:bg-slate-800' }}">
|
|
<span>✅</span> Einlösungen
|
|
@php $p = \App\Models\RewardRedemption::where('status','pending')->count() @endphp
|
|
@if($p > 0)<span class="ml-auto bg-red-500 text-white text-xs rounded-full px-1.5">{{ $p }}</span>@endif
|
|
</a>
|
|
</nav>
|
|
<div class="px-3 py-4 border-t border-slate-700">
|
|
<form method="POST" action="{{ route('logout') }}">
|
|
@csrf
|
|
<button class="flex items-center gap-3 px-3 py-2 w-full text-sm text-slate-400 hover:text-white rounded-lg hover:bg-slate-800">
|
|
<span>🚪</span> Abmelden
|
|
</button>
|
|
</form>
|
|
</div>
|
|
</aside>
|
|
<!-- Main -->
|
|
<div class="flex-1 flex flex-col overflow-hidden">
|
|
<header class="bg-white border-b border-slate-200 px-6 py-4 flex items-center justify-between">
|
|
<h1 class="font-semibold text-slate-800">@yield('title','Dashboard')</h1>
|
|
<span class="text-sm text-slate-500">{{ auth()->user()->name }}</span>
|
|
</header>
|
|
<main class="flex-1 overflow-y-auto p-6">
|
|
@if(session('success'))<div class="mb-4 bg-green-100 border border-green-300 text-green-800 rounded-lg px-4 py-3 text-sm">{{ session('success') }}</div>@endif
|
|
@if(session('error'))<div class="mb-4 bg-red-100 border border-red-300 text-red-800 rounded-lg px-4 py-3 text-sm">{{ session('error') }}</div>@endif
|
|
@yield('content')
|
|
</main>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|