again n again

This commit is contained in:
Randa Firman Putra
2025-12-07 22:00:42 +07:00
parent 700a153b86
commit e3e98280c8
8 changed files with 1195 additions and 30 deletions

View File

@@ -32,7 +32,7 @@ export default function HomePage() {
const data = await response.json();
setUser(data.user);
// Redirect based on user role
if (data.user.role_user === 'ketuajurusan') {
if (data.user.role_user === 'ketuajurusan' || data.user.role_user === 'ketuaprodi') {
router.push('/dashboard');
} else if (data.user.role_user === 'admin') {
router.push('/keloladata/mahasiswa');
@@ -53,12 +53,22 @@ export default function HomePage() {
setUser(userData.user);
setShowLoginDialog(false);
// Redirect based on user role
// Get role label
let roleLabel = '';
if (userData.user.role_user === 'ketuajurusan') {
showSuccess("Berhasil!", "Selamat datang, Ketua Jurusan!");
roleLabel = 'Ketua Jurusan';
} else if (userData.user.role_user === 'ketuaprodi') {
roleLabel = 'Ketua Prodi';
} else if (userData.user.role_user === 'admin') {
roleLabel = 'Admin';
}
showSuccess("Berhasil!", `Selamat datang, ${roleLabel}`);
// Redirect based on user role
if (userData.user.role_user === 'ketuajurusan' || userData.user.role_user === 'ketuaprodi') {
router.push('/dashboard');
} else if (userData.user.role_user === 'admin') {
showSuccess("Berhasil!", "Selamat datang, Admin!");
router.push('/keloladata/mahasiswa');
}
};
@@ -133,7 +143,7 @@ function AutoLoginDialog({ onLoginSuccess }: AutoLoginDialogProps) {
body: JSON.stringify({
nip: ketuaForm.nip,
password: ketuaForm.password,
role: "ketuajurusan",
role: "pimpinan", // Will accept both ketuajurusan and ketuaprodi
}),
});
@@ -210,7 +220,7 @@ function AutoLoginDialog({ onLoginSuccess }: AutoLoginDialogProps) {
: "text-slate-300 hover:text-white hover:bg-slate-600/50"
}`}
>
Ketua Jurusan
Pimpinan
</button>
<button
onClick={() => setActiveTab("admin")}
@@ -224,7 +234,7 @@ function AutoLoginDialog({ onLoginSuccess }: AutoLoginDialogProps) {
</button>
</div>
{/* Ketua Jurusan form */}
{/* Pimpinan form (Ketua Jurusan / Ketua Prodi) */}
{activeTab === "ketua" && (
<form onSubmit={handleKetuaLogin} className="space-y-4">
<div className="space-y-1">
@@ -266,7 +276,7 @@ function AutoLoginDialog({ onLoginSuccess }: AutoLoginDialogProps) {
Loading...
</div>
) : (
"Login sebagai Ketua Jurusan"
"Login sebagai Pimpinan"
)}
</button>
</form>