Deploy Laravel rebuild via Coolify
Point Docker and Coolify compose to the Laravel rebuild app so mahasiswa, dosen, and admin flows are served from the new Laravel public entrypoint.
This commit is contained in:
92
rebuild/app/Support/AdminNavigation.php
Normal file
92
rebuild/app/Support/AdminNavigation.php
Normal file
@@ -0,0 +1,92 @@
|
||||
<?php
|
||||
|
||||
namespace App\Support;
|
||||
|
||||
class AdminNavigation
|
||||
{
|
||||
public static function build(array $user): array
|
||||
{
|
||||
$isSuper = ($user['lvl'] ?? null) === 'S';
|
||||
|
||||
$sections = [
|
||||
[
|
||||
'title' => 'Manajemen Data',
|
||||
'icon' => 'folder',
|
||||
'items' => $isSuper ? [
|
||||
self::page('Data Fakultas', 'admin.data.fakultas', 'document'),
|
||||
self::page('Data Jurusan', 'admin.data.jurusan', 'document'),
|
||||
self::page('Data Program Studi', 'admin.data.prodi', 'document'),
|
||||
] : [
|
||||
self::page('Data Mahasiswa', 'admin.data.mahasiswa', 'users'),
|
||||
self::page('Data Dosen', 'admin.data.dosen', 'users'),
|
||||
self::page('Data Kelompok Keahlian', 'admin.data.kk', 'folder'),
|
||||
],
|
||||
],
|
||||
[
|
||||
'title' => 'User',
|
||||
'icon' => 'user',
|
||||
'items' => array_values(array_filter([
|
||||
self::page('Profil Saya', 'admin.profile', 'user'),
|
||||
$isSuper ? self::page('Manajemen Admin', 'admin.users', 'users') : null,
|
||||
])),
|
||||
],
|
||||
[
|
||||
'title' => 'Lainnya',
|
||||
'icon' => 'briefcase',
|
||||
'items' => [
|
||||
['title' => 'Dokumen Sidang', 'href' => 'https://edoxid.untan.ac.id/', 'icon' => 'document', 'external' => true],
|
||||
],
|
||||
],
|
||||
];
|
||||
|
||||
if (! $isSuper) {
|
||||
array_splice($sections, 1, 0, [[
|
||||
'title' => 'Praoutline',
|
||||
'icon' => 'clipboard',
|
||||
'items' => [
|
||||
self::page('Daftar Draft Praoutline', 'admin.praoutline.index', 'document'),
|
||||
self::page('Pencarian', 'admin.praoutline.search', 'search'),
|
||||
self::page('Kep. Penunjukan Dosen', 'admin.praoutline.keputusan', 'clipboard'),
|
||||
self::page('Kep. Draft Praoutline', 'admin.praoutline.kep-draft', 'clipboard'),
|
||||
self::page('Pemberitahuan', 'admin.praoutline.pemberitahuan', 'bell'),
|
||||
],
|
||||
], [
|
||||
'title' => 'Pengumuman',
|
||||
'icon' => 'megaphone',
|
||||
'items' => [
|
||||
self::page('Daftar Pengumuman', 'admin.pengumuman.index', 'megaphone'),
|
||||
self::page('Buat Pengumuman Baru', 'admin.pengumuman.create', 'document'),
|
||||
],
|
||||
], [
|
||||
'title' => 'Jadwal Seminar/Sidang',
|
||||
'icon' => 'clock',
|
||||
'items' => [
|
||||
self::page('Manajemen Data', 'admin.jadwal.index', 'document'),
|
||||
self::page('Kalender', 'admin.jadwal.kalender', 'clock'),
|
||||
],
|
||||
], [
|
||||
'title' => 'Pengaturan',
|
||||
'icon' => 'warning',
|
||||
'items' => [
|
||||
self::page('Pengaturan Prodi', 'admin.pengaturan', 'warning'),
|
||||
],
|
||||
]]);
|
||||
}
|
||||
|
||||
return [
|
||||
'main' => [
|
||||
['title' => 'Dashboard', 'href' => route('dashboard.admin'), 'icon' => 'home', 'active' => true],
|
||||
],
|
||||
'sections' => $sections,
|
||||
];
|
||||
}
|
||||
|
||||
private static function page(string $title, string $route, string $icon): array
|
||||
{
|
||||
return [
|
||||
'title' => $title,
|
||||
'href' => route($route, [], false),
|
||||
'icon' => $icon,
|
||||
];
|
||||
}
|
||||
}
|
||||
51
rebuild/app/Support/DosenNavigation.php
Normal file
51
rebuild/app/Support/DosenNavigation.php
Normal file
@@ -0,0 +1,51 @@
|
||||
<?php
|
||||
|
||||
namespace App\Support;
|
||||
|
||||
class DosenNavigation
|
||||
{
|
||||
public static function build(string $activeRoute): array
|
||||
{
|
||||
return [
|
||||
'main' => [
|
||||
['title' => 'Dashboard', 'href' => route('dashboard.dosen'), 'icon' => 'home', 'active' => $activeRoute === 'dashboard.dosen'],
|
||||
],
|
||||
'sections' => [
|
||||
[
|
||||
'title' => 'Utama',
|
||||
'icon' => 'briefcase',
|
||||
'items' => [
|
||||
['title' => 'Penawaran Judul', 'href' => route('dosen.penawaran.index'), 'icon' => 'briefcase', 'active' => $activeRoute === 'dosen.penawaran.index'],
|
||||
],
|
||||
],
|
||||
[
|
||||
'title' => 'Tugas Akhir 1',
|
||||
'icon' => 'folder',
|
||||
'items' => [
|
||||
['title' => 'Daftar Usulan', 'href' => route('dosen.praoutline.index'), 'icon' => 'folder', 'active' => $activeRoute === 'dosen.praoutline.index'],
|
||||
['title' => 'Review Saya', 'href' => route('dosen.praoutline.review-saya'), 'icon' => 'chat', 'active' => $activeRoute === 'dosen.praoutline.review-saya'],
|
||||
['title' => 'Pencarian Usulan', 'href' => route('dosen.praoutline.cari'), 'icon' => 'search', 'active' => $activeRoute === 'dosen.praoutline.cari'],
|
||||
['title' => 'Daftar Bimbingan Saya', 'href' => route('dosen.praoutline.bimbingan'), 'icon' => 'users', 'active' => $activeRoute === 'dosen.praoutline.bimbingan'],
|
||||
['title' => 'Statistik Usulan', 'href' => route('dosen.praoutline.statistik'), 'icon' => 'chart', 'active' => $activeRoute === 'dosen.praoutline.statistik'],
|
||||
['title' => 'Pemberitahuan', 'href' => route('dosen.praoutline.pemberitahuan'), 'icon' => 'bell', 'active' => $activeRoute === 'dosen.praoutline.pemberitahuan'],
|
||||
],
|
||||
],
|
||||
[
|
||||
'title' => 'Lainnya',
|
||||
'icon' => 'grid',
|
||||
'items' => [
|
||||
['title' => 'Pengumuman', 'href' => route('dosen.pengumuman.index'), 'icon' => 'megaphone', 'active' => $activeRoute === 'dosen.pengumuman.index' || $activeRoute === 'dosen.pengumuman.show'],
|
||||
['title' => 'Akun Pengguna', 'href' => route('dosen.profile'), 'icon' => 'user', 'active' => $activeRoute === 'dosen.profile'],
|
||||
['title' => 'Dokumen Sidang', 'href' => 'https://edoxid.untan.ac.id/', 'icon' => 'document', 'external' => true],
|
||||
['title' => 'Early Warning', 'href' => route('dosen.early-warning'), 'icon' => 'warning', 'active' => $activeRoute === 'dosen.early-warning'],
|
||||
['title' => 'Konsultasi Skripsi', 'href' => 'https://spota.untan.ac.id/konsultasi/', 'icon' => 'chat', 'external' => true],
|
||||
['title' => 'Statistik Seminar', 'href' => 'https://spota.untan.ac.id/cek_banyak_sidang.php', 'icon' => 'chart', 'external' => true],
|
||||
['title' => 'Konsultasi KP', 'href' => 'https://informatika.untan.ac.id/konsultasi/', 'icon' => 'chat', 'external' => true],
|
||||
['title' => 'Pra LIRS (Dosen PA)', 'href' => route('dosen.pra-lirs'), 'icon' => 'clipboard', 'active' => $activeRoute === 'dosen.pra-lirs'],
|
||||
['title' => 'Evaluasi Mahasiswa', 'href' => 'https://spota.untan.ac.id/steven/rekapMahasiswaEvaluasi.php?angkatan='.(date('Y') - 5).'&show=belumlulus', 'icon' => 'chart', 'external' => true],
|
||||
],
|
||||
],
|
||||
],
|
||||
];
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user