Avoid mixed-content form submissions behind Coolify by rendering internal links and form actions as relative paths.
88 lines
5.7 KiB
PHP
88 lines
5.7 KiB
PHP
<x-admin.partials.page-shell :title="$title" :sidebar="$sidebar">
|
|
<section class="rounded-xl bg-white p-4 shadow-[0_8px_12px_rgba(13,10,44,0.04)] lg:p-6">
|
|
<div class="flex flex-col gap-4 lg:flex-row lg:items-start lg:justify-between">
|
|
<div>
|
|
<ol class="flex flex-wrap items-center gap-2 text-sm text-[#6B7280]">
|
|
<li class="inline-flex items-center gap-2">
|
|
<span class="text-[#625DF5]">@include('dashboard.partials.icon', ['icon' => 'home'])</span>
|
|
<span>Home</span>
|
|
</li>
|
|
<li>/</li>
|
|
<li class="font-medium text-[#15171A]">Dashboard</li>
|
|
</ol>
|
|
<h1 class="mt-4 text-[26px] font-bold leading-[34px] text-[#15171A]">Dashboard Admin</h1>
|
|
<p class="mt-2 max-w-[880px] text-sm leading-7 text-[#4B5563]">Selamat datang di halaman administrator Sistem Pendukung Outline Tugas Akhir (SPOTA) Universitas Tanjungpura.</p>
|
|
</div>
|
|
<div class="flex flex-wrap items-center gap-3">
|
|
<div class="rounded-md border border-[#E5E7EB] bg-[#F9FAFB] px-4 py-3 text-sm text-[#15171A]">{{ $pageDate }}</div>
|
|
<div class="rounded-md border border-[#E5E7EB] bg-[#F9FAFB] px-4 py-3 text-sm text-[#15171A]">{{ $user['username'] }} · {{ $user['nmprodi'] }}</div>
|
|
<form method="POST" action="{{ route('legacy.logout', [], false) }}">
|
|
@csrf
|
|
<button type="submit" class="rounded-md bg-[#15171A] px-5.5 py-2.5 text-sm font-medium text-white hover:opacity-90">Logout</button>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<section class="grid gap-4 sm:grid-cols-2 xl:grid-cols-4">
|
|
@foreach ($stats as $stat)
|
|
<article class="rounded-xl border border-[#E5E7EB] bg-white p-5 shadow-[0_8px_12px_rgba(13,10,44,0.04)]">
|
|
<p class="text-sm font-semibold text-[#5C6A78]">{{ $stat['label'] }}</p>
|
|
<p class="mt-3 text-3xl font-bold text-[#15171A]">{{ $stat['value'] }}</p>
|
|
<p class="mt-3 text-sm leading-7 text-[#6B7280]">{{ $stat['note'] }}</p>
|
|
</article>
|
|
@endforeach
|
|
</section>
|
|
|
|
<div class="grid gap-5 lg:grid-cols-[minmax(0,1fr)_380px]">
|
|
<section class="rounded-xl border border-[#E5E7EB] bg-white p-6 shadow-[0_8px_12px_rgba(13,10,44,0.04)]">
|
|
<h2 class="text-xl font-semibold text-[#15171A]">Menu Kerja Administrator</h2>
|
|
<p class="mt-2 text-sm leading-7 text-[#6B7280]">Link di bawah mengikuti struktur fungsi administrator lama. Rebuild ini menjaga akses menuju halaman yang sudah aktif tanpa mengubah proses data yang berjalan.</p>
|
|
<div class="mt-5 grid gap-4 md:grid-cols-2">
|
|
@foreach ($sidebar['sections'] as $group)
|
|
<article class="rounded-xl border border-[#E5E7EB] bg-[#F9FAFB] p-4">
|
|
<div class="flex items-center gap-2 font-semibold text-[#15171A]">
|
|
<span class="text-[#625DF5]">@include('dashboard.partials.icon', ['icon' => $group['icon']])</span>
|
|
<span>{{ $group['title'] }}</span>
|
|
</div>
|
|
<div class="mt-4 space-y-2">
|
|
@foreach ($group['items'] as $item)
|
|
<a href="{{ $item['href'] }}" @if(!empty($item['external'])) target="_blank" rel="noreferrer" @endif class="flex items-center justify-between rounded-md bg-white px-3 py-2 text-sm text-[#374151] hover:text-[#625DF5]">
|
|
<span>{{ $item['title'] }}</span>
|
|
<span>@include('dashboard.partials.icon', ['icon' => 'search'])</span>
|
|
</a>
|
|
@endforeach
|
|
</div>
|
|
</article>
|
|
@endforeach
|
|
</div>
|
|
</section>
|
|
|
|
<section class="rounded-xl border border-[#E5E7EB] bg-white p-6 shadow-[0_8px_12px_rgba(13,10,44,0.04)]">
|
|
<div class="flex items-center justify-between gap-3">
|
|
<div>
|
|
<p class="text-sm font-semibold uppercase tracking-[0.16em] text-[#979797]">Jadwal</p>
|
|
<h2 class="mt-2 text-xl font-semibold text-[#15171A]">Seminar/Sidang Terbaru</h2>
|
|
</div>
|
|
<a href="{{ route('admin.jadwal.kalender', [], false) }}" class="rounded-md border border-[#D1D5DB] px-3 py-2 text-xs font-medium text-[#15171A] hover:bg-[#F9FAFB]">Kalender</a>
|
|
</div>
|
|
<div class="mt-5 space-y-3">
|
|
@forelse ($schedules as $schedule)
|
|
<article class="rounded-xl border border-[#E5E7EB] bg-[#F9FAFB] p-4">
|
|
<div class="flex items-start justify-between gap-3">
|
|
<div>
|
|
<p class="font-semibold text-[#15171A]">{{ $schedule['jenis'] }}</p>
|
|
<p class="mt-1 text-sm text-[#6B7280]">{{ $schedule['mahasiswa'] }}</p>
|
|
</div>
|
|
<span class="rounded-full bg-white px-2.5 py-1 text-xs font-semibold text-[#4B5563]">{{ $schedule['ruangan'] }}</span>
|
|
</div>
|
|
<p class="mt-3 text-sm text-[#4B5563]">{{ $schedule['tanggal'] }}</p>
|
|
</article>
|
|
@empty
|
|
<div class="rounded-xl border border-dashed border-[#D1D5DB] bg-[#F9FAFB] p-5 text-center text-sm text-[#6B7280]">Belum ada jadwal seminar/sidang.</div>
|
|
@endforelse
|
|
</div>
|
|
</section>
|
|
</div>
|
|
</x-admin.partials.page-shell>
|